Class VSFocusEvent

All Implemented Interfaces:
IMessageBox

public class VSFocusEvent extends VSBaseEventWithTrigger<IVSComponent>
The VirtualSpace Focus Event is fired when the VirtualSpace focus changes for a component.

A focus change is two events: a focus lost to the component that had the focus, then a focus gained to the component that receives it. In each, getSource() is the component the event is about and getOpposite() is the other one: for a focus gained the component that lost the focus, for a focus lost the component that gains it. The opposite is null when the focus came from nothing (the first focus) or goes to nothing, and when the other focus component is not a VirtualSpace component.

Author:
Christopher Mindus
  • Constructor Details

    • VSFocusEvent

      public VSFocusEvent(IVSComponent source, IVSComponent opposite, boolean isFocusGained)
      Constructs the event for a change without a trigger source.
      Parameters:
      source - The source.
      opposite - The opposite component: the one losing focus for a focus gained, the one gaining focus for a focus lost, null for none.
      isFocusGained - Flag indicating focus was gained.
      Throws:
      NullPointerException - If the source is null.
    • VSFocusEvent

      public VSFocusEvent(IVSComponent source, IVSComponent opposite, boolean isFocusGained, GProp<?> trigger)
      Constructs the event for a change event with a property being the trigger source, e.g. an UIButton or UICheckBox.
      Parameters:
      source - The source.
      opposite - The opposite component: the one losing focus for a focus gained, the one gaining focus for a focus lost, null for none.
      isFocusGained - Flag indicating focus was gained.
      trigger - The trigger property.
  • Method Details

    • getSource

      public IVSComponent getSource()
      Gets the VirtualSpace item that is the source of the event, i.e. the item that gains or loses focus.
      Overrides:
      getSource in class BaseEvent<IVSComponent>
      Returns:
      The VSComponent gaining or losing focus. If this event is fired to a listener on the VirtualSpace, this value can be null when e.g. no one receives focus.
    • getOpposite

      public IVSComponent getOpposite()
      Gets the opposite component for the focus operation, i.e. if the operation is FocusGained, the opposite component is the one losing focus, and if the operation is FocusLost, the opposite component is the component gaining focus.

      The opposite may belong to another VirtualSpace than the source, and may already be disposed of (the focus moves away from a component that is disposed of).

      Returns:
      The opposite component, or null when the focus came from nothing or goes to nothing, or from or to a focus component that is not a VirtualSpace component.
    • isFocusGained

      public boolean isFocusGained()
      Returns if this is the focus gained operation.
      Returns:
      true if this is focus gained, false for focus lost.
    • isFocusLost

      public boolean isFocusLost()
      Returns if this is the focus lost operation.
      Returns:
      true if this is focus lost, false for focus gained.
    • paramString

      protected String paramString()
      Gets the parameter string.
      Overrides:
      paramString in class VSBaseEventWithTrigger<IVSComponent>