/// <summary> /// Called when a new scene is opened /// </summary> /// <param name="state">Opened scene's edit state</param> private void OnSceneOpened( SceneEditState state ) { state.SelectedObjects.ObjectSelected += ObjectSelected; state.SelectedObjects.ObjectDeselected += ObjectDeselected; }
/// <summary> /// Called when a scene is opened for editing /// </summary> /// <param name="state">Edit state of the new scene</param> protected virtual void OnSceneOpened( SceneEditState state ) { state.UndoStack.ActionAdded += UndoStackChanged; state.UndoStack.ActionUndone += UndoStackChanged; state.UndoStack.ActionRedone += UndoStackChanged; // Get all viewers to show the new scene foreach ( Viewer viewer in display.Viewers ) { viewer.Renderable = state.EditorScene; } }
/// <summary> /// Called when a scene is about to be closed /// </summary> /// <param name="state">Closing scene's edit state</param> private void OnSceneClosed( SceneEditState state ) { state.SelectedObjects.ObjectSelected -= ObjectSelected; state.SelectedObjects.ObjectDeselected -= ObjectDeselected; }
/// <summary> /// Called prior to a scene being closed for editing /// </summary> /// <param name="state">Edit state of the closing scene</param> protected virtual void OnSceneClosed( SceneEditState state ) { state.UndoStack.ActionAdded -= UndoStackChanged; state.UndoStack.ActionUndone -= UndoStackChanged; state.UndoStack.ActionRedone -= UndoStackChanged; // Get all viewers to stop showing stuff foreach ( Viewer viewer in display.Viewers ) { viewer.Renderable = null; } }