public void ShowAll() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Show All"); Stage stage = StageNavigationManager.instance.currentStage; for (int i = 0; i < stage.sceneCount; i++) { Show(stage.GetSceneAt(i), false); } }
public void Show(Scene scene) { if (!scene.IsValid()) { return; } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Show Scene"); Show(scene, true); }
public void DisablePicking(Scene scene) { if (!scene.IsValid()) { return; } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Disable Picking Scene"); DisablePicking(scene, true); }
public void ExitIsolation() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Exit Isolation"); if (IsCurrentStageIsolated()) //already isolated { RevertIsolationCurrentStage(); VisibilityChanged(); } }
private static void ToggleSelectionPicking(bool includeChildren) { bool shouldDisablePicking = true; foreach (var gameObject in Selection.gameObjects) { if (!instance.IsPickingDisabled(gameObject)) { break; } shouldDisablePicking = false; } instance.m_SelectedScenes.Clear(); if (shouldDisablePicking) { SceneHierarchyWindow.lastInteractedHierarchyWindow.GetSelectedScenes(instance.m_SelectedScenes); foreach (var scene in instance.m_SelectedScenes) { if (!instance.IsPickingDisabled(scene)) { break; } shouldDisablePicking = false; } } var undoName = includeChildren ? "Toggle Selection And Descendants Picking" : "Toggle Selection Pickable"; Undo.RecordObject(SceneVisibilityState.GetInstance(), undoName); SceneVisibilityState.SetGameObjectsPickingDisabled(Selection.gameObjects, shouldDisablePicking, includeChildren); foreach (var scene in instance.m_SelectedScenes) { if (shouldDisablePicking) { instance.DisablePicking(scene); } else { instance.EnablePicking(scene); } } EditorApplication.RepaintHierarchyWindow(); }
private static void EditorSceneManagerOnSceneOpened(Scene scene, OpenSceneMode mode) { if (mode == OpenSceneMode.Single) { SceneVisibilityState.isolation = false; } if (mode == OpenSceneMode.Additive) { //make sure added scenes are isolated when opened if main stage is isolated if (StageNavigationManager.instance.currentStage is MainStage) { Undo.ClearUndo(SceneVisibilityState.GetInstance()); } } }
public void ShowAll() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Show All"); if (StageNavigationManager.instance.currentItem.isPrefabStage) { SceneVisibilityState.ShowScene(StageNavigationManager.instance.GetCurrentPrefabStage().scene); } else { for (int i = 0; i < SceneManager.sceneCount; i++) { Show(SceneManager.GetSceneAt(i), false); } } }
public void EnablePicking(Scene scene) { if (!scene.IsValid()) { return; } if (!scene.isLoaded) { return; } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Enable Picking Scene"); EnablePickingNoUndo(scene); }
public void Hide(Scene scene) { if (!scene.IsValid()) { return; } if (!scene.isLoaded) { return; } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Hide Scene"); HideNoUndo(scene); }
public void EnableAllPicking() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Enable All Picking"); if (StageNavigationManager.instance.currentItem.isPrefabStage) { SceneVisibilityState.EnablePicking(StageNavigationManager.instance.GetCurrentPrefabStage().scene); } else { for (int i = 0; i < SceneManager.sceneCount; i++) { EnablePickingNoUndo(SceneManager.GetSceneAt(i)); } } }
internal static void ToggleSelectionPickable() { bool shouldDisablePicking = true; foreach (var gameObject in Selection.gameObjects) { if (!instance.IsPickingDisabled(gameObject)) { break; } shouldDisablePicking = false; } instance.m_SelectedScenes.Clear(); if (shouldDisablePicking) { SceneHierarchyWindow.lastInteractedHierarchyWindow.GetSelectedScenes(instance.m_SelectedScenes); foreach (var scene in instance.m_SelectedScenes) { if (!instance.IsPickingDisabled(scene)) { break; } shouldDisablePicking = false; } } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Toggle Selection Pickable"); SceneVisibilityState.SetGameObjectsPickingDisabled(Selection.gameObjects, shouldDisablePicking, false); foreach (var scene in instance.m_SelectedScenes) { if (shouldDisablePicking) { instance.DisablePicking(scene); } else { instance.EnablePicking(scene); } } }
private static void ToggleSelectionAndDescendantsVisibility() { bool shouldHide = true; foreach (var gameObject in Selection.gameObjects) { if (!instance.IsHidden(gameObject)) { break; } shouldHide = false; } instance.m_SelectedScenes.Clear(); if (shouldHide) { SceneHierarchyWindow.lastInteractedHierarchyWindow.GetSelectedScenes(instance.m_SelectedScenes); foreach (var scene in instance.m_SelectedScenes) { if (!instance.IsHidden(scene)) { break; } shouldHide = false; } } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Toggle Selection And Descendants Visibility"); SceneVisibilityState.SetGameObjectsHidden(Selection.gameObjects, shouldHide, true); foreach (var scene in instance.m_SelectedScenes) { if (shouldHide) { instance.Hide(scene); } else { instance.Show(scene); } } }
private static void EditorSceneManagerOnSceneOpened(Scene scene, OpenSceneMode mode) { if (mode == OpenSceneMode.Single) { SceneVisibilityState.isolation = false; } if (mode == OpenSceneMode.Additive) { //make sure added scenes are isolated when opened if main stage is isolated if (!StageNavigationManager.instance.currentItem.isPrefabStage) { Undo.ClearUndo(SceneVisibilityState.GetInstance()); } } instance.VisibilityChanged(); instance.PickableContentChanged(); }
private static void ToggleSelectionAndDescendantsPicking() { if (Selection.gameObjects.Length > 0) { bool shouldDisablePicking = true; foreach (var gameObject in Selection.gameObjects) { if (!instance.IsPickingDisabled(gameObject)) { break; } shouldDisablePicking = false; } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Toggle Selection And Descendants Picking"); SceneVisibilityState.SetGameObjectsPickingDisabled(Selection.gameObjects, shouldDisablePicking, true); } }
public void EnableAllPicking() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Enable All Picking"); PreviewSceneStage previewSceneStage = StageNavigationManager.instance.currentStage as PreviewSceneStage; if (previewSceneStage != null) { SceneVisibilityState.EnablePicking(previewSceneStage.scene); } else { for (int i = 0; i < SceneManager.sceneCount; i++) { EnablePickingNoUndo(SceneManager.GetSceneAt(i)); } } }
private static void ToggleSelectionAndDescendantsVisibility() { if (Selection.gameObjects.Length > 0) { bool shouldHide = true; foreach (var gameObject in Selection.gameObjects) { if (!instance.IsHidden(gameObject)) { break; } shouldHide = false; } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Toggle Selection And Descendants Visibility"); SceneVisibilityState.SetGameObjectsHidden(Selection.gameObjects, shouldHide, true); } }
internal static void ToggleSelectionPickable() { if (Selection.gameObjects.Length > 0) { bool shouldHide = true; foreach (var gameObject in Selection.gameObjects) { if (!instance.IsPickingDisabled(gameObject)) { break; } shouldHide = false; } Undo.RecordObject(SceneVisibilityState.GetInstance(), "Toggle Selection Pickable"); SceneVisibilityState.SetGameObjectsPickingDisabled(Selection.gameObjects, shouldHide, false); } }
internal void ToggleIsolateSelection() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Toggle Isolation on Selection"); if (!IsCurrentStageIsolated()) { IsolateCurrentStage(); HideAllNoUndo(); if (Selection.gameObjects.Length > 0) { SceneVisibilityState.SetGameObjectsHidden(Selection.gameObjects, false, false); } } else { RevertIsolationCurrentStage(); } }
private static void EditorSceneManagerOnSceneOpened(Scene scene, OpenSceneMode mode) { if (mode == OpenSceneMode.Single) { //force out of isolation when loading single SceneVisibilityState.mainStageIsolated = false; } if (mode == OpenSceneMode.Additive) { //make sure added scenes are isolated when opened if main stage is isolated if (!StageNavigationManager.instance.currentItem.isPrefabStage) { Undo.ClearUndo(SceneVisibilityState.GetInstance()); if (SceneVisibilityState.mainStageIsolated) { SceneVisibilityState.SetSceneIsolation(scene, true); } } } instance.VisibilityChanged(); }
public void Show(GameObject gameObject, bool includeDescendants) { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Show GameObject"); SceneVisibilityState.SetGameObjectHidden(gameObject, false, includeDescendants); }
public void ExitIsolation() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Exit Isolation"); RevertIsolationCurrentStage(); }
public void TogglePicking(GameObject gameObject, bool includeDescendants) { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Toggle Picking"); SceneVisibilityState.SetGameObjectPickingDisabled(gameObject, !SceneVisibilityState.IsGameObjectPickingDisabled(gameObject), includeDescendants); }
public void ToggleVisibility(GameObject gameObject, bool includeDescendants) { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Toggle Visibility"); SceneVisibilityState.SetGameObjectHidden(gameObject, !SceneVisibilityState.IsGameObjectHidden(gameObject), includeDescendants); }
public void EnablePicking(GameObject[] gameObjects, bool includeDescendants) { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Enable Picking GameObjects"); SceneVisibilityState.SetGameObjectsPickingDisabled(gameObjects, false, includeDescendants); }
public void Hide(GameObject[] gameObjects, bool includeDescendants) { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Hide GameObjects"); SceneVisibilityState.SetGameObjectsHidden(gameObjects, true, includeDescendants); }
public void Hide(GameObject gameObject, bool includeDescendants) { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Set GameObject Hidden"); SceneVisibilityState.SetGameObjectHidden(gameObject, true, includeDescendants); VisibilityChanged(); }
public void DisableAllPicking() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Disable All Picking"); DisableAllPickingNoUndo(); }
public void Show(GameObject[] gameObjects, bool includeDescendants) { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Show GameObjects"); SceneVisibilityState.SetGameObjectsHidden(gameObjects, false, includeDescendants); VisibilityChanged(); }
public void HideAll() { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Hide All"); HideAllNoUndo(); }
public void DisablePicking(GameObject gameObject, bool includeDescendants) { Undo.RecordObject(SceneVisibilityState.GetInstance(), "Disable Picking GameObject"); SceneVisibilityState.SetGameObjectPickingDisabled(gameObject, true, includeDescendants); }