X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_OperationMgr.h;h=80c457b2b2823edeeddb36ae7c91c4ea85aeb682;hb=8ebc9a7d5f87057b61b174e7568e01e44571549d;hp=eb0e7541a753675a929521bc09d0342576d81937;hpb=fb1766a3fb7d2b3e6862e040d528d96a5732f200;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_OperationMgr.h b/src/XGUI/XGUI_OperationMgr.h index eb0e7541a..80c457b2b 100644 --- a/src/XGUI/XGUI_OperationMgr.h +++ b/src/XGUI/XGUI_OperationMgr.h @@ -17,6 +17,8 @@ class QKeyEvent; +class ModuleBase_IWorkshop; + /**\class XGUI_OperationMgr * \ingroup GUI * \brief Operation manager. Servers to manipulate to the workshop operations. Contains a stack @@ -32,10 +34,13 @@ Q_OBJECT public: /// Constructor /// \param theParent the parent - XGUI_OperationMgr(QObject* theParent); + XGUI_OperationMgr(QObject* theParent, ModuleBase_IWorkshop* theWorkshop); /// Destructor virtual ~XGUI_OperationMgr(); + void setWorkshop(ModuleBase_IWorkshop* theWorkshop) + { myWorkshop = theWorkshop; }; + /// Returns the current operation or NULL /// \return the current operation ModuleBase_Operation* currentOperation() const; @@ -81,20 +86,21 @@ Q_OBJECT /// Blocking/unblocking enabling of Ok button in property panel. /// It is used when operation can not be validated even all attributes are valid - void setLockValidating(bool toLock) { myIsValidationLock = toLock; } + void setLockValidating(bool toLock); /// Returns state of validation locking bool isValidationLocked() const { return myIsValidationLock; } - /// Sets apply state to the value and emit signal about this state is changed - /// \param theEnabled the state value - void setApplyEnabled(const bool theEnabled); - /// Returns enable apply state /// \return theEnabled a boolean value bool isApplyEnabled() const; - public slots: + /// Returns valid state of the parent operation. If the current operation is the last one + /// it returns the valid state of the operation + /// \return boolean value + bool isParentOperationValid() const; + +public slots: /// Slot that commits the current operation. void onCommitOperation(); /// Slot that aborts the current operation. @@ -136,6 +142,10 @@ signals: void keyEnterReleased(); protected: + /// Sets apply state to the value and emit signal about this state is changed + /// \param theEnabled the state value + void setApplyEnabled(const bool theEnabled); + /// Commits the current operatin if it is valid bool commitOperation(); @@ -165,11 +175,18 @@ signals: /// Slot called on operation resume void onOperationResumed(); + /// Slot called on operation triggered + void onOperationTriggered(bool theState); + private: typedef QList Operations; ///< definition for a list of operations Operations myOperations; ///< a stack of started operations. The active operation is on top, // others are suspended and started by the active is finished + /// Current workshop + ModuleBase_IWorkshop* myWorkshop; + + /// Lock/Unlock access to Ok button in property panel bool myIsValidationLock; /// Lock/Unlock access to Ok button in property panel