X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_ObjectsBrowser.h;h=c5149fdd909435768d6f6954604590ac63ffd49a;hb=8779c4b3e4b51839580503650d9d78bd83e669a5;hp=b8e275ae688e3d6f7478bc832ef244377a4eea38;hpb=6d67df3511c8cc3518911419aea31c15bafd2a8d;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_ObjectsBrowser.h b/src/XGUI/XGUI_ObjectsBrowser.h index b8e275ae6..c5149fdd9 100644 --- a/src/XGUI/XGUI_ObjectsBrowser.h +++ b/src/XGUI/XGUI_ObjectsBrowser.h @@ -1,9 +1,10 @@ - #ifndef XGUI_ObjectsBrowser_H #define XGUI_ObjectsBrowser_H #include "XGUI.h" -#include "XGUI_Constants.h" +#include +#include +#include #include #include @@ -11,92 +12,111 @@ class XGUI_DocumentDataModel; class QLineEdit; - -class XGUI_DataTree: public QTreeView +class XGUI_DataTree : public QTreeView { - Q_OBJECT -public: +Q_OBJECT + public: XGUI_DataTree(QWidget* theParent); virtual ~XGUI_DataTree(); - //! Returns list of currently selected features - QFeatureList selectedFeatures() const { return mySelectedData; } + //! Returns list of currently selected objects + QList selectedObjects() const + { + return mySelectedData; + } XGUI_DocumentDataModel* dataModel() const; signals: //! Emited when selection is changed void selectionChanged(); - void activePartChanged(FeaturePtr thePart); - + void activePartChanged(ObjectPtr thePart); + //! Emited on context menu request void contextMenuRequested(QContextMenuEvent* theEvent); -protected slots: + protected slots: virtual void commitData(QWidget* theEditor); -protected: + protected: virtual void mouseDoubleClickEvent(QMouseEvent* theEvent); virtual void contextMenuEvent(QContextMenuEvent* theEvent); -private slots: + private slots: //! Called when selection in Data Tree is changed void onSelectionChanged(const QItemSelection& theSelected, const QItemSelection& theDeselected); -private: + private: //! List of currently selected data - QFeatureList mySelectedData; + QList mySelectedData; }; - /**\class XGUI_ObjectsBrowser * \ingroup GUI * \brief Object browser window object. Represents data tree of current data structure */ - class XGUI_EXPORT XGUI_ObjectsBrowser : public QWidget +class XGUI_EXPORT XGUI_ObjectsBrowser : public QWidget { - Q_OBJECT -public: +Q_OBJECT + public: XGUI_ObjectsBrowser(QWidget* theParent); virtual ~XGUI_ObjectsBrowser(); //! Returns Model which provides access to data objects - XGUI_DocumentDataModel* dataModel() const { return myDocModel; } + XGUI_DocumentDataModel* dataModel() const + { + return myDocModel; + } - //! Returns list of currently selected features - QFeatureList selectedFeatures() const { return myFeaturesList; } + //! Returns list of currently selected objects + QList selectedObjects() const + { + return myObjectsList; + } + + void setObjectsSelected(const QList& theObjects); //! Returns currently selected indexes - QModelIndexList selectedIndexes() const { return myTreeView->selectionModel()->selectedIndexes(); } + QModelIndexList selectedIndexes() const + { + return myTreeView->selectionModel()->selectedIndexes(); + } //! Returns TreeView widget - XGUI_DataTree* treeView() const { return myTreeView; } + XGUI_DataTree* treeView() const + { + return myTreeView; + } //! Activates currently selected part. Signal activePartChanged will not be sent - void activatePart(const FeaturePtr& thePart); + void activatePart(const ResultPartPtr& thePart); + + void rebuildDataTree(); signals: //! Emited when selection is changed void selectionChanged(); //! Emited when current active document is changed - void activePartChanged(FeaturePtr thePart); - + void activePartChanged(ObjectPtr thePart); + //! Emited on context menu request void contextMenuRequested(QContextMenuEvent* theEvent); -protected: + protected: virtual bool eventFilter(QObject* obj, QEvent* theEvent); -private slots: - void onActivePartChanged(FeaturePtr thePart); + private slots: + void onActivePartChanged(ObjectPtr thePart); void onContextMenuRequested(QContextMenuEvent* theEvent); void onLabelContextMenuRequested(const QPoint& thePnt); //! Called on Edit command request void onEditItem(); -private: + void onSelectionChanged(); + + private: void closeDocNameEditing(bool toSave); //! Internal model @@ -105,7 +125,7 @@ private: QLineEdit* myActiveDocLbl; XGUI_DataTree* myTreeView; - QFeatureList myFeaturesList; + QList myObjectsList; }; -#endif \ No newline at end of file +#endif