X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSHAPERGUI%2FSHAPERGUI.h;h=ffe975ca2813e5b5b0633bf423ae6ad28b958ee9;hb=093e8c42e3cf9a40071fe2f81591b7eb4bdfc247;hp=7e1c1435e0de388a9010df5765b4b8c7fb25fc92;hpb=5aa6cd27f77999bc8af41db522f92525d64b8e88;p=modules%2Fshaper.git diff --git a/src/SHAPERGUI/SHAPERGUI.h b/src/SHAPERGUI/SHAPERGUI.h index 7e1c1435e..ffe975ca2 100644 --- a/src/SHAPERGUI/SHAPERGUI.h +++ b/src/SHAPERGUI/SHAPERGUI.h @@ -1,5 +1,22 @@ -// Copyright (C) 2014-20xx CEA/DEN, EDF R&D - +// Copyright (C) 2014-2017 CEA/DEN, EDF R&D +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or +// email : webmaster.salome@opencascade.com +// #ifndef SHAPERGUI_H #define SHAPERGUI_H @@ -41,7 +58,7 @@ Q_OBJECT /// \brief Definition of module standard windows virtual void windows(QMap& theWndMap) const; - /// \brief Definition of module viewer + /// \brief Definition of module viewer virtual void viewManagers(QStringList& theList) const; /// \brief The method is called on selection changed event @@ -51,12 +68,13 @@ Q_OBJECT virtual QAction* addFeature(const QString& theWBName, const QString& theId, const QString& theTitle, const QString& theTip, const QIcon& theIcon, - const QKeySequence& theKeys = QKeySequence(), - bool isCheckable = false); + const QKeySequence& theKeys/* = QKeySequence()*/, + bool isCheckable /*= false*/, const bool isAddSeparator/* = false*/, + const QString& theStatusTip); //! Add feature (QAction) in the \a theWBName toolbar with given \a theInfo about action virtual QAction* addFeature(const QString& theWBName, - const ActionInfo& theInfo); + const ActionInfo& theInfo, const bool isAddSeparator); /// Add a nested feature /// \param theWBName a workbench name @@ -85,14 +103,13 @@ Q_OBJECT /// \param theAction an ation to add /// \param theToolBarTitle a name of tool bar virtual bool addActionInToolbar( QAction* theAction, const QString& theToolBarTitle ); - - virtual QMainWindow* desktop() const; - virtual QString commandId(const QAction* theCmd) const; + /// Creates menu/tool bar actions for loaded features stored in the menu manager + virtual void createFeatureActions(); - virtual QAction* command(const QString& theId) const; + virtual QMainWindow* desktop() const; - //! Stores XML information for the feature kind + //! Stores XML information for the feature kind //! \param theFeatureId a feature kind //! \param theMessage a container of the feature XML properties virtual void setFeatureInfo(const QString& theFeatureId, @@ -112,35 +129,35 @@ Q_OBJECT //! Returns list of defined actions (just by SHAPER module) virtual QList commandList() const; - //! Returns list of Ids of defined actions (just by SHAPER module) - virtual QStringList commandIdList() const; - - /// Redefinition of virtual function. + /// Redefinition of virtual function. /// \param theClient name of pop-up client /// \param theMenu popup menu instance /// \param theTitle menu title. virtual void contextMenuPopup(const QString& theClient, QMenu* theMenu, QString& theTitle); - /// Redefinition of virtual function for preferences creation. + /// Redefinition of virtual function for preferences creation. virtual void createPreferences(); - /// Redefinition of virtual function for preferences changed event. + /// Redefinition of virtual function for preferences changed event. virtual void preferencesChanged(const QString& theSection, const QString& theParam); - + + //! Shows the given text in status bar as a permanent text + //! \theInfo a string value + //! \theMsecs interval of msec milliseconds when the message will be hidden, if -1, it stays. + // If 0, default value is used, it is 3000 + virtual void putInfo(const QString& theInfo, const int theMSecs = 0); + /// \return Workshop class instance XGUI_Workshop* workshop() const { return myWorkshop; } /// \brief Set flag about opened document state void setIsOpened(bool theOpened) { myIsOpened = theOpened; } - /// Register current modules of SALOME - void inspectSalomeModules(); - public slots: /// \brief The method is redefined to connect to the study viewer before the data /// model is filled by opened file. This file open will flush redisplay signals for, /// objects which should be visualized - virtual void connectToStudy(CAM_Study* theStudy); + //virtual void connectToStudy(CAM_Study* theStudy); /// \brief The method is called on the module activation /// \param theStudy current study @@ -162,6 +179,15 @@ Q_OBJECT /// Set preferences to default void onDefaultPreferences(); + /// Hide object browser if it was created during loading script + void onScriptLoaded(); + + /// Save application functionality with additional processing of aborting the current operation + void onSaveDocByShaper(); + + /// Save application functionality with additional processing of aborting the current operation + void onSaveAsDocByShaper(); + /// Obtains the current application and updates its actions void onUpdateCommandStatus(); @@ -183,6 +209,9 @@ Q_OBJECT /// List of registered actions QStringList myActionsList; + /// List of registered nested actions + QStringList myNestedActionsList; + /// Reference to workshop XGUI_Workshop* myWorkshop; @@ -201,10 +230,10 @@ Q_OBJECT // the next parameters should be restored after this module deactivation /// The application value of the preferences parameter - bool myIsStorePositions; + bool myIsStorePositions; /// The application value - bool myIsEditEnabled; + bool myIsEditEnabled; /// Popup manager QtxPopupMgr* myPopupMgr;