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. Similarly, text boxes have a very different kind of selection, which represents which region of the text is being interacted with. Selection represents a generic way to get the name of the selection. The standard way to work with a selection is to have a class that inherits from a SelectionListener. From there, if we made a tree, for example, we would add that class as a listener. If the selection of that parent item changes, our class would then receive SelectionEvents, which tell us which parent item was interacted with. From there, we can request information from that item about the selection or other attributes of the component. The example shows just the selection changed part of the process.
Inherits from: Libraries.Language.Object
Actions Summary Table
|Compare(Libraries.Language.Object object)||This action compares two object hash codes and returns an integer.|
|Equals(Libraries.Language.Object object)||This action determines if two objects are equal based on their hash code values.|
|GetDisplayName()||This action gets the name that would be shown to the user.|
|GetHashCode()||This action gets the hash code for an object.|
|GetItem()||This action returns the item that contains the selection.|
|Initialize(Libraries.Interface.Item item, text displayName)||This action sets up the component with default attributes.|
|IsEmpty()||This action returns true if there is no selection.|
|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.|
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.
Object o Object t integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)
- Libraries.Language.Object: The object to compare to.
integer: The Compare result, Smaller, Equal, or Larger.
This action determines if two objects are equal based on their hash code values.
use Libraries.Language.Object use Libraries.Language.Types.Text Object o Text t boolean result = o:Equals(t)
- Libraries.Language.Object: The to be compared.
boolean: True if the hash codes are equal and false if they are not equal.
This action gets the name that would be shown to the user.
action SelectionChanged(Selection selection) output selection:GetDisplayName() end
text: The display name to be given to the user.
This action gets the hash code for an object.
Object o integer hash = o:GetHashCode()
integer: The integer hash code of the object.
This action returns the item that contains the selection. It is not the selection itself.
action SelectionChanged(Selection selection) Item theParentItem = selection:GetItem() end
Initialize(Libraries.Interface.Item item, text displayName)
This action sets up the component with default attributes.
- Libraries.Interface.Item: The parent item in the selection.
- text displayName: The name of the selected item.
This action returns true if there is no selection.
boolean: True if there is no selection.
This action sends information that the selection was changed to all listeners.
This action sets the name that would be shown to the user. It also changes the selection, triggering a SelectionEvent.
action SelectionChanged(Selection selection) selection:SetDisplayName("A new name I want to change to") end
- text name: The name to display.