using UnityEngine; using UnityEditor; using GraphProcessor; public class FoldWindow : BaseGraphWindow { const string GraphPath = "Assets/FoldGraph.asset"; [MenuItem("Tools/yum_food/Fold")] public static void Open() { var graph = AssetDatabase.LoadAssetAtPath(GraphPath); if (graph == null) { graph = ScriptableObject.CreateInstance(); AssetDatabase.CreateAsset(graph, GraphPath); AssetDatabase.SaveAssets(); } var w = GetWindow(); w.InitializeGraph(graph); w.Show(); } protected override void OnDestroy() => graphView?.Dispose(); protected override void InitializeWindow(BaseGraph graph) { titleContent = new GUIContent("Fold"); if (graphView == null) rootView.Add(graphView = new FoldGraphView(this)); } }