BeforeSelectionEvent<T> class
Represents a before selection event.
@param <T> the type about to be selected
class BeforeSelectionEvent<T> extends DwtEvent { /** * Handler type. */ static EventType<BeforeSelectionHandler> TYPE = new EventType<BeforeSelectionHandler>(); /** * Fires a before selection event on all registered handlers in the handler * manager. If no such handlers exist, this method will do nothing. * * @param <T> the item type * @param source the source of the handlers * @param item the item * @return the event so that the caller can check if it was canceled, or null * if no handlers of this event type have been registered */ static BeforeSelectionEvent fire(HasBeforeSelectionHandlers source, item) { // If no handlers exist, then type can be null. if (TYPE != null) { BeforeSelectionEvent event = new BeforeSelectionEvent(); event.setItem(item); source.fireEvent(event); return event; } return null; } /** * Gets the type associated with this event. * * @return returns the handler type */ static EventType<BeforeSelectionHandler> getType() { return TYPE; } T _item; bool _canceled = false; /** * Creates a new before selection event. */ BeforeSelectionEvent() { } /** * Cancel the before selection event. * * Classes overriding this method should still call super.cancel(). */ void cancel() { _canceled = true; } // 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<BeforeSelectionHandler> getAssociatedType() { return TYPE; } /** * Gets the item. * * @return the item */ T getItem() { return _item; } /** * Has the selection event already been canceled? * * @return is canceled */ bool isCanceled() { return _canceled; } void dispatch(BeforeSelectionHandler<T> handler) { handler.onBeforeSelection(this); } /** * Sets the item. * * @param item the item */ void setItem(T item) { this._item = item; } }
Extends
IEvent<H> > DwtEvent > BeforeSelectionEvent<T>
Static Properties
EventType<BeforeSelectionHandler> TYPE #
Handler type.
static EventType<BeforeSelectionHandler> TYPE = new EventType<BeforeSelectionHandler>()
Static Methods
BeforeSelectionEvent fire(HasBeforeSelectionHandlers source, item) #
Fires a before selection event on all registered handlers in the handler manager. If no such handlers exist, this method will do nothing.
@param <T> the item type @param source the source of the handlers @param item the item @return the event so that the caller can check if it was canceled, or null
if no handlers of this event type have been registered
static BeforeSelectionEvent fire(HasBeforeSelectionHandlers source, item) { // If no handlers exist, then type can be null. if (TYPE != null) { BeforeSelectionEvent event = new BeforeSelectionEvent(); event.setItem(item); source.fireEvent(event); return event; } return null; }
EventType<BeforeSelectionHandler> getType() #
Gets the type associated with this event.
@return returns the handler type
static EventType<BeforeSelectionHandler> getType() { return TYPE; }
Constructors
new BeforeSelectionEvent() #
Creates a new before selection event.
BeforeSelectionEvent() { }
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 cancel() #
Cancel the before selection event.
Classes overriding this method should still call super.cancel().
void cancel() { _canceled = true; }
void dispatch(BeforeSelectionHandler<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(BeforeSelectionHandler<T> handler) { handler.onBeforeSelection(this); }
EventType<BeforeSelectionHandler> getAssociatedType() #
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 isCanceled() #
Has the selection event already been canceled?
@return is canceled
bool isCanceled() { return _canceled; }
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 setItem(T item) #
Sets the item.
@param item the item
void setItem(T item) { this._item = item; }
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; }