Add Unload all but this scene option to scene context menu to unload all of the active scenes except for the selected one.

This commit is contained in:
Chandler Cox
2023-05-03 20:38:55 -05:00
parent 6d7e23f254
commit 144287ba1c
2 changed files with 43 additions and 0 deletions

View File

@@ -77,6 +77,8 @@ namespace FlaxEditor.SceneGraph.Actors
}
contextMenu.AddButton("Save scene", OnSave).LinkTooltip("Saves this scene.").Enabled = IsEdited && !Editor.IsPlayMode;
contextMenu.AddButton("Unload scene", OnUnload).LinkTooltip("Unloads this scene.").Enabled = Editor.Instance.StateMachine.CurrentState.CanChangeScene;
if (Level.ScenesCount > 1)
contextMenu.AddButton("Unload all but this scene", OnUnloadAllButSelectedScene).LinkTooltip("Unloads all of the active scenes except for the selected scene.").Enabled = Editor.Instance.StateMachine.CurrentState.CanChangeScene;
base.OnContextMenu(contextMenu);
}
@@ -95,5 +97,10 @@ namespace FlaxEditor.SceneGraph.Actors
{
Editor.Instance.Scene.CloseScene(Scene);
}
private void OnUnloadAllButSelectedScene()
{
Editor.Instance.Scene.CloseAllScenesExcept(Scene);
}
}
}