X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_DataObject.h;h=6ffeaa1eed17ecf1a0e33710bbba4258d8174289;hb=f34b90e9e4e02ba65419134d5d37a2e42aecfabf;hp=a93963bd348db8ce8c59f1dc5f0493cd822f4377;hpb=0676b7539aa0e59468673e1d3b44ea8a897aa9fc;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_DataObject.h b/src/HYDROGUI/HYDROGUI_DataObject.h index a93963bd..6ffeaa1e 100644 --- a/src/HYDROGUI/HYDROGUI_DataObject.h +++ b/src/HYDROGUI/HYDROGUI_DataObject.h @@ -47,7 +47,12 @@ public: //! Column id enum { RefObjectId = RefEntryId + 1, //!< Ref.Object column - BathymetryId //!< Bathymetry column + AltitudeObjId //!< Altitude column + }; + + //! Role + enum { + IsInOperationRole = Qtx::AppropriateRole + 100 //!< Filter value role }; /** @@ -55,10 +60,12 @@ public: * \param theParent parent data object * \param theData reference to the corresponding object from data structure * \param theParentEntry entry of the parent data object (for reference objects) + * \param theIsInOperation if true then the tree is used for a browser within an operation, it is false by default */ - HYDROGUI_DataObject( SUIT_DataObject* theParent, + HYDROGUI_DataObject( SUIT_DataObject* theParent, Handle(HYDROData_Entity) theData, - const QString& theParentEntry ); + const QString& theParentEntry, + const bool theIsInOperation = false ); /** * Returns the unique object identifier string. @@ -80,6 +87,21 @@ public: */ virtual QFont font( const int = SUIT_DataObject::NameId ) const; + /** + * Returns the object color. + */ + virtual QColor color( const ColorRole, const int = NameId ) const; + + /** + * Returns the object icon. + */ + virtual QPixmap icon( const int = NameId ) const; + + /** + * Returns true if renaming is allowed for the object. + */ + virtual bool renameAllowed( const int = NameId ) const; + /** * Returns the model data object. */ @@ -100,10 +122,31 @@ public: */ static QString dataObjectEntry( const Handle(HYDROData_Entity)& theObject, const bool theWithPrefix = true ); + /** + * Sets the validity flag: if object is valid or not. + * \param theIsValid is true for valid objects, false for invalid + */ + void setIsValid( const bool theIsValid ); + + /** + * Returns the validity flag: is object valid or not + * \return false if object is not valid + */ + bool isValid() const; + + /** + * Returns the usage within active operation flag: + * is the object is used in the local tree of an active operation dialog or not. + * \return false if the object is used in the main object browser tree + */ + bool isInOperation() const { return myIsInOperation; } protected: Handle(HYDROData_Entity) myData; ///< object from data model QString myParentEntry; + bool myIsValid; ///< indicates if the object is valid + bool myIsInOperation; ///< indicates if the object is used within an active operation + QPixmap myIcon; }; /** @@ -122,10 +165,12 @@ public: * Constructor. * \param theParent parent data object * \param theName displayed name + * \param theIsInOperation if true then the tree is used for a browser within an operation, it is false by default */ HYDROGUI_NamedObject( SUIT_DataObject* theParent, - const QString& theName, - const QString& theParentEntry ); + const QString& theName, + const QString& theParentEntry, + const bool theIsInOperation = false ); /** * Returns the unique object identifier string. @@ -137,9 +182,28 @@ public: */ virtual QString name() const; + /** + * Returns the font of displayed object name. + */ + virtual QFont font( const int = SUIT_DataObject::NameId ) const; + + /** + * Returns the object icon. + */ + virtual QPixmap icon( const int = NameId ) const; + + /** + * Returns the usage within active operation flag: + * is the object is used in the local tree of an active operation dialog or not. + * \return false if the object is used in the main object browser tree + */ + bool isInOperation() const { return myIsInOperation; } + private: QString myName; ///< name in the OB QString myParentEntry; + QPixmap myIcon; + bool myIsInOperation; ///< indicates if the object is used within an active operation }; /** @@ -154,12 +218,14 @@ public: * Constructor. * \param theParent parent data object * \param theName displayed name + * \param theIsInOperation if true then the tree is used for a browser within an operation, it is false by default */ HYDROGUI_DropTargetObject( SUIT_DataObject* theParent, - const QString& theName, - const QString& theParentEntry ); + const QString& theName, + const QString& theParentEntry, + const bool theIsInOperation = false ); - bool isDropAccepted() const override { return true; } + bool isDropAccepted() const { return true; } }; #endif