X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_ModelWidget.h;h=b08a0a55122549bd5e61a8ba5559986029c0cbba;hb=450d1bd65c11870d3942a30164518037b9a7503e;hp=dd2c9edd3a1817899a8cddbdeafce020525f1005;hpb=87d7ff7e518c103f4319f7395e6491cd2e9406a5;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_ModelWidget.h b/src/ModuleBase/ModuleBase_ModelWidget.h index dd2c9edd3..b08a0a551 100644 --- a/src/ModuleBase/ModuleBase_ModelWidget.h +++ b/src/ModuleBase/ModuleBase_ModelWidget.h @@ -9,7 +9,7 @@ #include #include - +#include #include #include @@ -69,6 +69,10 @@ Q_OBJECT /// \return the boolean result std::string getDefaultValue() const { return myDefaultValue; } + /// Returns true, if widget is internal + /// \return the boolean result + bool isInternal() const { return myIsInternal; } + /// Returns true, if the obligatory value of the widget is not defined in the XML or has true value /// \return the boolean result bool isObligatory() const { return myIsObligatory; } @@ -81,6 +85,10 @@ Q_OBJECT /// \return the enumeration result ValueState getValueState() const { return myState; } + /// Returns an attribute error according to the value state + /// It exists in all cases excepring the "Store" case + QString getValueStateError() const; + /// Defines if it is supposed that the widget should interact with the viewer. virtual bool isViewerSelector() { return false; } @@ -88,6 +96,11 @@ Q_OBJECT /// By default it returns true virtual bool canSetValue() const { return true; }; + //! Returns the widget error, get it from the attribute validator and state of the widget + //! If the feature is correct, it returns an empty value + //! \return string value + QString getError() const; + /// Set the given wrapped value to the current widget /// This value should be processed in the widget according to the needs /// \param theValues the wrapped selection values @@ -107,6 +120,9 @@ Q_OBJECT /// \return the state whether the widget can accept the focus virtual bool focusTo(); + /// Select the internal content if it can be selected. It is empty in the default realization + virtual void selectContent() {} + /// The method called when widget is activated void activate(); @@ -193,6 +209,9 @@ signals: /// \param theEvent key release event void keyReleased(QKeyEvent* theEvent); + /// The signal is emitted if the enter is clicked in the control of the widget + void enterClicked(); + /// The signal about the widget is get focus /// \param theWidget the model base widget void focusInWidget(ModuleBase_ModelWidget* theWidget); @@ -287,10 +306,15 @@ private: /// the default value, which is defined in the XML for this attribute std::string myDefaultValue; + /// an XML internal state + bool myIsInternal; + /// the reset state. If it is false, the reset method of the widget is not performed bool myUseReset; /// blocked flag of modification of the value state bool myIsValueStateBlocked; + + friend class ModuleBase_OperationFeature; // to call storeValue() by commit if value state is ModifiedInPP }; #endif