SelectionEvent<T> class
Represents a selection event.
@param <T> the type being selected
class SelectionEvent<T> extends DwtEvent { /** * Handler type. */ static EventType<SelectionHandler> TYPE = new EventType<SelectionHandler>(); /** * Fires a selection event on all registered handlers in the handler * manager.If no such handlers exist, this method will do nothing. * * @param <T> the selected item type * @param source the source of the handlers * @param selectedItem the selected item */ static void fire(HasSelectionHandlers source, selectedItem) { if (TYPE != null) { SelectionEvent event = new SelectionEvent(selectedItem); source.fireEvent(event); } } /** * Gets the type associated with this event. * * @return returns the handler type */ static EventType<SelectionHandler> getType() { return TYPE; } T _selectedItem; /** * Creates a new selection event. * * @param selectedItem selected item */ SelectionEvent(T selectedItem) { this._selectedItem = selectedItem; } // The instance knows its BeforeSelectionHandler is of type I, but the TYPE // field itself does not, so we have to do an unsafe cast here. EventType<SelectionHandler<T>> getAssociatedType() { return TYPE; } /** * Gets the selected item. * * @return the selected item */ T getSelectedItem() { return _selectedItem; } void dispatch(SelectionHandler<T> handler) { handler.onSelection(this); } }
Extends
IEvent<H> > DwtEvent > SelectionEvent<T>
Static Properties
EventType<SelectionHandler> TYPE #
Handler type.
static EventType<SelectionHandler> TYPE = new EventType<SelectionHandler>()
Static Methods
void fire(HasSelectionHandlers source, selectedItem) #
Fires a selection event on all registered handlers in the handler manager.If no such handlers exist, this method will do nothing.
@param <T> the selected item type @param source the source of the handlers @param selectedItem the selected item
static void fire(HasSelectionHandlers source, selectedItem) { if (TYPE != null) { SelectionEvent event = new SelectionEvent(selectedItem); source.fireEvent(event); } }
EventType<SelectionHandler> getType() #
Gets the type associated with this event.
@return returns the handler type
static EventType<SelectionHandler> getType() { return TYPE; }
Constructors
Methods
void assertLive() #
Asserts that the event still should be accessed. All events are considered to be "dead" after their original handler manager finishes firing them. An event can be revived by calling {@link GwtEvent#revive()}.
void assertLive() { assert (!_dead) ; //: "This event has already finished being processed by its original handler manager, so you can no longer access it"; }
void dispatch(SelectionHandler<T> handler) #
Implemented by subclasses to invoke their handlers in a type safe
manner. Intended to be called by EventBus#fireEvent(Event)
or
EventBus#fireEventFromSource(Event, Object)
.
@param handler handler @see EventBus#dispatchEvent(Event, Object)
void dispatch(SelectionHandler<T> handler) { handler.onSelection(this); }
EventType<SelectionHandler<T>> getAssociatedType() #
T getSelectedItem() #
Gets the selected item.
@return the selected item
T getSelectedItem() { return _selectedItem; }
Object getSource() #
Returns the source for this event. The type and meaning of the source is
arbitrary, and is most useful as a secondary key for handler registration.
(See EventBus#addHandlerToSource
, which allows a handler to
register for events of a particular type, tied to a particular source.)
Note that the source is actually set at dispatch time, e.g. via
EventBus#fireEventFromSource(Event, Object)
.
@return object representing the source of this event
Object getSource() { assertLive(); return super.getSource(); }
bool isLive() #
Is the event current live?
@return whether the event is live
bool isLive() { return !_dead; }
void kill() #
Kill the event. After the event has been killed, users cannot really on its values or functions being available.
void kill() { _dead = true; setSource(null); }
void overrideSource(Object source) #
void overrideSource(Object source) { super.setSource(source); }
void revive() #
Revives the event. Used when recycling event instances.
void revive() { _dead = false; setSource(null); }
void setSource(source) #
Set the source that triggered this event. Intended to be called by the EventBus during dispatch.
@param source the source of this event. @see EventBus#fireEventFromSource(Event, Object) @see EventBus#setSourceOfEvent(Event, Object)
void setSource(dynamic source) { this._source = source; }