## org.apache.batik.dom.svg12
Class XBLEventSupport

    java.lang.Object
      org.apache.batik.dom.events.EventSupport
          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(java.lang.String namespaceURI, java.lang.String type, EventListener listener, boolean useCapture, java.lang.Object group)` Registers an event listener for the given namespaced event type in the specified group.
`void` `addImplementationEventListenerNS(java.lang.String namespaceURI, java.lang.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, java.util.HashSet stoppedGroups, java.util.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(java.lang.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(java.lang.String namespaceURI, java.lang.String type, EventListener listener, boolean useCapture)` Deregisters an event listener.
`void` `removeImplementationEventListenerNS(java.lang.String namespaceURI, java.lang.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(java.lang.String namespaceURI,
                                   java.lang.String type,
                                   EventListener listener,
                                   boolean useCapture,
                                   java.lang.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(java.lang.String namespaceURI,
                                      java.lang.String type,
                                      EventListener listener,
                                      boolean useCapture)

  Deregisters an event listener.

  Overrides:
    `removeEventListenerNS` in class `EventSupport`

### addImplementationEventListenerNS

    public void addImplementationEventListenerNS(java.lang.String namespaceURI,
                                                 java.lang.String type,
                                                 EventListener listener,
                                                 boolean useCapture)

  Registers an event listener that will not be stopped by the usual XBL stopping.

### removeImplementationEventListenerNS

    public void removeImplementationEventListenerNS(java.lang.String namespaceURI,
                                                    java.lang.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,
                                                  java.util.HashSet stoppedGroups,
                                                  java.util.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(java.lang.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.