X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_ObjectsBrowser.h;h=2b9ab1803390bbcaa8125ede8ffdeae784958ab6;hb=c1d1f617a04aacf5f0d6246c1b8dea72dd2d6093;hp=22b45c08aca2c5ce8fb78ff846d83f4fffdac55c;hpb=c3ae28ba30027cc4a6a757ef623f40adaae96ead;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_ObjectsBrowser.h b/src/XGUI/XGUI_ObjectsBrowser.h index 22b45c08a..2b9ab1803 100644 --- a/src/XGUI/XGUI_ObjectsBrowser.h +++ b/src/XGUI/XGUI_ObjectsBrowser.h @@ -11,25 +11,30 @@ #include #include -#include +#include class ModuleBase_IDocumentDataModel; class XGUI_DataModel; +class Config_DataModelReader; /** * \ingroup GUI * Implementation of root label in Object Browser */ -class XGUI_ActiveDocLbl: public QLineEdit +class XGUI_ActiveDocLbl: public QLabel { Q_OBJECT public: /// Constructor + /// \param theText a text /// \param theParent a parent widget XGUI_ActiveDocLbl(const QString& theText, QWidget* theParent ); + /// Sets tree view + /// \param theView a view void setTreeView(QTreeView* theView); + /// Returns tree view QTreeView* treePalette() const { return myTreeView;} #if (!defined HAVE_SALOME) && (defined WIN32) @@ -37,11 +42,14 @@ Q_OBJECT #endif public slots: + /// On unselect void unselect(); protected: + /// On mouse release virtual void mouseReleaseEvent( QMouseEvent* e); + /// Filter event bool eventFilter(QObject* theObj, QEvent* theEvent); private: @@ -165,7 +173,7 @@ Q_OBJECT } /// Returns active doc label object - QLineEdit* activeDocLabel() const { return myActiveDocLbl; } + QLabel* activeDocLabel() const { return myActiveDocLbl; } /// Rebuild data tree void rebuildDataTree(); @@ -173,6 +181,10 @@ Q_OBJECT /// Resets the object browser into initial state void clearContent(); + /// Set XML reader object for data model + /// \param theReader the reader object + void setXMLReader(Config_DataModelReader* theReader); + public slots: //! Called on Edit command request void onEditItem(); @@ -199,12 +211,20 @@ signals: //! Called when selection in Data Tree is changed void onSelectionChanged(const QItemSelection& theSelected, const QItemSelection& theDeselected); + void onBeforeReset(); + + void onAfterModelReset(); + private: + QModelIndexList expandedItems(const QModelIndex& theParent = QModelIndex()) const; //! Internal model XGUI_DataModel* myDocModel; XGUI_ActiveDocLbl* myActiveDocLbl; XGUI_DataTree* myTreeView; + + /// A field to store expanded items before model reset + QModelIndexList myExpandedItems; }; #endif