Libraries.Interface.Selections.SceneEditorSelection Documentation

A selection represents what would be interacted with if the parent is used. The general idea of selection is common across user interface elements. For example, trees have a selection, which represents the item in the tree that the user is interacting with if the tree itself has a focus. The SceneEditorSelection represents the EditorItem in an EditorLayer that the user is currently interacting with. Through events and listeners the selection gives information to the user on what they are interacting with and tells the SceneEditor class to update itself to properly show the user what is being focused.

Inherits from: Libraries.Interface.Selections.Selection, Libraries.Language.Object

Actions Documentation

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Parameters

Return

integer: The Compare result, Smaller, Equal, or Larger.

Example

Object o
Object t
integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)

Empty()

Clears the selection so no layer and item is currently being selected.

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

Example

use Libraries.Language.Object
use Libraries.Language.Types.Text
Object o
Text t
boolean result = o:Equals(t)

GetDisplayName()

This action gets the name that would be shown to the user.

Return

text: The display name to be given to the user.

Example

action SelectionChanged(Selection selection)
    output selection:GetDisplayName()
end

GetHashCode()

This action gets the hash code for an object.

Return

integer: The integer hash code of the object.

Example

Object o
integer hash = o:GetHashCode()

GetItem()

This action returns the item that contains the selection. It is not the selection itself.

Return

Libraries.Interface.Item:

Example

action SelectionChanged(Selection selection)
    Item theParentItem = selection:GetItem()
end

GetSceneEditor()

This action returns the Scene Editor object the selection is a part of

Return

Libraries.Interface.Controls.Scenes.SceneEditor:

GetSelectedItem()

Returns the currently selected layer. If no layer is selected this will return undefined.

Return

Libraries.Interface.Controls.Scenes.Items.EditorItem: The selected item

GetSelectedLayer()

Returns the currently selected layer. If no layer is selected this will return undefined.

Return

Libraries.Interface.Controls.Scenes.Layers.EditorLayer: The selected layer

Initialize(Libraries.Interface.Item item, text displayName)

This action sets up the component with default attributes.

Parameters

Initialize(Libraries.Interface.Controls.Scenes.SceneEditor controller)

This action sets up the component with default attributes.

Parameters

IsEmpty()

If no layer is currently selected than the selection is empty. Therefore, this action returns true if the selected layer is undefined.

Return

boolean: True if no layer is selected, false otherwise

IsItemSelected()

Returns true if there is an item currently being selected false otherwise.

Return

boolean: True if an item is being selected, false otherwise

IsLayerSelected()

Returns true if there is a layer currently being selected, false otherwise.

Return

boolean: True if a layer is being selected, false otherwise

ItemChanged()

Returns true only when a SelectionEvent is being processed where the item changed. After the event has been processed, this returns false.

Return

boolean:

LayerChanged()

Returns true only when a SelectionEvent is being processed where the layer changed. After the event has been processed, this returns false.

Return

boolean:

NotifySelectionListeners()

This action sends information that the selection was changed to all listeners.

SetDisplayName(text name)

This action sets the name that would be shown to the user. It also changes the selection, triggering a SelectionEvent.

Parameters

  • text name: The name to display.

Example

action SelectionChanged(Selection selection)
    selection:SetDisplayName("A new name I want to change to")
end

SetSelection(Libraries.Interface.Controls.Scenes.Layers.EditorLayer layer)

This action sets the selection to a specific EditorLayer. EditorItems are shown to the user through the layer so selecting both an item and a layer allows for telling the user what layer they are on and what specific item they are selecting.

Parameters

SetSelection(Libraries.Interface.Controls.Scenes.Layers.EditorLayer layer, Libraries.Interface.Controls.Scenes.Items.EditorItem item)

This action sets the selection for both the layer and item.

Parameters

SetSelection(Libraries.Interface.Controls.Scenes.Items.EditorItem item)

This action sets the selection to a specific editor item. The display name will be updated and the editor will update the cursor and camera to show the item if possible.

Parameters