summaryrefslogtreecommitdiff
path: root/src/libs/modelinglib/qmt/document_controller/documentcontroller.h
diff options
context:
space:
mode:
authorJochen Becher <jochen_becher@gmx.de>2018-01-07 20:31:02 +0100
committerJochen Becher <jochen_becher@gmx.de>2018-01-10 15:39:45 +0000
commit4d99f47974a5afaecffba354a58fe897ffb9f9c3 (patch)
tree370c333d92e362fad88f8688059a057ce391d969 /src/libs/modelinglib/qmt/document_controller/documentcontroller.h
parentbcc550a4e25121c836ce5f6c83a80bcfa9973548 (diff)
downloadqt-creator-4d99f47974a5afaecffba354a58fe897ffb9f9c3.tar.gz
ModelEditor: Implement shared clipboard between all open model-editors
Change-Id: Id2eb6f78f8aa1a698a49d35db6cfceab14a38e0b Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Diffstat (limited to 'src/libs/modelinglib/qmt/document_controller/documentcontroller.h')
-rw-r--r--src/libs/modelinglib/qmt/document_controller/documentcontroller.h21
1 files changed, 8 insertions, 13 deletions
diff --git a/src/libs/modelinglib/qmt/document_controller/documentcontroller.h b/src/libs/modelinglib/qmt/document_controller/documentcontroller.h
index 6b4eea9676..e6e0f9dca6 100644
--- a/src/libs/modelinglib/qmt/document_controller/documentcontroller.h
+++ b/src/libs/modelinglib/qmt/document_controller/documentcontroller.h
@@ -27,12 +27,12 @@
#include <QObject>
#include "qmt/infrastructure/qmt_global.h"
+#include "qmt/model_controller/modelcontroller.h"
namespace qmt {
class ProjectController;
class UndoController;
-class ModelController;
class DiagramController;
class DiagramSceneController;
class StyleController;
@@ -49,6 +49,7 @@ class MDiagram;
class MCanvasDiagram;
class MContainer;
class DContainer;
+class DReferences;
class MSelection;
class MObject;
@@ -61,8 +62,6 @@ public:
signals:
void changed();
- void modelClipboardChanged(bool isEmpty);
- void diagramClipboardChanged(bool isEmpty);
public:
ProjectController *projectController() const { return m_projectController; }
@@ -78,17 +77,15 @@ public:
DiagramsManager *diagramsManager() const { return m_diagramsManager; }
SceneInspector *sceneInspector() const { return m_sceneInspector; }
- bool isModelClipboardEmpty() const;
- bool isDiagramClipboardEmpty() const;
bool hasDiagramSelection(const qmt::MDiagram *diagram) const;
- void cutFromModel(const MSelection &selection);
- void cutFromDiagram(MDiagram *diagram);
- void copyFromModel(const MSelection &selection);
- void copyFromDiagram(const MDiagram *diagram);
+ MContainer cutFromModel(const MSelection &selection);
+ DContainer cutFromDiagram(MDiagram *diagram);
+ MContainer copyFromModel(const MSelection &selection);
+ DContainer copyFromDiagram(const MDiagram *diagram);
void copyDiagram(const MDiagram *diagram);
- void pasteIntoModel(MObject *modelObject);
- void pasteIntoDiagram(MDiagram *diagram);
+ void pasteIntoModel(MObject *modelObject, const MReferences &container, ModelController::PasteOption option);
+ void pasteIntoDiagram(MDiagram *diagram, const DReferences &container);
void deleteFromModel(const MSelection &selection);
void deleteFromDiagram(MDiagram *diagram);
void removeFromDiagram(MDiagram *diagram);
@@ -118,8 +115,6 @@ private:
SortedTreeModel *m_sortedTreeModel = nullptr;
DiagramsManager *m_diagramsManager = nullptr;
SceneInspector *m_sceneInspector = nullptr;
- QScopedPointer<MContainer> m_modelClipboard;
- QScopedPointer<DContainer> m_diagramClipboard;
};
} // namespace qmt