Polyphase Game Engine
Loading...
Searching...
No Matches
GraphClipboard.h
Go to the documentation of this file.
1#pragma once
2
3#include <string>
4#include <vector>
5
6#include "Maths.h"
8
9class NodeGraph;
10class NodeGraphAsset;
11class Stream;
12
14{
15 // Serialize selected nodes + internal links to a stream
16 void SerializeSelection(NodeGraph& graph, const std::vector<GraphNodeId>& selectedNodeIds, Stream& outStream);
17
18 // Deserialize nodes/links from a stream into the target graph, remapping IDs
19 void DeserializeIntoGraph(NodeGraph& targetGraph, Stream& inStream, const glm::vec2& pastePosition, NodeGraphAsset* ownerAsset);
20
21 // Copy selected nodes to system clipboard (base64 encoded)
22 void CopyToClipboard(NodeGraph& graph, const std::vector<GraphNodeId>& selectedNodeIds);
23
24 // Paste from system clipboard into graph
25 void PasteFromClipboard(NodeGraph& targetGraph, const glm::vec2& pastePosition, NodeGraphAsset* ownerAsset);
26
27 // Export selected nodes to a file
28 void ExportToFile(NodeGraph& graph, const std::vector<GraphNodeId>& selectedNodeIds, const std::string& filePath);
29
30 // Import nodes from a file into the graph
31 void ImportFromFile(NodeGraph& targetGraph, const std::string& filePath, const glm::vec2& pastePosition, NodeGraphAsset* ownerAsset);
32}
Definition NodeGraphAsset.h:12
Definition NodeGraph.h:17
Definition Stream.h:21
Definition GraphClipboard.h:14
void PasteFromClipboard(NodeGraph &targetGraph, const glm::vec2 &pastePosition, NodeGraphAsset *ownerAsset)
Definition GraphClipboard.cpp:306
void DeserializeIntoGraph(NodeGraph &targetGraph, Stream &inStream, const glm::vec2 &pastePosition, NodeGraphAsset *ownerAsset)
Definition GraphClipboard.cpp:138
void CopyToClipboard(NodeGraph &graph, const std::vector< GraphNodeId > &selectedNodeIds)
Definition GraphClipboard.cpp:288
void ExportToFile(NodeGraph &graph, const std::vector< GraphNodeId > &selectedNodeIds, const std::string &filePath)
Definition GraphClipboard.cpp:328
void ImportFromFile(NodeGraph &targetGraph, const std::string &filePath, const glm::vec2 &pastePosition, NodeGraphAsset *ownerAsset)
Definition GraphClipboard.cpp:338
void SerializeSelection(NodeGraph &graph, const std::vector< GraphNodeId > &selectedNodeIds, Stream &outStream)
Definition GraphClipboard.cpp:88