From c298b5ee537f53add2c5903a04c6984b7acb122e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Romain=20Th=C3=A9ry?= Date: Thu, 23 Apr 2020 15:08:43 +0200 Subject: [PATCH] Add virtual OnWindowFocus and OnWindowFocusLost in NodeGraphEditor(#253) --- Scripts/Editor/NodeEditorWindow.cs | 9 ++++++++- Scripts/Editor/NodeGraphEditor.cs | 6 ++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/Scripts/Editor/NodeEditorWindow.cs b/Scripts/Editor/NodeEditorWindow.cs index 4fc1136..a751722 100644 --- a/Scripts/Editor/NodeEditorWindow.cs +++ b/Scripts/Editor/NodeEditorWindow.cs @@ -77,7 +77,14 @@ namespace XNodeEditor { void OnFocus() { current = this; ValidateGraphEditor(); - if (graphEditor != null && NodeEditorPreferences.GetSettings().autoSave) AssetDatabase.SaveAssets(); + if (graphEditor != null) { + graphEditor.OnWindowFocus(); + if (NodeEditorPreferences.GetSettings().autoSave) AssetDatabase.SaveAssets(); + } + } + + void OnLostFocus() { + if (graphEditor != null) graphEditor.OnWindowFocusLost(); } [InitializeOnLoadMethod] diff --git a/Scripts/Editor/NodeGraphEditor.cs b/Scripts/Editor/NodeGraphEditor.cs index 7551e2f..12b9ba1 100644 --- a/Scripts/Editor/NodeGraphEditor.cs +++ b/Scripts/Editor/NodeGraphEditor.cs @@ -17,6 +17,12 @@ namespace XNodeEditor { /// Called when opened by NodeEditorWindow public virtual void OnOpen() { } + + /// Called when NodeEditorWindow gains focus + public virtual void OnWindowFocus() { } + + /// Called when NodeEditorWindow loses focus + public virtual void OnWindowFocusLost() { } public virtual Texture2D GetGridTexture() { return NodeEditorPreferences.GetSettings().gridTexture;