org.apache.batik.dom.svg12
Class XBLEventSupport

java.lang.Object
  extended by org.apache.batik.dom.events.EventSupport
      extended by org.apache.batik.dom.svg12.XBLEventSupport

public class XBLEventSupport
extends EventSupport

An EventSupport class that handles XBL-specific event processing.


Field Summary
protected  HashTable bubblingImplementationListeners
          The unstoppable bubbling listeners table.
protected  HashTable capturingImplementationListeners
          The unstoppable capturing listeners table.
protected static HashTable eventTypeAliases
          Map of event types to their aliases.
 
Fields inherited from class org.apache.batik.dom.events.EventSupport
bubblingListeners, capturingListeners, node
 
Constructor Summary
XBLEventSupport(AbstractNode n)
          Creates a new XBLEventSupport object.
 
Method Summary
 void addEventListenerNS(String namespaceURI, String type, EventListener listener, boolean useCapture, Object group)
          Registers an event listener for the given namespaced event type in the specified group.
 void addImplementationEventListenerNS(String namespaceURI, String type, EventListener listener, boolean useCapture)
          Registers an event listener that will not be stopped by the usual XBL stopping.
 boolean dispatchEvent(NodeEventTarget target, Event evt)
          This method allows the dispatch of events into the implementations event model.
protected  void fireHandlerGroupEventListeners(NodeEventTarget node, AbstractEvent e, boolean useCapture, HashSet stoppedGroups, HashSet toBeStoppedGroups)
          Fires the event handlers registered on an XBL 'handlerGroup' element.
protected  void fireImplementationEventListeners(NodeEventTarget node, AbstractEvent e, boolean useCapture)
          Fires the registered implementation listeners on the given event target.
 EventListenerList getImplementationEventListeners(String type, boolean useCapture)
          Returns the implementation listneers.
protected  AbstractEvent[] getRetargettedEvents(NodeEventTarget target, NodeEventTarget[] ancestors, AbstractEvent e)
          Returns an array of Event objects to be used for each event target in the event flow.
protected  boolean isSingleScopeEvent(Event evt)
          Returns whether the given event should be stopped once it crosses a shadow scope boundary.
 void moveEventListeners(EventSupport other)
          Moves all of the event listeners from this EventSupport object to the given EventSupport object.
 void removeEventListenerNS(String namespaceURI, String type, EventListener listener, boolean useCapture)
          Deregisters an event listener.
 void removeImplementationEventListenerNS(String namespaceURI, String type, EventListener listener, boolean useCapture)
          Unregisters an implementation event listener.
protected  AbstractEvent retargetEvent(AbstractEvent e, NodeEventTarget target)
          Clones and retargets the given event.
 
Methods inherited from class org.apache.batik.dom.events.EventSupport
addEventListener, createEventException, fireEventListeners, fireEventListeners, getAncestors, getEventListeners, getUltimateOriginalEvent, hasEventListenerNS, preventDefault, removeEventListener, runDefaultActions, setCurrentTarget, setEventPhase, setTarget, stopImmediatePropagation, stopPropagation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

capturingImplementationListeners

protected HashTable capturingImplementationListeners
The unstoppable capturing listeners table.


bubblingImplementationListeners

protected HashTable bubblingImplementationListeners
The unstoppable bubbling listeners table.


eventTypeAliases

protected static HashTable eventTypeAliases
Map of event types to their aliases.

Constructor Detail

XBLEventSupport

public XBLEventSupport(AbstractNode n)
Creates a new XBLEventSupport object.

Method Detail

addEventListenerNS

public void addEventListenerNS(String namespaceURI,
                               String type,
                               EventListener listener,
                               boolean useCapture,
                               Object group)
Registers an event listener for the given namespaced event type in the specified group.

Overrides:
addEventListenerNS in class EventSupport

removeEventListenerNS

public void removeEventListenerNS(String namespaceURI,
                                  String type,
                                  EventListener listener,
                                  boolean useCapture)
Deregisters an event listener.

Overrides:
removeEventListenerNS in class EventSupport

addImplementationEventListenerNS

public void addImplementationEventListenerNS(String namespaceURI,
                                             String type,
                                             EventListener listener,
                                             boolean useCapture)
Registers an event listener that will not be stopped by the usual XBL stopping.


removeImplementationEventListenerNS

public void removeImplementationEventListenerNS(String namespaceURI,
                                                String type,
                                                EventListener listener,
                                                boolean useCapture)
Unregisters an implementation event listener.


moveEventListeners

public void moveEventListeners(EventSupport other)
Moves all of the event listeners from this EventSupport object to the given EventSupport object. Used by AbstractDocument.renameNode(Node,String,String).

Overrides:
moveEventListeners in class EventSupport

dispatchEvent

public boolean dispatchEvent(NodeEventTarget target,
                             Event evt)
                      throws EventException
This method allows the dispatch of events into the implementations event model. Events dispatched in this manner will have the same capturing and bubbling behavior as events dispatched directly by the implementation. The target of the event is the EventTarget on which dispatchEvent is called.

Overrides:
dispatchEvent in class EventSupport
Parameters:
target - the target node
evt - Specifies the event type, behavior, and contextual information to be used in processing the event.
Returns:
The return value of 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.
Throws:
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.

fireHandlerGroupEventListeners

protected void fireHandlerGroupEventListeners(NodeEventTarget node,
                                              AbstractEvent e,
                                              boolean useCapture,
                                              HashSet stoppedGroups,
                                              HashSet toBeStoppedGroups)
Fires the event handlers registered on an XBL 'handlerGroup' element.


isSingleScopeEvent

protected boolean isSingleScopeEvent(Event evt)
Returns whether the given event should be stopped once it crosses a shadow scope boundary.


getRetargettedEvents

protected AbstractEvent[] getRetargettedEvents(NodeEventTarget target,
                                               NodeEventTarget[] ancestors,
                                               AbstractEvent e)
Returns an array of Event objects to be used for each event target in the event flow. The Event objects are retargetted if an sXBL shadow scope is crossed and the event is not a DOM mutation event.


retargetEvent

protected AbstractEvent retargetEvent(AbstractEvent e,
                                      NodeEventTarget target)
Clones and retargets the given event.


getImplementationEventListeners

public EventListenerList getImplementationEventListeners(String type,
                                                         boolean useCapture)
Returns the implementation listneers.


fireImplementationEventListeners

protected void fireImplementationEventListeners(NodeEventTarget node,
                                                AbstractEvent e,
                                                boolean useCapture)
Fires the registered implementation listeners on the given event target.



Copyright © 2008 Apache Software Foundation. All Rights Reserved.