Skip to content

Commit f5c2dbb

Browse files
author
Antoine Lelievre
committed
Fixed example in window menu
1 parent 5ba215b commit f5c2dbb

10 files changed

Lines changed: 75 additions & 38 deletions

File tree

Assets/Examples/ConditionalGraph.asset

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ MonoBehaviour:
259259
serializedType: ConditionalProcessorView, Assembly-CSharp-Editor, Version=0.0.0.0,
260260
Culture=neutral, PublicKeyToken=null
261261
exposedParameters: []
262-
position: {x: -77, y: 470, z: 0}
263-
scale: {x: 0.43232757, y: 0.43232757, z: 1}
262+
position: {x: -1188, y: 208, z: 0}
263+
scale: {x: 0.8695652, y: 0.8695652, z: 1}
264264
references:
265265
version: 1

Assets/Examples/Editor/01_DefaultGraph/DefaultGraphWindow.cs

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,25 @@
66

77
public class DefaultGraphWindow : BaseGraphWindow
88
{
9+
BaseGraph tmpGraph;
910

10-
[MenuItem("Window/01_DefaultGraph")]
11-
public static BaseGraphWindow Open()
11+
[MenuItem("Window/01 DefaultGraph")]
12+
public static BaseGraphWindow OpenWithTmpGraph()
1213
{
13-
var graphWindow = GetWindow< DefaultGraphWindow >();
14+
var graphWindow = CreateWindow< DefaultGraphWindow >();
15+
16+
// When the graph is opened from the window, we don't save the graph to disk
17+
graphWindow.tmpGraph = ScriptableObject.CreateInstance<BaseGraph>();
18+
graphWindow.tmpGraph.hideFlags = HideFlags.HideAndDontSave;
19+
graphWindow.InitializeGraph(graphWindow.tmpGraph);
1420

1521
graphWindow.Show();
1622

1723
return graphWindow;
1824
}
1925

26+
protected override void OnDestroy() => DestroyImmediate(tmpGraph);
27+
2028
protected override void InitializeWindow(BaseGraph graph)
2129
{
2230
titleContent = new GUIContent("Default Graph");

Assets/Examples/Editor/02_CustomContextMenu/CustomContextMenuGraphWindow.cs

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,25 @@
66

77
public class CustomContextMenuGraphWindow : BaseGraphWindow
88
{
9+
BaseGraph tmpGraph;
910

10-
[MenuItem("Window/02_CustomContextMenu")]
11-
public static BaseGraphWindow Open()
11+
[MenuItem("Window/02 Custom Context Menu")]
12+
public static BaseGraphWindow OpenWithTmpGraph()
1213
{
13-
var graphWindow = GetWindow< CustomContextMenuGraphWindow >();
14+
var graphWindow = CreateWindow< CustomContextMenuGraphWindow >();
15+
16+
// When the graph is opened from the window, we don't save the graph to disk
17+
graphWindow.tmpGraph = ScriptableObject.CreateInstance<BaseGraph>();
18+
graphWindow.tmpGraph.hideFlags = HideFlags.HideAndDontSave;
19+
graphWindow.InitializeGraph(graphWindow.tmpGraph);
1420

1521
graphWindow.Show();
1622

1723
return graphWindow;
1824
}
1925

26+
protected override void OnDestroy() => DestroyImmediate(tmpGraph);
27+
2028
protected override void InitializeWindow(BaseGraph graph)
2129
{
2230
titleContent = new GUIContent("Context Menu Graph");

Assets/Examples/Editor/03_CustomToolbar/CustomToolbarGraphWindow.cs

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,25 @@
66

77
public class CustomToolbarGraphWindow : BaseGraphWindow
88
{
9+
BaseGraph tmpGraph;
910

10-
[MenuItem("Window/03_CustomContextMenu")]
11-
public static BaseGraphWindow Open()
11+
[MenuItem("Window/03 Custom Toolbar")]
12+
public static BaseGraphWindow OpenWithTmpGraph()
1213
{
13-
var graphWindow = GetWindow< CustomToolbarGraphWindow >();
14+
var graphWindow = CreateWindow< CustomToolbarGraphWindow >();
15+
16+
// When the graph is opened from the window, we don't save the graph to disk
17+
graphWindow.tmpGraph = ScriptableObject.CreateInstance<BaseGraph>();
18+
graphWindow.tmpGraph.hideFlags = HideFlags.HideAndDontSave;
19+
graphWindow.InitializeGraph(graphWindow.tmpGraph);
1420

1521
graphWindow.Show();
1622

1723
return graphWindow;
1824
}
1925

26+
protected override void OnDestroy() => DestroyImmediate(tmpGraph);
27+
2028
protected override void InitializeWindow(BaseGraph graph)
2129
{
2230
titleContent = new GUIContent("Custom Toolbar Graph");

Assets/Examples/Editor/04_ExposedProperties/ExposedPropertiesGraphWindow.cs

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,25 @@
66

77
public class ExposedPropertiesGraphWindow : BaseGraphWindow
88
{
9+
BaseGraph tmpGraph;
910

10-
[MenuItem("Window/03_CustomContextMenu")]
11-
public static BaseGraphWindow Open()
11+
[MenuItem("Window/04 Exposed Properties")]
12+
public static BaseGraphWindow OpenWithTmpGraph()
1213
{
13-
var graphWindow = GetWindow< ExposedPropertiesGraphWindow >();
14+
var graphWindow = CreateWindow< ExposedPropertiesGraphWindow >();
15+
16+
// When the graph is opened from the window, we don't save the graph to disk
17+
graphWindow.tmpGraph = ScriptableObject.CreateInstance<BaseGraph>();
18+
graphWindow.tmpGraph.hideFlags = HideFlags.HideAndDontSave;
19+
graphWindow.InitializeGraph(graphWindow.tmpGraph);
1420

1521
graphWindow.Show();
1622

1723
return graphWindow;
1824
}
1925

26+
protected override void OnDestroy() => DestroyImmediate(tmpGraph);
27+
2028
protected override void InitializeWindow(BaseGraph graph)
2129
{
2230
titleContent = new GUIContent("Properties Graph");

Assets/Examples/Editor/05_All/AllGraphWindow.cs

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,24 @@
66

77
public class AllGraphWindow : BaseGraphWindow
88
{
9-
[MenuItem("Window/03_CustomContextMenu")]
10-
public static BaseGraphWindow Open()
9+
BaseGraph tmpGraph;
10+
11+
[MenuItem("Window/05 All Combined")]
12+
public static BaseGraphWindow OpenWithTmpGraph()
1113
{
12-
var graphWindow = GetWindow< AllGraphWindow >();
14+
var graphWindow = CreateWindow< AllGraphWindow >();
15+
16+
// When the graph is opened from the window, we don't save the graph to disk
17+
graphWindow.tmpGraph = ScriptableObject.CreateInstance<BaseGraph>();
18+
graphWindow.tmpGraph.hideFlags = HideFlags.HideAndDontSave;
19+
graphWindow.InitializeGraph(graphWindow.tmpGraph);
1320

1421
graphWindow.Show();
1522

1623
return graphWindow;
1724
}
1825

19-
protected new void OnEnable()
20-
{
21-
base.OnEnable();
22-
// graphLoaded += g => Debug.Log("Load: " + g);
23-
// graphUnloaded += g => Debug.Log("Unload: " + g);
24-
}
26+
protected override void OnDestroy() => DestroyImmediate(tmpGraph);
2527

2628
protected override void InitializeWindow(BaseGraph graph)
2729
{

Assets/Examples/Editor/GraphAssetCallbacks.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public static bool OnBaseGraphOpened(int instanceID, int line)
3030

3131
if (asset != null && AssetDatabase.GetAssetPath(asset).Contains("Examples"))
3232
{
33-
AllGraphWindow.Open().InitializeGraph(asset as BaseGraph);
33+
EditorWindow.GetWindow<AllGraphWindow>().InitializeGraph(asset as BaseGraph);
3434
return true;
3535
}
3636
return false;

Assets/Examples/Editor/GraphAssetInspector.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,19 @@ protected override void CreateInspector()
1616
{
1717
base.CreateInspector();
1818

19-
root.Add(new Button(() => DefaultGraphWindow.Open().InitializeGraph(target as BaseGraph))
19+
root.Add(new Button(() => EditorWindow.GetWindow<DefaultGraphWindow>().InitializeGraph(target as BaseGraph))
2020
{
2121
text = "Open base graph window"
2222
});
23-
root.Add(new Button(() => CustomContextMenuGraphWindow.Open().InitializeGraph(target as BaseGraph))
23+
root.Add(new Button(() => EditorWindow.GetWindow<CustomContextMenuGraphWindow>().InitializeGraph(target as BaseGraph))
2424
{
2525
text = "Open custom context menu graph window"
2626
});
27-
root.Add(new Button(() => CustomToolbarGraphWindow.Open().InitializeGraph(target as BaseGraph))
27+
root.Add(new Button(() => EditorWindow.GetWindow<CustomToolbarGraphWindow>().InitializeGraph(target as BaseGraph))
2828
{
2929
text = "Open custom toolbar graph window"
3030
});
31-
root.Add(new Button(() => ExposedPropertiesGraphWindow.Open().InitializeGraph(target as BaseGraph))
31+
root.Add(new Button(() => EditorWindow.GetWindow<ExposedPropertiesGraphWindow>().InitializeGraph(target as BaseGraph))
3232
{
3333
text = "Open exposed properties graph window"
3434
});

Assets/Examples/GraphViewElementsTests.meta

Lines changed: 0 additions & 8 deletions
This file was deleted.

Assets/com.alelievr.NodeGraphProcessor/Editor/BaseGraphWindow.cs

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,10 @@ public bool isGraphLoaded
3030
public event Action< BaseGraph > graphLoaded;
3131
public event Action< BaseGraph > graphUnloaded;
3232

33-
protected void OnEnable()
33+
/// <summary>
34+
/// Called by Unity when the window is enabled / opened
35+
/// </summary>
36+
protected virtual void OnEnable()
3437
{
3538
InitializeRootView();
3639

@@ -44,11 +47,19 @@ protected void OnEnable()
4447
}
4548
}
4649

47-
protected void OnDisable()
50+
/// <summary>
51+
/// Called by Unity when the window is disabled (happens on domain reload)
52+
/// </summary>
53+
protected virtual void OnDisable()
4854
{
4955
if (graph != null && graphView != null)
5056
graphView.SaveGraphToDisk();
5157
}
58+
59+
/// <summary>
60+
/// Called by Unity when the window is closed
61+
/// </summary>
62+
protected virtual void OnDestroy() { }
5263

5364
void InitializeRootView()
5465
{

0 commit comments

Comments
 (0)