ClosingEvent class
Fired just before the browser window closes or navigates to a different site.
class ClosingEvent extends DwtEvent {
/**
* The event type.
*/
static EventType<ClosingHandler> TYPE = new EventType<ClosingHandler>();
/**
* The message to display to the user to see whether they really want to
* leave the page.
*/
String _message;
EventType<ClosingHandler> getAssociatedType() {
return TYPE;
}
/**
* Get the message that will be presented to the user in a confirmation
* dialog that asks the user whether or not she wishes to navigate away from
* the page.
*
* @return the message to display to the user, or null
*/
String getMessage() {
return _message;
}
/**
* Set the message to a <code>non-null</code> value to present a
* confirmation dialog that asks the user whether or not she wishes to
* navigate away from the page. If multiple handlers set the message, the
* last message will be displayed; all others will be ignored.
*
* @param message the message to display to the user, or null
*/
void setMessage(String message) {
this._message = message;
}
void dispatch(ClosingHandler handler) {
handler.onWindowClosing(this);
}
}
Extends
IEvent<H> > DwtEvent > ClosingEvent
Static Properties
EventType<ClosingHandler> TYPE #
The event type.
static EventType<ClosingHandler> TYPE = new EventType<ClosingHandler>()
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(ClosingHandler 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(ClosingHandler handler) {
handler.onWindowClosing(this);
}
EventType<ClosingHandler> getAssociatedType() #
String getMessage() #
Get the message that will be presented to the user in a confirmation dialog that asks the user whether or not she wishes to navigate away from the page.
@return the message to display to the user, or null
String getMessage() {
return _message;
}
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 setMessage(String message) #
Set the message to a <code>non-null</code> value to present a confirmation dialog that asks the user whether or not she wishes to navigate away from the page. If multiple handlers set the message, the last message will be displayed; all others will be ignored.
@param message the message to display to the user, or null
void setMessage(String message) {
this._message = message;
}
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;
}