X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_DataObject.h;h=c48daaa04fd8ec0647b98aa8806d65c9276d828f;hb=5cae7e874afd2fc1b6f61023e8ebd33a933db3c7;hp=4e92dfffa3fad5688fb8211c7c65061314c7584b;hpb=d6aeef5b61d85b44493cd5d93ed9870cc513e68f;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_DataObject.h b/src/HYDROGUI/HYDROGUI_DataObject.h index 4e92dfff..c48daaa0 100644 --- a/src/HYDROGUI/HYDROGUI_DataObject.h +++ b/src/HYDROGUI/HYDROGUI_DataObject.h @@ -23,15 +23,14 @@ #ifndef HYDROGUI_DATAOBJECT_H #define HYDROGUI_DATAOBJECT_H -#include "HYDROGUI.h" - -#include +#include #include #include #include #include +#include /** * \class HYDROGUI_DataObject @@ -45,44 +44,66 @@ class HYDROGUI_DataObject : public LightApp_DataObject { public: + //! Column id + enum { + RefObjectId = RefEntryId + 1, //!< Ref.Object column + BathymetryId //!< Bathymetry column + }; + /** * Constructor. * \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) */ HYDROGUI_DataObject( SUIT_DataObject* theParent, - Handle(HYDROData_Object) theData ); + Handle(HYDROData_Entity) theData, + const QString& theParentEntry ); /** * Returns the unique object identifier string. */ virtual QString entry() const; + /** + * Returns the entry of the referenced object. + */ + virtual QString refEntry() const; + /** * Returns the name of object. */ virtual QString name() const; + /** + * Returns the font of displayed object name. + */ + virtual QFont font( const int = SUIT_DataObject::NameId ) const; + /** * Returns the model data object. */ - const Handle(HYDROData_Object)& modelObject() const { return myData; } + const Handle(HYDROData_Entity)& modelObject() const { return myData; } /** * Redefines the object. */ - void setObject( Handle(HYDROData_Object) theObject ) { myData = theObject; } + void setObject( const Handle(HYDROData_Entity)& theObject ) { myData = theObject; } + + /** + * Returns the entry prefix for all HYDRO data objects. + */ + static QString entryPrefix() { return QString( "HYDRO:" ); } /** - * Returns \a HYDROGUI_DataObject by the entry string of this object. - * \returns NULL if this is not HYDRO entry, or cannot cast to HYDROGUI_DataObject + * Returns the full entry for the specified data object. */ - static HYDROGUI_DataObject* objectByEntry( const QString& theEntry ); + static QString dataObjectEntry( const Handle(HYDROData_Entity)& theObject, + const bool theWithPrefix = true ); protected: - Handle(HYDROData_Object) myData; ///< object from data model - QString myEntry; ///< optimization: store generated entry to return it quickly - int myStudyId; ///< the study identifier: check an object validity in the corresponded document + Handle(HYDROData_Entity) myData; ///< object from data model + QString myParentEntry; }; /** @@ -103,7 +124,8 @@ public: * \param theName displayed name */ HYDROGUI_NamedObject( SUIT_DataObject* theParent, - const QString& theName ); + const QString& theName, + const QString& theParentEntry ); /** * Returns the unique object identifier string. @@ -115,15 +137,9 @@ public: */ virtual QString name() const; - /** - * Returns name of the named object that is identified by this entry. - * \param theEntry entry of the object (used for selection identification). - * \returns name of the object, or empty string if it is not HYDRO named object - */ - static QString nameByEntry( const QString& theEntry ); - private: QString myName; ///< name in the OB + QString myParentEntry; }; #endif