X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_DocumentDataModel.h;h=a5257a981c7d1041f9a991d97447bcbf08f54269;hb=2e6153d900999f7ddc85ba595ef5c74474fc796c;hp=f6ce80eac56ee2efd203ba46d22df6456b9f2b98;hpb=f16644190fbaf92e62aa6fa11d2b077484768b1c;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_DocumentDataModel.h b/src/XGUI/XGUI_DocumentDataModel.h index f6ce80eac..a5257a981 100644 --- a/src/XGUI/XGUI_DocumentDataModel.h +++ b/src/XGUI/XGUI_DocumentDataModel.h @@ -50,21 +50,33 @@ public: bool removeRows(int theRow, int theCount, const QModelIndex& theParent = QModelIndex()); + Qt::ItemFlags flags(const QModelIndex& theIndex) const; + //! Returns Feature object by the given Model index. //! Returns 0 if the given index is not index of a feature FeaturePtr feature(const QModelIndex& theIndex) const; + QModelIndex featureIndex(const FeaturePtr theFeature) const; + + //! Returns QModelIndex which corresponds to the given feature if this is a part + //! If the feature is not found then index is not valid + QModelIndex partIndex(const FeaturePtr& theFeature) const; + //! Activates a part data model if the index is a Part node index. //! Returns true if active part changed. bool activatedIndex(const QModelIndex& theIndex); + //! Retrurns Feature which corresponds to active part FeaturePtr activePart() const; + //! Retrurns QModelIndex of active part QModelIndex activePartIndex() const { return myActivePartIndex; } //! Deactivates a Part void deactivatePart(); + void rebuildDataTree(); + private: enum {PartsFolder, HistoryNode}; @@ -97,9 +109,6 @@ private: int historyOffset() const; - //! Document - boost::shared_ptr myDocument; - //! Data model of top part of data tree (not parts object) XGUI_TopDataModel* myModel;