// Copyright (c) Wojciech Figat. All rights reserved. using FlaxEditor.SceneGraph; using FlaxEditor.Viewport; using FlaxEngine; using System.Collections.Generic; namespace FlaxEditor { /// /// Shared interface for scene editing utilities. /// public interface ISceneEditingContext { /// /// Gets the main or last editor viewport used for scene editing within this context. /// EditorViewport Viewport { get; } /// /// Gets the list of selected scene graph nodes in the editor context. /// List Selection { get; } /// /// Selects the specified node. /// /// The node. /// if set to true will use additive mode, otherwise will clear previous selection. void Select(SceneGraphNode node, bool additive = false); /// /// Deselects node. /// /// The node to deselect. void Deselect(SceneGraphNode node); /// /// Opends popup for renaming selected objects. /// void RenameSelection(); /// /// Deletes selected objects. /// void DeleteSelection(); /// /// Focuses selected objects. /// void FocusSelection(); /// /// Spawns the specified actor to the game (with undo). /// /// The actor. /// The parent actor. Set null as default. /// The order under the parent to put the spawned actor. /// True if automatically select the spawned actor, otherwise false. void Spawn(Actor actor, Actor parent = null, int orderInParent = -1, bool autoSelect = true); } }