X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_SalomeConnector.h;h=910aaa2495e1d921dc386afbfeb39e6e66673854;hb=3975324fb3e40fc0c18eac0de7f50251d2eac9f8;hp=d055e67c37f13bdd2758cc7c4e878ed6feaf0deb;hpb=35f0e7a2748c1ae77e4dae1a156d10ddadc10afe;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_SalomeConnector.h b/src/XGUI/XGUI_SalomeConnector.h index d055e67c3..910aaa249 100644 --- a/src/XGUI/XGUI_SalomeConnector.h +++ b/src/XGUI/XGUI_SalomeConnector.h @@ -1,3 +1,5 @@ +// Copyright (C) 2014-20xx CEA/DEN, EDF R&D --> + #ifndef XGUI_SALOMECONNECTOR_H #define XGUI_SALOMECONNECTOR_H @@ -6,16 +8,24 @@ #include #include +#include + class QMainWindow; class ModuleBase_IViewer; /** + * \ingroup GUI * An interface which provides a connection of XGUI functionality * with functionality of SALOME module interface. */ class XGUI_EXPORT XGUI_SalomeConnector { public: + /// Default constructor + XGUI_SalomeConnector(); + /// Virtual destructor + virtual ~XGUI_SalomeConnector(); + //! Creates a feature (command) in SALOME desktop //! \param theWBName - a workbench name //! \param theId - an id of the feature @@ -29,6 +39,25 @@ class XGUI_EXPORT XGUI_SalomeConnector const QString& theTitle, const QString& theTip, const QIcon& theIcon, const QKeySequence& theKeys, bool isCheckable) = 0; + //! Creates a feature (command) in SALOME desktop + //! \param theWBName - name of toolbar (workbench) + //! \param theInfo - information about action (icon, text, etc) + virtual QAction* addFeature(const QString& theWBName, + const ActionInfo& theInfo) = 0; + + //! Creates a feature (command) in SALOME desktop + //! \param theWBName - name of toolbar (workbench) + //! \param theInfo - information about action (icon, text, etc) + virtual QAction* addNestedFeature(const QString& theWBName, + const ActionInfo& theInfo, + const QList& theNestedActions) = 0; + + //! Returns true if the feature action is a nested action, in other words, + //! it is created by addNestedFeature(). + //! \param theId - an action of a feature + //! returns boolean result + virtual bool isNestedFeature(const QAction* theAction) = 0; + //! Creates a command in Edit menu of SALOME desktop //! \param theId - an id of the feature //! \param theTitle - a menu item string @@ -49,6 +78,8 @@ class XGUI_EXPORT XGUI_SalomeConnector virtual void addDesktopMenuSeparator(const char* theMenuSourceText, const int theMenuPosition = 10) = 0; + virtual bool addActionInToolbar( QAction* theAction, const QString& theToolBarTitle ) = 0; + //! Returns desktop window of SALOME virtual QMainWindow* desktop() const = 0; @@ -83,6 +114,7 @@ class XGUI_EXPORT XGUI_SalomeConnector //! Returns interface to Salome viewer virtual ModuleBase_IViewer* viewer() const = 0; + //! Create preferences virtual void createPreferences() = 0; };