Salome HOME
projects
/
modules
/
shaper.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make undo/redo lists stored/restored and managed correctly
[modules/shaper.git]
/
src
/
XGUI
/
XGUI_ObjectsBrowser.h
diff --git
a/src/XGUI/XGUI_ObjectsBrowser.h
b/src/XGUI/XGUI_ObjectsBrowser.h
index c5149fdd909435768d6f6954604590ac63ffd49a..93cc131be4f458eb27428306fca6400e2696549f 100644
(file)
--- a/
src/XGUI/XGUI_ObjectsBrowser.h
+++ b/
src/XGUI/XGUI_ObjectsBrowser.h
@@
-1,3
+1,5
@@
+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
+
#ifndef XGUI_ObjectsBrowser_H
#define XGUI_ObjectsBrowser_H
#ifndef XGUI_ObjectsBrowser_H
#define XGUI_ObjectsBrowser_H
@@
-5,6
+7,7
@@
#include <ModuleBase_Definitions.h>
#include <ModelAPI_Object.h>
#include <ModelAPI_ResultPart.h>
#include <ModuleBase_Definitions.h>
#include <ModelAPI_Object.h>
#include <ModelAPI_ResultPart.h>
+#include <ModelAPI_Events.h>
#include <QWidget>
#include <QTreeView>
#include <QWidget>
#include <QTreeView>
@@
-12,34
+15,51
@@
class XGUI_DocumentDataModel;
class QLineEdit;
class XGUI_DocumentDataModel;
class QLineEdit;
+/**
+* \ingroup GUI
+* Implementation of Data Tree object for Object Browser
+*/
class XGUI_DataTree : public QTreeView
{
Q_OBJECT
public:
class XGUI_DataTree : public QTreeView
{
Q_OBJECT
public:
+ /// Constructor
+ /// \param theParent a parent widget
XGUI_DataTree(QWidget* theParent);
virtual ~XGUI_DataTree();
//! Returns list of currently selected objects
XGUI_DataTree(QWidget* theParent);
virtual ~XGUI_DataTree();
//! Returns list of currently selected objects
- Q
List<ObjectPtr>
selectedObjects() const
+ Q
ObjectPtrList
selectedObjects() const
{
return mySelectedData;
}
{
return mySelectedData;
}
+ /// Returns current data model
XGUI_DocumentDataModel* dataModel() const;
signals:
//! Emited when selection is changed
void selectionChanged();
XGUI_DocumentDataModel* dataModel() const;
signals:
//! Emited when selection is changed
void selectionChanged();
+
+ //! Emited when active part changed
void activePartChanged(ObjectPtr thePart);
//! Emited on context menu request
void contextMenuRequested(QContextMenuEvent* theEvent);
void activePartChanged(ObjectPtr thePart);
//! Emited on context menu request
void contextMenuRequested(QContextMenuEvent* theEvent);
+public slots:
+ /// Clear content of data tree
+ virtual void clear();
+
protected slots:
protected slots:
+ /// Commit modified data (used for renaming of objects)
virtual void commitData(QWidget* theEditor);
protected:
virtual void commitData(QWidget* theEditor);
protected:
+ /// Redefinition of virtual method
virtual void mouseDoubleClickEvent(QMouseEvent* theEvent);
virtual void mouseDoubleClickEvent(QMouseEvent* theEvent);
+
+ /// Redefinition of virtual method
virtual void contextMenuEvent(QContextMenuEvent* theEvent);
private slots:
virtual void contextMenuEvent(QContextMenuEvent* theEvent);
private slots:
@@
-48,7
+68,7
@@
signals:
private:
//! List of currently selected data
private:
//! List of currently selected data
- Q
List<ObjectPtr>
mySelectedData;
+ Q
ObjectPtrList
mySelectedData;
};
/**\class XGUI_ObjectsBrowser
};
/**\class XGUI_ObjectsBrowser
@@
-59,6
+79,8
@@
class XGUI_EXPORT XGUI_ObjectsBrowser : public QWidget
{
Q_OBJECT
public:
{
Q_OBJECT
public:
+ /// Constructor
+ /// \param theParent a parent widget
XGUI_ObjectsBrowser(QWidget* theParent);
virtual ~XGUI_ObjectsBrowser();
XGUI_ObjectsBrowser(QWidget* theParent);
virtual ~XGUI_ObjectsBrowser();
@@
-69,12
+91,14
@@
Q_OBJECT
}
//! Returns list of currently selected objects
}
//! Returns list of currently selected objects
- Q
List<ObjectPtr>
selectedObjects() const
+ Q
ObjectPtrList
selectedObjects() const
{
return myObjectsList;
}
{
return myObjectsList;
}
- void setObjectsSelected(const QList<ObjectPtr>& theObjects);
+ /// Set selected list of objects
+ /// \param theObjects list of objects to select
+ void setObjectsSelected(const QObjectPtrList& theObjects);
//! Returns currently selected indexes
QModelIndexList selectedIndexes() const
//! Returns currently selected indexes
QModelIndexList selectedIndexes() const
@@
-91,8
+115,16
@@
Q_OBJECT
//! Activates currently selected part. Signal activePartChanged will not be sent
void activatePart(const ResultPartPtr& thePart);
//! Activates currently selected part. Signal activePartChanged will not be sent
void activatePart(const ResultPartPtr& thePart);
+ /// Rebuild data tree
void rebuildDataTree();
void rebuildDataTree();
+ /// Process application event
+ /// \param theMessage an event message
+ void processEvent(const std::shared_ptr<Events_Message>& theMessage);
+
+ /// Resets the object browser into initial state
+ void clearContent();
+
signals:
//! Emited when selection is changed
void selectionChanged();
signals:
//! Emited when selection is changed
void selectionChanged();
@@
-104,16
+136,26
@@
signals:
void contextMenuRequested(QContextMenuEvent* theEvent);
protected:
void contextMenuRequested(QContextMenuEvent* theEvent);
protected:
+ /// Redefinition of virtual method
virtual bool eventFilter(QObject* obj, QEvent* theEvent);
private slots:
virtual bool eventFilter(QObject* obj, QEvent* theEvent);
private slots:
+ /// Activate part
+ /// \param thePart a part to activate
void onActivePartChanged(ObjectPtr thePart);
void onActivePartChanged(ObjectPtr thePart);
+
+ /// Show context menu
+ /// \param theEvent a context menu event
void onContextMenuRequested(QContextMenuEvent* theEvent);
void onContextMenuRequested(QContextMenuEvent* theEvent);
+
+ /// Show context menu on upper label
+ /// \param thePnt a position of context menu
void onLabelContextMenuRequested(const QPoint& thePnt);
//! Called on Edit command request
void onEditItem();
void onLabelContextMenuRequested(const QPoint& thePnt);
//! Called on Edit command request
void onEditItem();
+ /// Process selection changed event
void onSelectionChanged();
private:
void onSelectionChanged();
private:
@@
-125,7
+167,7
@@
signals:
QLineEdit* myActiveDocLbl;
XGUI_DataTree* myTreeView;
QLineEdit* myActiveDocLbl;
XGUI_DataTree* myTreeView;
- Q
List<ObjectPtr>
myObjectsList;
+ Q
ObjectPtrList
myObjectsList;
};
#endif
};
#endif