Add missing event unregister for foliage/terrain tabs

This commit is contained in:
Wojtek Figat
2021-01-11 15:13:47 +01:00
parent 75b8e0a0f2
commit a664e27772
2 changed files with 29 additions and 7 deletions

View File

@@ -100,7 +100,7 @@ namespace FlaxEditor.Tools.Foliage
public FoliageTab(SpriteHandle icon, Editor editor)
: base(string.Empty, icon)
{
Level.SceneLoaded += this.OnSceneLoaded;
Level.SceneLoaded += OnSceneLoaded;
Editor = editor;
Editor.SceneEditing.SelectionChanged += OnSelectionChanged;
@@ -152,7 +152,7 @@ namespace FlaxEditor.Tools.Foliage
{
_createNewFoliage.Enabled = true;
Level.SceneUnloaded += this.OnSceneUnloaded;
Level.SceneUnloaded += OnSceneUnloaded;
Level.SceneLoaded -= OnSceneLoaded;
}
@@ -161,7 +161,7 @@ namespace FlaxEditor.Tools.Foliage
_createNewFoliage.Enabled = false;
Level.SceneLoaded += OnSceneLoaded;
Level.SceneUnloaded -= this.OnSceneUnloaded;
Level.SceneUnloaded -= OnSceneUnloaded;
}
private void OnSelected(Tab tab)
@@ -267,5 +267,16 @@ namespace FlaxEditor.Tools.Foliage
{
SelectedFoliageTypesChanged?.Invoke();
}
/// <inheritdoc />
public override void OnDestroy()
{
if (_createNewFoliage.Enabled)
Level.SceneUnloaded -= OnSceneUnloaded;
else
Level.SceneLoaded -= OnSceneLoaded;
base.OnDestroy();
}
}
}