#include "XGUI.h"
-#include <AIS_InteractiveContext.hxx>
#include <QString>
#include <QStringList>
class QMainWindow;
+class ModuleBase_IViewer;
/**
-* An interface which provides a connection of XGUI functionality
-* with functionality of SALOME module interface.
-*/
+ * An interface which provides a connection of XGUI functionality
+ * with functionality of SALOME module interface.
+ */
class XGUI_EXPORT XGUI_SalomeConnector
{
-public:
+ public:
//! Creates a feature (command) in SALOME desktop
//! \param theWBName - a workbench name
//! \param theId - an id of the feature
//! \param theTip - a tooltip string (help)
//! \param theIcon - icon
//! \param isCheckable - is checkable or not
- //! \param reciever - QObject which will react on the command call
- //! \param member - a method of receiver which will be called on the command
//! \param theKeys - hot keys
- virtual void addFeature(const QString& theWBName,
- const QString& theId,
- const QString& theTitle,
- const QString& theTip,
- const QIcon& theIcon,
- bool isCheckable,
- QObject* reciever,
- const char* member,
- const QKeySequence& theKeys) = 0;
+ //! returns created action
+ virtual QAction* addFeature(const QString& theWBName, const QString& theId,
+ const QString& theTitle, const QString& theTip, const QIcon& theIcon,
+ const QKeySequence& theKeys, bool isCheckable) = 0;
//! Creates a command in Edit menu of SALOME desktop
//! \param theId - an id of the feature
//! \param theTip - a tooltip string (help)
//! \param theIcon - icon
//! \param isCheckable - is checkable or not
- //! \param reciever - QObject which will react on the command call
- //! \param member - a method of receiver which will be called on the command
//! \param theKeys - hot keys
- virtual void addEditCommand(const QString& theId,
- const QString& theTitle,
- const QString& theTip,
- const QIcon& theIcon,
- bool isCheckable,
- QObject* reciever,
- const char* member,
- const QKeySequence& theKeys) = 0;
+ //! returns created action
+ virtual QAction* addEditCommand(const QString& theId, const QString& theTitle,
+ const QString& theTip, const QIcon& theIcon,
+ const QKeySequence& theKeys, bool isCheckable) = 0;
//! Insert separator into Edit menu of SALOME desktop
virtual void addEditMenuSeparator() = 0;
//! Returns QAction instance by command string Id
virtual QAction* command(const QString& theId) const = 0;
+ //! Returns list of defined actions (just by NewGeom module)
+ virtual QList<QAction*> commandList() const = 0;
+
+ //! Returns list of Ids of defined actions (just by NewGeom module)
+ virtual QStringList commandIdList() const = 0;
+
//! Set nested actions dependent on command Id
//! \param theId - the command ID
//! \param theActions - the list of nested actions
//! Returns list of nested actions according to the given command ID
virtual QStringList nestedActions(const QString& theId) const = 0;
-
- //! Returns AIS_InteractiveContext from current OCCViewer
- virtual Handle(AIS_InteractiveContext) AISContext() const = 0;
+
+ //! Returns interface to Salome viewer
+ virtual ModuleBase_IViewer* viewer() const = 0;
+
+ virtual void createPreferences() = 0;
};
-#endif
\ No newline at end of file
+#endif