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