refactored copy/paste code for new serializers

Vastly improves code quality and reusability
This commit is contained in:
itsmattkc
2022-01-12 16:34:40 -08:00
parent 4ecce20c35
commit 576ea8e81f
18 changed files with 346 additions and 269 deletions
+4 -4
View File
@@ -127,8 +127,8 @@ protected:
virtual bool eventFilter(QObject *object, QEvent *event) override;
virtual void CopyNodesToClipboardInternal(QXmlStreamWriter *writer, const QVector<Node*> &nodes, void* userdata) override;
virtual void PasteNodesFromClipboardInternal(QXmlStreamReader *reader, XMLNodeData &xml_node_data, void* userdata) override;
virtual void CopyNodesToClipboardCallback(const QVector<Node *> &nodes, ProjectSerializer::SaveData *data, void* userdata) override;
virtual void PasteNodesToClipboardCallback(const QVector<Node*> &nodes, const ProjectSerializer::LoadData &ldata, void *userdata) override;
virtual void changeEvent(QEvent *e) override;
@@ -155,8 +155,6 @@ private:
void PositionNewEdge(const QPoint &pos);
void PasteNodesInternal(const QVector<Node*> &duplicate_nodes = QVector<Node *>());
void AddContext(Node *n);
void RemoveContext(Node *n);
@@ -169,6 +167,8 @@ private:
void EndEdgeDrag(bool cancel = false);
void PostPaste(const QVector<Node*> &new_nodes, const Node::PositionMap &map);
NodeViewMiniMap *minimap_;
struct AttachedItem {