Class UIFocusEvent

All Implemented Interfaces:
IMessageBox

public class UIFocusEvent extends UIBaseEvent<UIComp>
The UI Focus Event is fired when the UI focus changes for a component, or when connected to the panel, for every child item in it.

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 an UI component.

Author:
Christopher Mindus
  • Constructor Details

    • UIFocusEvent

      public UIFocusEvent(UIComp source, UIComp 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.
    • UIFocusEvent

      public UIFocusEvent(UIComp source, UIComp 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

    • getTrigger

      public GProp<?> getTrigger()
      Gets the trigger property being the source of the event.
      Returns:
      An instance of e.g. an UIButton, UICheckBox, a VS component or null if the trigger is not a property.
    • getSource

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

      public UIComp 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 panel 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 an UI 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 BaseEvent<UIComp>