Votorola

Package votorola.g.web.gwt.event

Handling GWT events.

See: Description

Package votorola.g.web.gwt.event Description

Handling GWT events.

Using a collection as an event source (CAES)

When a HashMap or AbstractList itself is the event source, then events are not dispatched (GWT 2.4 devmode, production mode not tested). Traced (at least in the case of the HashMap) to SimpleEventBus getHandlerList(), where sourceMap.get(source) returns a null list of handlers. This is strange because sourceMap.toString shows the list is there (first entry in sourceMap) and the equivalent line in ensureHandlerList() returns a non-null list earlier when handlers are registered. Maybe a collection works as a key when it's the only key, but fails later when other keys are added?

The user manual says adding a DOCTYPE will enable named entities, but do not add it. Firefox and Chrome will still complain that the template is unreadable owing to undefined entities (not sure why). Instead use numeric entities.

Event class hierarchy

Here is an outline of the most important classes:

    * Event
         * GWTEvent
             - these (excepting DomEvent) are synthetic ("logical")
               and have no native counterparts
             * DomEvent
                 - wraps a NativeEvent
     * NativeEvent
         * Event

Scheduler execution order

Testing indicates that (A) Scheduler executes commands in two groups based on scheduling mode: 1) "finally" commands and then 2) "deferred" and "entry" commands. Further (B) the commands within each of the two groups are executed in the order requested. The grouping together of "deferred" and "entry" (A2), and the ordering behaviour within groups (B) are undocumented in the API. Consider using this warning wherever your code depends on them:
    "scheduling order assumption" (quoted, without a line break)
See Also:
Using the GWT scheduler
Votorola