|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.batik.dom.events.EventSupport
The class allows registration and removal of EventListeners on an NodeEventTarget and dispatch of events to that NodeEventTarget.
NodeEventTarget
Inner Class Summary | |
static interface |
EventSupport.EventFactory
This interface represents an event factory. |
protected static class |
EventSupport.MouseEventFactory
To create a mouse event. |
protected static class |
EventSupport.MutationEventFactory
To create a mutation event. |
protected static class |
EventSupport.UIEventFactory
To create a UI event. |
Field Summary | |
protected HashTable |
bubblingListeners
The bubbling listeners table. |
protected HashTable |
capturingListeners
The capturing listeners table. |
protected static HashTable |
eventFactories
The event factories table. |
static java.lang.String |
MOUSE_EVENT_TYPE
The MouseEvent type. |
static java.lang.String |
MUTATION_EVENT_TYPE
The MutationEvent type. |
static java.lang.String |
UI_EVENT_TYPE
The UIEvent type. |
Constructor Summary | |
EventSupport()
|
Method Summary | |
void |
addEventListener(java.lang.String type,
EventListener listener,
boolean useCapture)
This method allows the registration of event listeners on the event target. |
static Event |
createEvent(java.lang.String eventType)
Creates a new Event depending on the specified parameter. |
static boolean |
dispatchEvent(NodeEventTarget target,
Event e)
This method allows the dispatch of events into the implementations event model. |
EventListenerList |
getEventListeners(java.lang.String type,
boolean useCapture)
Returns a list event listeners depending on the specified event type and phase. |
static void |
registerEventFactory(java.lang.String eventType,
EventSupport.EventFactory factory)
Registers a new EventFactory object. |
void |
removeEventListener(java.lang.String type,
EventListener listener,
boolean useCapture)
This method allows the removal of event listeners from the event target. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final java.lang.String MUTATION_EVENT_TYPE
public static final java.lang.String MOUSE_EVENT_TYPE
public static final java.lang.String UI_EVENT_TYPE
protected static HashTable eventFactories
protected HashTable capturingListeners
protected HashTable bubblingListeners
Constructor Detail |
public EventSupport()
Method Detail |
public static Event createEvent(java.lang.String eventType) throws DOMException
eventType
- The eventType
parameter specifies the
type of Event
interface to be created. If the
Event
interface specified is supported by the
implementation this method will return a new Event
of
the interface type requested. If the Event
is to be
dispatched via the dispatchEvent
method the
appropriate event init method must be called after creation in order
to initialize the Event
's values. As an example, a
user wishing to synthesize some kind of UIEvent
would
call createEvent
with the parameter "UIEvent". The
initUIEvent
method could then be called on the newly
created UIEvent
to set the specific type of UIEvent to
be dispatched and set its context information.The
createEvent
method is used in creating
Event
s when it is either inconvenient or unnecessary
for the user to create an Event
themselves. In cases
where the implementation provided Event
is
insufficient, users may supply their own Event
implementations for use with the dispatchEvent
method.Event
DOMException
- NOT_SUPPORTED_ERR: Raised if the implementation does not support the
type of Event
interface requestedpublic static void registerEventFactory(java.lang.String eventType, EventSupport.EventFactory factory)
public void addEventListener(java.lang.String type, EventListener listener, boolean useCapture)
EventListener
is added to an
EventTarget
which is currently processing an event
the new listener will not be triggered by the current event.
EventListener
s are
registered on the same EventTarget
with the same
parameters the duplicate instances are discarded. They do not
cause the EventListener
to be called twice and
since they are discarded they do not need to be removed with
the removeEventListener
method.type
- The event type for which the user is registeringlistener
- The listener
parameter takes an
interface implemented by the user which contains the methods to
be called when the event occurs.useCapture
- If true, useCapture
indicates
that the user wishes to initiate capture. After initiating
capture, all events of the specified type will be dispatched to
the registered EventListener
before being
dispatched to any EventTargets
beneath them in the
tree. Events which are bubbling upward through the tree will
not trigger an EventListener
designated to use
capture.public void removeEventListener(java.lang.String type, EventListener listener, boolean useCapture)
EventListener
is removed from
an EventTarget
while it is processing an event, it
will complete its current actions but will not be triggered
again during any later stages of event flow. EventListener
is removed from an
EventTarget
which is currently processing an event
the removed listener will still be triggered by the current
event. removeEventListener
with
arguments which do not identify any currently registered
EventListener
on the EventTarget
has
no effect.type
- Specifies the event type of the
EventListener
being removed.listener
- The EventListener
parameter
indicates the EventListener
to be removed.useCapture
- Specifies whether the
EventListener
being removed was registered as a
capturing listener or not. If a listener was registered twice,
one with capture and one without, each must be removed
separately. Removal of a capturing listener does not affect a
non-capturing version of the same listener, and vice versa.public static boolean dispatchEvent(NodeEventTarget target, Event e) throws EventException
EventTarget
on which
dispatchEvent
is called.target
- the target nodeevt
- Specifies the event type, behavior, and contextual
information to be used in processing the event.dispatchEvent
indicates whether any of the listeners which handled the event
called preventDefault
. If
preventDefault
was called the value is false, else
the value is true.EventException
- UNSPECIFIED_EVENT_TYPE_ERR: Raised if the
Event
's type was not specified by initializing
the event before dispatchEvent
was
called. Specification of the Event
's type as
null
or an empty string will also trigger this
exception.public EventListenerList getEventListeners(java.lang.String type, boolean useCapture)
type
- the event typeuseCapture
-
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |