#define XGUI_ObjectsBrowser_H
#include "XGUI.h"
-#include "XGUI_Constants.h"
+#include <ModuleBase_Definitions.h>
#include <QWidget>
#include <QTreeView>
class XGUI_DocumentDataModel;
-class QLabel;
+class QLineEdit;
class XGUI_DataTree: public QTreeView
//! Emited on context menu request
void contextMenuRequested(QContextMenuEvent* theEvent);
+protected slots:
+ virtual void commitData(QWidget* theEditor);
+
protected:
virtual void mouseDoubleClickEvent(QMouseEvent* theEvent);
virtual void contextMenuEvent(QContextMenuEvent* theEvent);
//! Returns list of currently selected features
QFeatureList selectedFeatures() const { return myFeaturesList; }
+ void setFeaturesSelected(const QFeatureList& theFeatures);
+
//! Returns currently selected indexes
QModelIndexList selectedIndexes() const { return myTreeView->selectionModel()->selectedIndexes(); }
XGUI_DataTree* treeView() const { return myTreeView; }
//! Activates currently selected part. Signal activePartChanged will not be sent
- void activateCurrentPart(bool toActivate);
+ void activatePart(const FeaturePtr& thePart);
+
+ void rebuildDataTree();
signals:
//! Emited when selection is changed
void onContextMenuRequested(QContextMenuEvent* theEvent);
void onLabelContextMenuRequested(const QPoint& thePnt);
+ //! Called on Edit command request
+ void onEditItem();
+
+ void onSelectionChanged();
+
private:
+ void closeDocNameEditing(bool toSave);
+
//! Internal model
XGUI_DocumentDataModel* myDocModel;
- QLabel* myActiveDocLbl;
+ QLineEdit* myActiveDocLbl;
XGUI_DataTree* myTreeView;
QFeatureList myFeaturesList;