From 827d67208d2bb221aebe9adb9ef4a4c914789136 Mon Sep 17 00:00:00 2001 From: nds Date: Sun, 10 Dec 2017 11:36:00 +0300 Subject: [PATCH] Minor code correction --- src/ModuleBase/ModuleBase_ISelection.h | 60 ++-- src/ModuleBase/ModuleBase_WidgetValidator.h | 2 +- src/XGUI/XGUI_ActionsMgr.h | 65 ++-- src/XGUI/XGUI_ContextMenuMgr.h | 2 +- src/XGUI/XGUI_OperationMgr.h | 4 +- src/XGUI/XGUI_SalomeConnector.h | 2 +- src/XGUI/XGUI_Selection.cpp | 17 - src/XGUI/XGUI_Selection.h | 49 ++- src/XGUI/XGUI_Workshop.h | 334 ++++++++------------ 9 files changed, 208 insertions(+), 327 deletions(-) diff --git a/src/ModuleBase/ModuleBase_ISelection.h b/src/ModuleBase/ModuleBase_ISelection.h index b4324ef69..c185729fe 100644 --- a/src/ModuleBase/ModuleBase_ISelection.h +++ b/src/ModuleBase/ModuleBase_ISelection.h @@ -38,11 +38,9 @@ class ModuleBase_ViewerPrs; class SelectMgr_EntityOwner; -/** -* \ingroup GUI -* A class which provides access to selection. -* A selection can be obtained as from a viewer as from Object browser in various forms -*/ +/// \ingroup GUI +/// A class which provides access to selection. +/// A selection can be obtained as from a viewer as from Object browser in various forms class ModuleBase_ISelection { public: @@ -71,50 +69,36 @@ class ModuleBase_ISelection virtual void fillPresentation(std::shared_ptr& thePrs, const Handle(SelectMgr_EntityOwner)& theOwner) const = 0; - /** - * Returns list of features currently selected in object browser - */ + /// Returns list of features currently selected in object browser virtual QObjectPtrList selectedObjects() const = 0; - /// Set selected objects list - virtual void setSelectedObjects( const QObjectPtrList& ) const = 0; - - /** - * Returns list of currently selected results - */ + /// Returns list of currently selected results virtual QObjectPtrList selectedPresentations() const = 0; - //! Returns list of currently selected QModelIndexes + /// Returns list of currently selected QModelIndexes virtual QModelIndexList selectedIndexes() const = 0; - //! Returns list of currently selected AIS objects - //! \param theList returning list of selected AIS objects - virtual void selectedAISObjects(AIS_ListOfInteractive& theList) const = 0; - - //! Returns list of currently selected QModelIndexes - virtual ObjectPtr getSelectableObject(const Handle(SelectMgr_EntityOwner)& theOwner) const = 0; - - //! Return the shape from the viewer presentation. - //! If the shape is equal to the shape of selected object, it returns an empty shape - //! \param thePrs a selected object - //! \return a shape + /// Return the shape from the viewer presentation. + /// If the shape is equal to the shape of selected object, it returns an empty shape + /// \param thePrs a selected object + /// \return a shape MODULEBASE_EXPORT ResultPtr getResult(const std::shared_ptr& thePrs); - //! Return the shape from the viewer presentation. - //! If the shape is equal to the shape of selected object, it returns an empty shape - //! \param thePrs a selected object - //! \return a shape + /// Return the shape from the viewer presentation. + /// If the shape is equal to the shape of selected object, it returns an empty shape + /// \param thePrs a selected object + /// \return a shape MODULEBASE_EXPORT GeomShapePtr getShape(const std::shared_ptr& thePrs); - //! Return the IO from the viewer presentation. - //! \param thePrs a selected object - //! \return an interactive object + /// Return the IO from the viewer presentation. + /// \param thePrs a selected object + /// \return an interactive object virtual MODULEBASE_EXPORT Handle(AIS_InteractiveObject) getIO(const std::shared_ptr& thePrs) = 0; - //! Wraps the object list into the viewer prs list - //! \param theObjects a list of objects - //! \return a list of prs, where only object is not empty + /// Wraps the object list into the viewer prs list + /// \param theObjects a list of objects + /// \return a list of prs, where only object is not empty static MODULEBASE_EXPORT QList> getViewerPrs( const QObjectPtrList& theObjects); @@ -122,6 +106,10 @@ class ModuleBase_ISelection /// owner with the qual vertex stays in the list. static MODULEBASE_EXPORT void filterSelectionOnEqualPoints (QList>& theSelected); +protected: + /// Returns list of currently selected QModelIndexes + virtual ObjectPtr getSelectableObject(const Handle(SelectMgr_EntityOwner)& theOwner) const = 0; + private: /// Find vertex shape build by a Brep owner of the presentation if it exists /// \param thePrs a viewer presentation diff --git a/src/ModuleBase/ModuleBase_WidgetValidator.h b/src/ModuleBase/ModuleBase_WidgetValidator.h index 97e852d59..cb62c1167 100755 --- a/src/ModuleBase/ModuleBase_WidgetValidator.h +++ b/src/ModuleBase/ModuleBase_WidgetValidator.h @@ -106,7 +106,7 @@ protected: /// Reference to workshop ModuleBase_ModelWidget* myModelWidget; ///< the current widget to be validated ModuleBase_IWorkshop* myWorkshop; ///< the active workshop - ModuleBase_WidgetSelectorStore* myAttributeStore; //< store/restore attribute values + ModuleBase_WidgetSelectorStore* myAttributeStore; ///< store/restore attribute values /// cash of valid selection presentations QList> myValidPrs; diff --git a/src/XGUI/XGUI_ActionsMgr.h b/src/XGUI/XGUI_ActionsMgr.h index 66e00d784..89693cbc1 100644 --- a/src/XGUI/XGUI_ActionsMgr.h +++ b/src/XGUI/XGUI_ActionsMgr.h @@ -18,12 +18,8 @@ // email : webmaster.salome@opencascade.com // -/* - * XGUI_ActionsMgr.h - */ - -#ifndef XGUI_ACTIONSMGR_H_ -#define XGUI_ACTIONSMGR_H_ +#ifndef XGUI_ActionsMgr_H +#define XGUI_ActionsMgr_H #include "XGUI.h" @@ -43,10 +39,9 @@ class XGUI_OperationMgr; class ModuleBase_Operation; class QAction; -/** -* \ingroup GUI -* A class for management of actions (features) activation/deactivation -*/ +/// class XGUI_ActionsMgr +/// \ingroup GUI +/// A class for management of actions (features) activation/deactivation class XGUI_EXPORT XGUI_ActionsMgr : public QObject, public Events_Listener { Q_OBJECT @@ -67,16 +62,16 @@ class XGUI_EXPORT XGUI_ActionsMgr : public QObject, public Events_Listener Preview = 5 }; - //! Add a command in the manager. - //! Please note that nested commands in the Salome mode (No AppElements_Command, pure QActions) - //! won't be extracted and should be added manually using the addNestedCommands method. + /// Add a command in the manager. + /// Please note that nested commands in the Salome mode (No AppElements_Command, pure QActions) + /// won't be extracted and should be added manually using the addNestedCommands method. void addCommand(QAction* theCmd); - //! Sets relation between the command (with given Id) and it's nested actions. + /// Sets relation between the command (with given Id) and it's nested actions. void addNestedCommands(const QString& theId, const QStringList& theCommands); - //! Returns list of nested commands by parent command Id - //! \param theId a parent command Id + /// Returns list of nested commands by parent command Id + /// \param theId a parent command Id QStringList nestedCommands(const QString& theId) const; /// Returns True if the given Id is an Id of nested command @@ -92,11 +87,11 @@ class XGUI_EXPORT XGUI_ActionsMgr : public QObject, public Events_Listener /// \param theKeySequence - string that contain a key sequence to register QKeySequence registerShortcut(const QString& theKeySequence); - //! Redefinition of Events_Listener method + /// Redefinition of Events_Listener method virtual void processEvent(const std::shared_ptr& theMessage); - //! Return property panel's action like ok, cancel, help. - //! If there is no such action, it will be created. + /// Return property panel's action like ok, cancel, help. + /// If there is no such action, it will be created. QAction* operationStateAction(OperationStateActionId theId); /// Return an action by the given id, if it was registered in the manager @@ -107,40 +102,42 @@ class XGUI_EXPORT XGUI_ActionsMgr : public QObject, public Events_Listener ActionInfo actionInfoById(const QString& theId); private: - //! Update workbench actions according to OperationMgr state: - //! No active operations: all actions but nested are available - //! There is active operation: current operation + it's nested - //! are enabled, all the rest is disabled. All active commands is checked. + /// Update workbench actions according to OperationMgr state: + /// No active operations: all actions but nested are available + /// There is active operation: current operation + it's nested + /// are enabled, all the rest is disabled. All active commands is checked. void updateCommandsStatus(); - //! Sets all commands checked if it's operation is active. + /// Sets all commands checked if it's operation is active. void updateCheckState(); - //! Updates actions according to current selection in the viewer + /// Updates actions according to current selection in the viewer void updateOnViewSelection(); - //! Sets all actions to enabled state. + /// Sets all actions to enabled state. void setAllEnabled(); - //! Sets all nested actions to isEnabled state for the command with given ID. - //! If ID is empty - all nested actions will be affected. + /// Sets all nested actions to isEnabled state for the command with given ID. + /// If ID is empty - all nested actions will be affected. void setNestedCommandsEnabled(bool isEnabled, const QString& theParent = QString()); - //! Sets to enabled state all siblings of the given operation and it's parents recursively + /// Sets to enabled state all siblings of the given operation and it's parents recursively void setNestedStackEnabled(ModuleBase_Operation* theOperation); - //! Sets the action with theId to theChecked state. + /// Sets the action with theId to theChecked state. void setActionChecked(const QString& theId, const bool theChecked); - //! Sets the action with theId to theEnabled state. + /// Sets the action with theId to theEnabled state. void setActionEnabled(const QString& theId, const bool theEnabled); - //! Updates actions according to their "document" tag + /// Updates actions according to their "document" tag void updateByDocumentKind(); - //! Asks plugins about their features state, using the Events system + /// Asks plugins about their features state, using the Events system void updateByPlugins(FeaturePtr theActiveFeature); + /// Returns names of nested action for the feature of given operation + /// \param theOperation an operation QStringList allNestedCommands(ModuleBase_Operation* theOperation); private: @@ -156,5 +153,5 @@ class XGUI_EXPORT XGUI_ActionsMgr : public QObject, public Events_Listener friend class XGUI_Workshop; }; -#endif /* XGUI_ACTIONSMGR_H_ */ +#endif /* XGUI_ActionsMgr_H */ diff --git a/src/XGUI/XGUI_ContextMenuMgr.h b/src/XGUI/XGUI_ContextMenuMgr.h index 97a8584df..cc5dcf614 100644 --- a/src/XGUI/XGUI_ContextMenuMgr.h +++ b/src/XGUI/XGUI_ContextMenuMgr.h @@ -34,7 +34,7 @@ class QActionGroup; /** * \ingroup GUI - * A claas wihich provides manement of context menu + * A class wihich provides managent of context menu */ class XGUI_EXPORT XGUI_ContextMenuMgr : public QObject { diff --git a/src/XGUI/XGUI_OperationMgr.h b/src/XGUI/XGUI_OperationMgr.h index a2e2f0ed0..07ed810a3 100755 --- a/src/XGUI/XGUI_OperationMgr.h +++ b/src/XGUI/XGUI_OperationMgr.h @@ -53,8 +53,8 @@ public: /// Enumeration of kind of message that is used when trying to stop the active operation enum XGUI_MessageKind { - XGUI_AbortOperationMessage, //< warns and give possibility to abort current operation - XGUI_InformationMessage //< ask to apply the current operation before performing something + XGUI_AbortOperationMessage, ///< warns and give possibility to abort current operation + XGUI_InformationMessage ///< ask to apply the current operation before performing something }; public: diff --git a/src/XGUI/XGUI_SalomeConnector.h b/src/XGUI/XGUI_SalomeConnector.h index 42df80d12..2c19972df 100644 --- a/src/XGUI/XGUI_SalomeConnector.h +++ b/src/XGUI/XGUI_SalomeConnector.h @@ -34,7 +34,7 @@ class ModuleBase_IViewer; /** * \ingroup GUI - * An interface which provides a connection of XGUI functionality + * An interface which provides a connection of XGUI functionality * with functionality of SALOME module interface. */ class XGUI_EXPORT XGUI_SalomeConnector diff --git a/src/XGUI/XGUI_Selection.cpp b/src/XGUI/XGUI_Selection.cpp index a8972a47d..ed54a60a2 100644 --- a/src/XGUI/XGUI_Selection.cpp +++ b/src/XGUI/XGUI_Selection.cpp @@ -309,11 +309,6 @@ QObjectPtrList XGUI_Selection::selectedObjects() const return QObjectPtrList(); } -void XGUI_Selection::setSelectedObjects( const QObjectPtrList& theObjects ) const -{ - return myWorkshop->objectBrowser()->setObjectsSelected( theObjects ); -} - QObjectPtrList XGUI_Selection::selectedPresentations() const { QObjectPtrList aSelectedList; @@ -336,18 +331,6 @@ QModelIndexList XGUI_Selection::selectedIndexes() const return myWorkshop->objectBrowser()->selectedIndexes(); } -//************************************************************** -void XGUI_Selection::selectedAISObjects(AIS_ListOfInteractive& theList) const -{ - theList.Clear(); - - Handle(AIS_InteractiveContext) aContext = myWorkshop->viewer()->AISContext(); - if (!aContext.IsNull()) { - for (aContext->InitSelected(); aContext->MoreSelected(); aContext->NextSelected()) - theList.Append(aContext->SelectedInteractive()); - } -} - //************************************************************** ObjectPtr XGUI_Selection::getSelectableObject(const Handle(SelectMgr_EntityOwner)& theOwner) const { diff --git a/src/XGUI/XGUI_Selection.h b/src/XGUI/XGUI_Selection.h index 9ff42e6d8..5717d3580 100644 --- a/src/XGUI/XGUI_Selection.h +++ b/src/XGUI/XGUI_Selection.h @@ -37,10 +37,8 @@ class XGUI_Workshop; class SelectMgr_EntityOwner; class ModuleBase_ViewerPrs; -/** -* \ingroup GUI -* Implementation of \ref ModuleBase_ISelection interface. -*/ +/// \ingroup GUI +/// Implementation of \ref ModuleBase_ISelection interface. class XGUI_EXPORT XGUI_Selection : public ModuleBase_ISelection { public: @@ -63,53 +61,42 @@ class XGUI_EXPORT XGUI_Selection : public ModuleBase_ISelection /// \return list of presentations virtual QList> getHighlighted() const; - /** - * Returns list of currently selected objects in object browser - */ + /// Returns list of currently selected objects in object browser virtual QObjectPtrList selectedObjects() const; - virtual void setSelectedObjects( const QObjectPtrList& ) const; - - /** - * Returns list of currently selected results - */ + /// Returns list of currently selected results virtual QObjectPtrList selectedPresentations() const; - //! Returns list of currently selected QModelIndexes + /// Returns list of currently selected QModelIndexes virtual QModelIndexList selectedIndexes() const; - //! Returns list of currently selected QModelIndexes - ObjectPtr getSelectableObject(const Handle(SelectMgr_EntityOwner)& theOwner); - - //! Returns list of currently selected AIS objects - virtual void selectedAISObjects(AIS_ListOfInteractive& theList) const; - - //! Return a selectable object by the entity owner. It founds AIS object in the viewer - //! and returns the corresponded object - /// \param theOwner an entity owner - /// \return a found object or NULL - ObjectPtr getSelectableObject(const Handle(SelectMgr_EntityOwner)& theOwner) const; - - //! Returns list of currently selected owners + /// Returns list of currently selected owners /// \return list of owners void selectedOwners(SelectMgr_IndexedMapOfOwner& theSelectedOwners) const; - //! Returns a list of selection entity owners of the interactive object + /// Returns a list of selection entity owners of the interactive object /// It depends on the modes, in which the object is activated in the context /// \param theObject an object /// \param theOwners a map of entity owners void entityOwners(const Handle_AIS_InteractiveObject& theObject, SelectMgr_IndexedMapOfOwner& theOwners) const; - //! Return the IO from the viewer presentation. - //! \param thePrs a selected object - //! \return an interactive object + /// Return the IO from the viewer presentation. + /// \param thePrs a selected object + /// \return an interactive object virtual Handle(AIS_InteractiveObject) getIO(const std::shared_ptr& thePrs); protected: + /// Return a selectable object by the entity owner. It founds AIS object in the viewer + /// and returns the corresponded object + /// \param theOwner an entity owner + /// \return a found object or NULL + ObjectPtr getSelectableObject(const Handle(SelectMgr_EntityOwner)& theOwner) const; + /// Fills the list of presentations by objects selected in the viewer. /// \param thePresentations an output list of presentation void getSelectedInViewer(QList>& thePresentations) const; + /// Fills the list of presentations by objects selected in the object browser. /// ViewerPrs contains only object parameter not empty. /// If the given list of presentations already has a viewer presentation with the same object @@ -125,7 +112,7 @@ protected: #endif private: - XGUI_Workshop* myWorkshop; + XGUI_Workshop* myWorkshop; ///< current workshop }; #endif diff --git a/src/XGUI/XGUI_Workshop.h b/src/XGUI/XGUI_Workshop.h index d3dadf04a..5f1ddd499 100755 --- a/src/XGUI/XGUI_Workshop.h +++ b/src/XGUI/XGUI_Workshop.h @@ -22,24 +22,27 @@ #define XGUI_WORKSHOP_H #include "XGUI.h" -//#include "XGUI_Constants.h" -#include + #include #include #include +#include +#include +#include #include -#include #include -#include +#include #ifndef HAVE_SALOME -class AppElements_MainWindow; class AppElements_Command; +class AppElements_MainWindow; class AppElements_Workbench; #endif +class Config_DataModelReader; + class XGUI_ActionsMgr; class XGUI_ActiveControlMgr; class XGUI_ContextMenuMgr; @@ -62,17 +65,14 @@ class ModuleBase_IModule; class ModuleBase_IViewer; class ModuleBase_Operation; -class QWidget; +class QAction; class QDockWidget; class QMainWindow; +class QWidget; -class QAction; -class Config_DataModelReader; - -/**\class XGUI_Workshop - * \ingroup GUI - * \brief Class which defines a configuration of the application (Workshop) and launches it. - */ +/// \class XGUI_Workshop +/// \ingroup GUI +/// \brief Class which defines a configuration of the application (Workshop) and launches it. class XGUI_EXPORT XGUI_Workshop : public QObject { Q_OBJECT @@ -83,7 +83,7 @@ Q_OBJECT XGUI_Workshop(XGUI_SalomeConnector* theConnector = 0); virtual ~XGUI_Workshop(); - //! Starting of the application + /// Starting of the application void startApplication(); /// Activates the module controls. Should be called after module creation @@ -93,112 +93,64 @@ Q_OBJECT void deactivateModule(); #ifndef HAVE_SALOME - //! Returns main window (Desktop) of the application - AppElements_MainWindow* mainWindow() const - { - return myMainWindow; - } + /// Returns main window (Desktop) of the application + AppElements_MainWindow* mainWindow() const { return myMainWindow; } - //! Creates and adds a new workbench (menu group) with the given name and returns it + /// Creates and adds a new workbench (menu group) with the given name and returns it AppElements_Workbench* addWorkbench(const QString& theName); #endif - //! Returns selection manager object - XGUI_SelectionMgr* selector() const - { - return mySelector; - } - - //! Returns displayer - XGUI_Displayer* displayer() const - { - return myDisplayer; - } - - //! ! Returns operation manager. - XGUI_OperationMgr* operationMgr() const - { - return myOperationMgr; - } - - //! ! Returns error manager. - XGUI_ErrorMgr* errorMgr() const - { - return myErrorMgr; - } - - //! ! Returns an actions manager - XGUI_ActionsMgr* actionsMgr() const - { - return myActionsMgr; - } - - //! ! Returns an active control manager - XGUI_ActiveControlMgr* activeControlMgr() const - { - return myActiveControlMgr; - } - - //! ! Returns an actions manager - XGUI_MenuMgr* menuMgr() const - { - return myMenuMgr; - } - - //! Returns property panel widget - XGUI_PropertyPanel* propertyPanel() const - { - return myPropertyPanel; - } - - //! Returns panel for hide object faces - XGUI_FacesPanel* facesPanel() const - { - return myFacesPanel; - } - - //! Returns context menu manager object - XGUI_ContextMenuMgr* contextMenuMgr() const - { - return myContextMenuMgr; - } - - //! Returns an object which provides interface to Salome Module (LightApp_Module) - XGUI_SalomeConnector* salomeConnector() const - { - return mySalomeConnector; - } - - //! Provides an object which provides interface to Salome Viewer + /// Returns selection manager object + XGUI_SelectionMgr* selector() const { return mySelector; } + + /// Returns displayer + XGUI_Displayer* displayer() const { return myDisplayer; } + + /// Returns operation manager. + XGUI_OperationMgr* operationMgr() const { return myOperationMgr; } + + /// Returns error manager. + XGUI_ErrorMgr* errorMgr() const { return myErrorMgr; } + + /// Returns an actions manager + XGUI_ActionsMgr* actionsMgr() const { return myActionsMgr; } + + /// Returns an active control manager + XGUI_ActiveControlMgr* activeControlMgr() const { return myActiveControlMgr; } + + /// Returns an actions manager + XGUI_MenuMgr* menuMgr() const { return myMenuMgr; } + + /// Returns property panel widget + XGUI_PropertyPanel* propertyPanel() const { return myPropertyPanel; } + + /// Returns panel for hide object faces + XGUI_FacesPanel* facesPanel() const { return myFacesPanel; } + + /// Returns context menu manager object + XGUI_ContextMenuMgr* contextMenuMgr() const { return myContextMenuMgr; } + + /// Returns an object which provides interface to Salome Module (LightApp_Module) + XGUI_SalomeConnector* salomeConnector() const { return mySalomeConnector; } + + /// Provides an object which provides interface to Salome Viewer ModuleBase_IViewer* salomeViewer() const; - //! Returns true if the application works as SALOME module - bool isSalomeMode() const - { - return mySalomeConnector != 0; - } + /// Returns true if the application works as SALOME module + bool isSalomeMode() const { return mySalomeConnector != 0; } - //! Returns Object browser - XGUI_ObjectsBrowser* objectBrowser() const - { - return myObjectBrowser; - } + /// Returns Object browser + XGUI_ObjectsBrowser* objectBrowser() const { return myObjectBrowser; } /// This method is called by Salome module when selection is changed void salomeViewerSelectionChanged(); /// Returns viewer which unifies access as to Salome viewer as to standalone viewer - XGUI_ViewerProxy* viewer() const - { - return myViewerProxy; - } + XGUI_ViewerProxy* viewer() const { return myViewerProxy; } /// Returns the module connector /// \returns the instance of connector - XGUI_ModuleConnector* moduleConnector() const - { - return myModuleConnector; - } + XGUI_ModuleConnector* moduleConnector() const { return myModuleConnector; } /// Returns a desktop /// \return a desktop instance @@ -210,50 +162,50 @@ Q_OBJECT /// \return boolean state if the object should not be displayed virtual bool prepareForDisplay(const std::set& theObjects) const; - //! Delete features + /// Delete features void deleteObjects(); - //! Searches for selected features unused in other (not selected) features. If one or several - //! selected features are found, a warning message proposes to delete them. It contains - //! the list of features to be deleted. + /// Searches for selected features unused in other (not selected) features. If one or several + /// selected features are found, a warning message proposes to delete them. It contains + /// the list of features to be deleted. void cleanHistory(); - //! Returns true if the selected feature can be moved to the position after the current feature - //! \return boolean value + /// Returns true if the selected feature can be moved to the position after the current feature + /// \return boolean value bool canMoveFeature(); - //! Move selected features to be after the current feature + /// Move selected features to be after the current feature void moveObjects(); - //! Returns true if the object can be shaded. If the object is a compsolid result, the method - //! checks subobjects of the result - //! \return boolean value + /// Returns true if the object can be shaded. If the object is a compsolid result, the method + /// checks subobjects of the result + /// \return boolean value bool canBeShaded(const ObjectPtr& theObject) const; - //! Returns true if there is at least one selected body/construction/group result - //! \param theActionName text of the checked action - //! \return boolean value + /// Returns true if there is at least one selected body/construction/group result + /// \param theActionName text of the checked action + /// \return boolean value bool canChangeProperty(const QString& theActionName) const; - //! Change color of the results if it is possible - //! The operation is available for construction, body and group results - //! theObjects a list of selected objects + /// Change color of the results if it is possible + /// The operation is available for construction, body and group results + /// theObjects a list of selected objects void changeColor(const QObjectPtrList& theObjects); - //! Change deflection of the results if it is possible - //! The operation is available for construction, body and group results - //! theObjects a list of selected objects + /// Change deflection of the results if it is possible + /// The operation is available for construction, body and group results + /// theObjects a list of selected objects void changeDeflection(const QObjectPtrList& theObjects); - //! Change transparency of the results if it is possible - //! The operation is available for construction, body and group results - //! theObjects a list of selected objects + /// Change transparency of the results if it is possible + /// The operation is available for construction, body and group results + /// theObjects a list of selected objects void changeTransparency(const QObjectPtrList& theObjects); - //! Show the given features in 3d Viewer + /// Show the given features in 3d Viewer void showObjects(const QObjectPtrList& theList, bool isVisible); - //! Show the given features in 3d Viewer + /// Show the given features in 3d Viewer void showOnlyObjects(const QObjectPtrList& theList); /// Set display mode for the given objects @@ -269,10 +221,7 @@ Q_OBJECT void activateObjectsSelection(const QObjectPtrList& theList); /// Returns current module - ModuleBase_IModule* module() const - { - return myModule; - } + ModuleBase_IModule* module() const { return myModule; } /// Returns current directory which contains data files QString currentDataDir() const { return myCurrentDir; } @@ -280,19 +229,15 @@ Q_OBJECT /// Returns current directory which contains data files void setCurrentDataDir(const QString& theDir) { myCurrentDir = theDir; } - /** - * Save the current document into a directory - * \param theName - path to the directory - * \param theFileNames - returned file names created in this directory - */ + /// Save the current document into a directory + /// \param theName - path to the directory + /// \param theFileNames - returned file names created in this directory void saveDocument(const QString& theName, std::list& theFileNames); - /** - * If there is an active (uncommitted) operation shows a prompt to abort it - * and performs abortion if user agreed. Returns true if - * - operation aborted successfully - * - there is no active operation - */ + /// If there is an active (uncommitted) operation shows a prompt to abort it + /// and performs abortion if user agreed. Returns true if + /// - operation aborted successfully + /// - there is no active operation bool abortAllOperations(); /// Updates workshop state according to the started operation, e.g. visualizes the property panel @@ -300,10 +245,9 @@ Q_OBJECT /// \param theOpertion a started operation void operationStarted(ModuleBase_Operation* theOperation); - - //! Delete features. Delete the referenced features. There can be a question with a list of - //! referenced objects. - //! \param theFeatures a list of objects to be deleted + /// Delete features. Delete the referenced features. There can be a question with a list of + /// referenced objects. + /// \param theFeatures a list of objects to be deleted bool deleteFeatures(const QObjectPtrList& theFeatures); /// Deactivates the object, if it is active and the module returns that the activation @@ -316,22 +260,10 @@ Q_OBJECT /// \param theFeature a feature bool isFeatureOfNested(const FeaturePtr& theFeature); - //! Shows the message in the status bar - //! \param theMessage a message + /// Shows the message in the status bar + /// \param theMessage a message void setStatusBarMessage(const QString& theMessage); - /// Has to be called in order to display objects with visibility status = true - void synchronizeViewer(); - - /// Has to be called in order to display objects from a specifed group - /// with visibility status = true - /// \param theDoc the document for objects synchronisation - /// \param theGroup the group name - /// \param theUpdateViewer update viewer flag - void synchronizeGroupInViewer(const DocumentPtr& theDoc, - const std::string& theGroup, - bool theUpdateViewer); - /// Update the property panel content by the XML description of the operation and set the panel /// into the operation /// \param theOperation an operation @@ -360,24 +292,24 @@ Q_OBJECT /// It is used for specific processing of Undo/Redo for this command. static QString MOVE_TO_END_COMMAND; - //! Closes all in the current session and load the directory - //! \param theDirectory a path to directory + /// Closes all in the current session and load the directory + /// \param theDirectory a path to directory void openDirectory(const QString& theDirectory); signals: /// Emitted when selection happens in Salome viewer void salomeViewerSelection(); - //! the signal about the workshop actions states are updated. + /// the signal about the workshop actions states are updated. void commandStatusUpdated(); - //! the application is started + /// the application is started void applicationStarted(); - //! Signal to update Undo history list + /// Signal to update Undo history list void updateUndoHistory(const QList&); - //! Signal to update Redo history list + /// Signal to update Redo history list void updateRedoHistory(const QList&); public slots: @@ -455,9 +387,6 @@ signals: void setGrantedFeatures(ModuleBase_Operation* theOperation); private: - /// Display all results - //void displayAllResults(); - /// Display results from document /// \param theDoc a document void displayDocumentResults(DocumentPtr theDoc); @@ -475,11 +404,6 @@ private: void moveOutFolder(bool isBefore); private slots: - /// SLOT, that is called after the operation is started. Update workshop state according to - /// the started operation, e.g. visualizes the property panel and connect to it. - /// \param theOpertion a started operation - // void onOperationStarted(ModuleBase_Operation* theOperation); - /// SLOT, that is called after the operation is resumed. Update workshop state according to /// the started operation, e.g. visualizes the property panel and connect to it. /// \param theOpertion a resumed operation @@ -515,7 +439,7 @@ private: void onPreviewActionClicked(); private: - /// Init menu + /// Init menu void initMenu(); /// Register validators @@ -539,44 +463,46 @@ private: // Creates Dock widgets: Object browser and Property panel void createDockWidgets(); - //! Extends undo/redo toolbutton's with history menu - //! \param theObject - in the OpenParts it is a QToolButton by itself, - //! in salome mode - QAction that creates a button. - //! \param theSignal - void "updateUndoHistory" or "updateRedoHistory" SIGNAL; - //! \param theSlot - onUndo(int) or onRedo(int) SLOT + /// Extends undo/redo toolbutton's with history menu + /// \param theObject - in the OpenParts it is a QToolButton by itself, + /// in salome mode - QAction that creates a button. + /// \param theSignal - void "updateUndoHistory" or "updateRedoHistory" SIGNAL; + /// \param theSlot - onUndo(int) or onRedo(int) SLOT void addHistoryMenu(QObject* theObject, const char* theSignal, const char* theSlot); - //! Creates list of actions (commands) by given history list from session + /// Creates list of actions (commands) by given history list from session QList processHistoryList(const std::list&) const; + /// Pefrom Undo/Redo and necessary workshop updates(viewer, browser, actions state) + /// \param theActionType a type of the action (Undo or Redo) + /// \param theTimes number of applies the given action + void processUndoRedo(const ModuleBase_ActionType theActionType, int theTimes); + private: #ifndef HAVE_SALOME - AppElements_MainWindow* myMainWindow; + AppElements_MainWindow* myMainWindow; ///< desktop window #endif - ModuleBase_IModule* myModule; - XGUI_ErrorMgr* myErrorMgr; - XGUI_ObjectsBrowser* myObjectBrowser; - XGUI_PropertyPanel* myPropertyPanel; - XGUI_FacesPanel* myFacesPanel; //< panel for hide object faces - XGUI_SelectionMgr* mySelector; - XGUI_Displayer* myDisplayer; + ModuleBase_IModule* myModule; ///< current module + XGUI_ErrorMgr* myErrorMgr; ///< updator of error message + XGUI_ObjectsBrowser* myObjectBrowser; ///< data tree widget + XGUI_PropertyPanel* myPropertyPanel; ///< container of feature attributes widgets + XGUI_FacesPanel* myFacesPanel; ///< panel for hide object faces + XGUI_SelectionMgr* mySelector; ///< handler of selection processing + XGUI_Displayer* myDisplayer; ///< handler of objects display XGUI_OperationMgr* myOperationMgr; ///< manager to manipulate through the operations - XGUI_ActionsMgr* myActionsMgr; + XGUI_ActionsMgr* myActionsMgr; ///< manager of workshop actions XGUI_ActiveControlMgr* myActiveControlMgr; ///< manager to have none or one active control XGUI_MenuMgr* myMenuMgr; ///< manager to build menu/tool bar using order defined in XML - XGUI_SalomeConnector* mySalomeConnector; - XGUI_ErrorDialog* myErrorDlg; - XGUI_ViewerProxy* myViewerProxy; - XGUI_ContextMenuMgr* myContextMenuMgr; - XGUI_ModuleConnector* myModuleConnector; - XGUI_WorkshopListener* myEventsListener; - - QString myCurrentDir; - - QIntList myViewerSelMode; - - Config_DataModelReader* myDataModelXMLReader; + XGUI_SalomeConnector* mySalomeConnector; ///< connector to SALOME module interface + XGUI_ErrorDialog* myErrorDlg; ///< dialog to show information of occured error events + XGUI_ViewerProxy* myViewerProxy; ///< connector to SALOME viewer interface + XGUI_ContextMenuMgr* myContextMenuMgr; ///< manager of context menu build + XGUI_ModuleConnector* myModuleConnector; ///< implementation of ModuleBase_IWorkshop + XGUI_WorkshopListener* myEventsListener; ///< processing of events + QString myCurrentDir; ///< cached the last open directory + QIntList myViewerSelMode; ///< selection modes set in the viewer + Config_DataModelReader* myDataModelXMLReader; ///< XML reader of data model }; #endif -- 2.39.2