org.vectomatic.dom.svg.impl
Class DOMHelperImpl

java.lang.Object
  extended by org.vectomatic.dom.svg.impl.DOMHelperImpl
Direct Known Subclasses:
DOMHelperImplIE

public class DOMHelperImpl
extends Object

Implementation class for low-level GWT integration (mostly event dispatching)

Author:
laaglu

Field Summary
protected  OMSVGElement captureElt
           
protected static boolean eventsInitialized
           
 
Constructor Summary
DOMHelperImpl()
           
 
Method Summary
 void bindEventListener(com.google.gwt.dom.client.Element elem, String eventName)
          Makes a node sink the events emitted by the specified element
 void dispatch(com.google.gwt.dom.client.NativeEvent event, OMNode node, com.google.gwt.dom.client.Element elem)
          Central dispatching function for events emitted by DOM objects
 void dispatchCapturedEvent(com.google.gwt.dom.client.NativeEvent event, com.google.gwt.dom.client.Element elem)
          Dispatching function for events which result from a call to setCaptureElement(OMSVGElement, LoseCaptureHandler)
 boolean evaluateBooleanXPath_(com.google.gwt.dom.client.Element svgElement, String expr, XPathPrefixResolver resolver)
           
 com.google.gwt.core.client.JavaScriptObject evaluateNodeListXPath_(com.google.gwt.dom.client.Element svgElement, String expr, XPathPrefixResolver resolver)
           
 com.google.gwt.dom.client.Node evaluateNodeXPath_(com.google.gwt.dom.client.Element svgElement, String expr, XPathPrefixResolver resolver)
           
 float evaluateNumberXPath_(com.google.gwt.dom.client.Element svgElement, String expr, XPathPrefixResolver resolver)
           
 String evaluateStringXPath_(com.google.gwt.dom.client.Element svgElement, String expr, XPathPrefixResolver resolver)
           
 OMSVGElement getCaptureElement()
          Returns the element which currently captures all the events after a call to setCaptureElement(OMSVGElement, LoseCaptureHandler) or null if element is set to capture events
protected  void init()
           
protected  void initEventSystem()
          Initializes the event system.
protected  boolean isChildOf(com.google.gwt.dom.client.Node root, com.google.gwt.dom.client.Node node)
          Tests if a node is part of a DOM subtree.
 void releaseCaptureElement()
          Stops the forwarding of all events to the capturing element specified by setCaptureElement(OMSVGElement, LoseCaptureHandler)
 com.google.gwt.event.shared.HandlerRegistration setCaptureElement(OMSVGElement captureElt, com.google.gwt.event.dom.client.LoseCaptureHandler loseCaptureHandler)
          Makes the specified element capture all the events, until a call to releaseCaptureElement() terminates the capture
protected  void sinkEvents(com.google.gwt.dom.client.Element elem, String eventName)
          Activate the event listener for the specified event on an element
 void unbindEventListener(com.google.gwt.dom.client.Element elem, String eventName)
          Makes a node stop sinking the events emitted by the specified element
protected  void unsinkEvents(com.google.gwt.dom.client.Element elem, String eventName)
          Deactivate the event listener for the specified event on an element
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

eventsInitialized

protected static boolean eventsInitialized

captureElt

protected OMSVGElement captureElt
Constructor Detail

DOMHelperImpl

public DOMHelperImpl()
Method Detail

initEventSystem

protected void initEventSystem()
Initializes the event system. Positions event handlers on the window so that they can capture events early if necessary.


init

protected void init()

bindEventListener

public void bindEventListener(com.google.gwt.dom.client.Element elem,
                              String eventName)
Makes a node sink the events emitted by the specified element

Parameters:
elem - The element emitting the events
eventName - The event name

unbindEventListener

public void unbindEventListener(com.google.gwt.dom.client.Element elem,
                                String eventName)
Makes a node stop sinking the events emitted by the specified element

Parameters:
elem - The element emitting the events
eventName - The event name

getCaptureElement

public OMSVGElement getCaptureElement()
Returns the element which currently captures all the events after a call to setCaptureElement(OMSVGElement, LoseCaptureHandler) or null if element is set to capture events

Returns:
The event capturing element

setCaptureElement

public com.google.gwt.event.shared.HandlerRegistration setCaptureElement(OMSVGElement captureElt,
                                                                         com.google.gwt.event.dom.client.LoseCaptureHandler loseCaptureHandler)
Makes the specified element capture all the events, until a call to releaseCaptureElement() terminates the capture

Parameters:
captureElt - The capturing element
loseCaptureHandler - A handler which will be invoked if the element loses capture
Returns:
HandlerRegistration used to remove this handler

releaseCaptureElement

public void releaseCaptureElement()
Stops the forwarding of all events to the capturing element specified by setCaptureElement(OMSVGElement, LoseCaptureHandler)


sinkEvents

protected void sinkEvents(com.google.gwt.dom.client.Element elem,
                          String eventName)
Activate the event listener for the specified event on an element

Parameters:
elem - The object which emits events
eventName - The event name

unsinkEvents

protected void unsinkEvents(com.google.gwt.dom.client.Element elem,
                            String eventName)
Deactivate the event listener for the specified event on an element

Parameters:
elem - The object which emits events
eventName - The event name

dispatch

public void dispatch(com.google.gwt.dom.client.NativeEvent event,
                     OMNode node,
                     com.google.gwt.dom.client.Element elem)
Central dispatching function for events emitted by DOM objects

Parameters:
event - The DOM event
node - The object processing the event
elem - The object emitting the event

dispatchCapturedEvent

public void dispatchCapturedEvent(com.google.gwt.dom.client.NativeEvent event,
                                  com.google.gwt.dom.client.Element elem)
Dispatching function for events which result from a call to setCaptureElement(OMSVGElement, LoseCaptureHandler)

Parameters:
event - The DOM event
elem - The object emitting the event

isChildOf

protected boolean isChildOf(com.google.gwt.dom.client.Node root,
                            com.google.gwt.dom.client.Node node)
Tests if a node is part of a DOM subtree.

Parameters:
root - The subtree root
node - The node to be tested
Returns:
True if the node is part of the subtree, false otherwise

evaluateNodeListXPath_

public com.google.gwt.core.client.JavaScriptObject evaluateNodeListXPath_(com.google.gwt.dom.client.Element svgElement,
                                                                          String expr,
                                                                          XPathPrefixResolver resolver)

evaluateNodeXPath_

public com.google.gwt.dom.client.Node evaluateNodeXPath_(com.google.gwt.dom.client.Element svgElement,
                                                         String expr,
                                                         XPathPrefixResolver resolver)

evaluateStringXPath_

public String evaluateStringXPath_(com.google.gwt.dom.client.Element svgElement,
                                   String expr,
                                   XPathPrefixResolver resolver)

evaluateNumberXPath_

public float evaluateNumberXPath_(com.google.gwt.dom.client.Element svgElement,
                                  String expr,
                                  XPathPrefixResolver resolver)

evaluateBooleanXPath_

public boolean evaluateBooleanXPath_(com.google.gwt.dom.client.Element svgElement,
                                     String expr,
                                     XPathPrefixResolver resolver)


Copyright © 2012. All Rights Reserved.