Libraries.Interface.Selections.MenuSelection Documentation

In the case of MenuSelection, this returns a path of Menu Items, which can be traversed to learn the specific and unique path to the current menu selection. This path should be interpreted from high level to low level. For example, if we were selected on File -> Exit, then the MenuItem objects in the path would be File first and Exit second. Menus can only select one MenuItem at a time, which is a single selection.

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()

This action empties the selection path.

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

GetLastItemInPath()

This action returns the last MenuItem in the path of the selection. This is typically the "active" selection, e.g. what changes when the user uses navigation keys or what will trigger when activated via keystroke. If the selection is empty, this will return undefined.

Return

Libraries.Interface.Controls.MenuItem: The last MenuItem in the path of this selection.

GetPath()

This action gets the Path of the selection. This path should be interpreted from high level to low level. For example, if we were selected on File -> Exit, then the MenuItem objects in the path would be File first and Exit second. Menus can only select one MenuItem at a time, which is a single selection.

Return

Libraries.Containers.Array: The items in the selection.

GetPathLength()

This action returns true if there is no selection.

Return

integer: True if there is no selection.

Initialize(Libraries.Interface.Item item)

This action is used internally to set the selection owner.

Parameters

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

This action sets up the component with default attributes.

Parameters

IsEmpty()

This action returns true if there is no selection.

Return

boolean: True if there is no selection.

NotifySelectionListeners()

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

Set(Libraries.Containers.Array<Libraries.Interface.Controls.MenuItem> items)

This action is used internally to set the path on the Selection.

Parameters

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