summaryrefslogtreecommitdiffstats
path: root/Scripts/Fold/Editor
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2026-01-02 03:17:37 -0800
committeryum <yum.food.vr@gmail.com>2026-01-02 03:17:37 -0800
commit22273213986052c9464a852c7240b106bc22bebb (patch)
tree8d71a940a7102fbbe7878ca6011e99b40435c13d /Scripts/Fold/Editor
parent4e625ab92e96f71c803d2d92c5213d5e933ab116 (diff)
Fold: add graph persistence
Diffstat (limited to 'Scripts/Fold/Editor')
-rw-r--r--Scripts/Fold/Editor/FoldGraph.cs7
-rw-r--r--Scripts/Fold/Editor/FoldWindow.cs17
2 files changed, 18 insertions, 6 deletions
diff --git a/Scripts/Fold/Editor/FoldGraph.cs b/Scripts/Fold/Editor/FoldGraph.cs
new file mode 100644
index 0000000..7029fd7
--- /dev/null
+++ b/Scripts/Fold/Editor/FoldGraph.cs
@@ -0,0 +1,7 @@
+using UnityEngine;
+using GraphProcessor;
+
+[System.Serializable]
+public class FoldGraph : BaseGraph
+{
+}
diff --git a/Scripts/Fold/Editor/FoldWindow.cs b/Scripts/Fold/Editor/FoldWindow.cs
index 0203db1..69d7066 100644
--- a/Scripts/Fold/Editor/FoldWindow.cs
+++ b/Scripts/Fold/Editor/FoldWindow.cs
@@ -4,16 +4,22 @@ using GraphProcessor;
public class FoldWindow : BaseGraphWindow
{
- BaseGraph tmpGraph;
+ const string DefaultGraphPath = "Assets/FoldGraph.asset";
[MenuItem("Tools/yum_food/Fold")]
public static BaseGraphWindow Open()
{
- var graphWindow = CreateWindow<FoldWindow>();
+ var graphWindow = GetWindow<FoldWindow>();
- graphWindow.tmpGraph = ScriptableObject.CreateInstance<BaseGraph>();
- graphWindow.tmpGraph.hideFlags = HideFlags.HideAndDontSave;
- graphWindow.InitializeGraph(graphWindow.tmpGraph);
+ var graph = AssetDatabase.LoadAssetAtPath<FoldGraph>(DefaultGraphPath);
+ if (graph == null)
+ {
+ graph = ScriptableObject.CreateInstance<FoldGraph>();
+ AssetDatabase.CreateAsset(graph, DefaultGraphPath);
+ AssetDatabase.SaveAssets();
+ }
+
+ graphWindow.InitializeGraph(graph);
graphWindow.Show();
return graphWindow;
@@ -22,7 +28,6 @@ public class FoldWindow : BaseGraphWindow
protected override void OnDestroy()
{
graphView?.Dispose();
- DestroyImmediate(tmpGraph);
}
protected override void InitializeWindow(BaseGraph graph)