diff options
| author | yum <yum.food.vr@gmail.com> | 2026-01-02 03:17:37 -0800 |
|---|---|---|
| committer | yum <yum.food.vr@gmail.com> | 2026-01-02 03:17:37 -0800 |
| commit | 22273213986052c9464a852c7240b106bc22bebb (patch) | |
| tree | 8d71a940a7102fbbe7878ca6011e99b40435c13d | |
| parent | 4e625ab92e96f71c803d2d92c5213d5e933ab116 (diff) | |
Fold: add graph persistence
| -rw-r--r-- | Scripts/Fold/Editor/FoldGraph.cs | 7 | ||||
| -rw-r--r-- | Scripts/Fold/Editor/FoldWindow.cs | 17 |
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) |
