org.apache.batik.bridge.svg12
Class ContentManager

java.lang.Object
  extended by org.apache.batik.bridge.svg12.ContentManager

public class ContentManager
extends Object

A class to manage all XBL content elements in a shadow tree.


Nested Class Summary
protected  class ContentManager.ContentElementDOMAttrModifiedEventListener
          The DOM EventListener invoked when an attribute is modified, for content elements.
protected  class ContentManager.DOMAttrModifiedEventListener
          The DOM EventListener invoked when an attribute is modified.
protected  class ContentManager.DOMNodeInsertedEventListener
          The DOM EventListener invoked when a node is added.
protected  class ContentManager.DOMNodeRemovedEventListener
          The DOM EventListener invoked when a node is removed.
protected  class ContentManager.DOMSubtreeModifiedEventListener
          The DOM EventListener invoked when a subtree has changed.
protected  class ContentManager.ShadowTreeNodeInsertedListener
          The DOM EventListener invoked when a node in the shadow tree has been inserted.
protected  class ContentManager.ShadowTreeNodeRemovedListener
          The DOM EventListener invoked when a node in the shadow tree has been removed.
protected  class ContentManager.ShadowTreeSubtreeModifiedListener
          The DOM EventListener invoked when a subtree of the shadow tree has changed.
 
Field Summary
protected  Element boundElement
          The bound element that owns the shadow tree.
protected  ContentManager.ContentElementDOMAttrModifiedEventListener contentElementDomAttrModifiedEventListener
          DOMAttrModified listener for content elements.
protected  LinkedList contentElementList
          List of content elements.
protected  ContentManager.DOMAttrModifiedEventListener domAttrModifiedEventListener
          DOMAttrModified listener for bound element children.
protected  ContentManager.DOMNodeInsertedEventListener domNodeInsertedEventListener
          DOMNodeInserted listener for bound element children.
protected  ContentManager.DOMNodeRemovedEventListener domNodeRemovedEventListener
          DOMNodeRemoved listener for bound element children.
protected  ContentManager.DOMSubtreeModifiedEventListener domSubtreeModifiedEventListener
          DOMSubtreeModified listener for shadow tree nodes.
protected  HashMap listeners
          Map of XBLContentElement objects to EventListenerList objects.
protected  Node removedNode
          The recently removed node from the shadow tree.
protected  HashMap selectedNodes
          Map of content elements to a list of nodes that were selected by that content element.
protected  HashMap selectors
          Map of content elements to selectors.
protected  XBLOMShadowTreeElement shadowTree
          The shadow tree whose content elements this object is managing.
protected  ContentManager.ShadowTreeNodeInsertedListener shadowTreeNodeInsertedListener
          DOMNodeInserted listener for content elements in the shadow tree.
protected  ContentManager.ShadowTreeNodeRemovedListener shadowTreeNodeRemovedListener
          DOMNodeRemoved listener for content elements in the shadow tree.
protected  ContentManager.ShadowTreeSubtreeModifiedListener shadowTreeSubtreeModifiedListener
          DOMSubtreeModified listener for content elements in the shadow tree.
protected  DefaultXBLManager xblManager
          The XBL manager.
 
Constructor Summary
ContentManager(XBLOMShadowTreeElement s, XBLManager xm)
          Creates a new ContentManager object.
 
Method Summary
 void addContentSelectionChangedListener(XBLOMContentElement e, ContentSelectionChangedListener l)
          Adds the specified ContentSelectionChangedListener to the listener list.
protected  void dispatchContentSelectionChangedEvent(XBLOMContentElement e)
          Dispatches the ContentSelectionChangedEvent to the registered listeners.
 void dispose()
          Disposes this ContentManager.
protected  XBLOMContentElement getContentElement(Node n)
          Returns the content element that selected a given node.
protected  String getContentSelectorLanguage(Element e)
          Returns the selector language to be used for the given xbl:content element.
 NodeList getSelectedContent(XBLOMContentElement e)
          Returns a NodeList of the content that was selected by the given content element.
 void removeContentSelectionChangedListener(XBLOMContentElement e, ContentSelectionChangedListener l)
          Removes the specified ContentSelectionChangedListener from the listener list.
protected  void update(boolean first)
          Updates all content elements.
protected  boolean update(boolean first, Node n)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

shadowTree

protected XBLOMShadowTreeElement shadowTree
The shadow tree whose content elements this object is managing.


boundElement

protected Element boundElement
The bound element that owns the shadow tree.


xblManager

protected DefaultXBLManager xblManager
The XBL manager.


selectors

protected HashMap selectors
Map of content elements to selectors. [XBLContentElement, AbstractContentSelector]


selectedNodes

protected HashMap selectedNodes
Map of content elements to a list of nodes that were selected by that content element. [XBLContentElement, NodeList]


contentElementList

protected LinkedList contentElementList
List of content elements. [XBLContentElement]


removedNode

protected Node removedNode
The recently removed node from the shadow tree.


listeners

protected HashMap listeners
Map of XBLContentElement objects to EventListenerList objects.


contentElementDomAttrModifiedEventListener

protected ContentManager.ContentElementDOMAttrModifiedEventListener contentElementDomAttrModifiedEventListener
DOMAttrModified listener for content elements.


domAttrModifiedEventListener

protected ContentManager.DOMAttrModifiedEventListener domAttrModifiedEventListener
DOMAttrModified listener for bound element children.


domNodeInsertedEventListener

protected ContentManager.DOMNodeInsertedEventListener domNodeInsertedEventListener
DOMNodeInserted listener for bound element children.


domNodeRemovedEventListener

protected ContentManager.DOMNodeRemovedEventListener domNodeRemovedEventListener
DOMNodeRemoved listener for bound element children.


domSubtreeModifiedEventListener

protected ContentManager.DOMSubtreeModifiedEventListener domSubtreeModifiedEventListener
DOMSubtreeModified listener for shadow tree nodes.


shadowTreeNodeInsertedListener

protected ContentManager.ShadowTreeNodeInsertedListener shadowTreeNodeInsertedListener
DOMNodeInserted listener for content elements in the shadow tree.


shadowTreeNodeRemovedListener

protected ContentManager.ShadowTreeNodeRemovedListener shadowTreeNodeRemovedListener
DOMNodeRemoved listener for content elements in the shadow tree.


shadowTreeSubtreeModifiedListener

protected ContentManager.ShadowTreeSubtreeModifiedListener shadowTreeSubtreeModifiedListener
DOMSubtreeModified listener for content elements in the shadow tree.

Constructor Detail

ContentManager

public ContentManager(XBLOMShadowTreeElement s,
                      XBLManager xm)
Creates a new ContentManager object.

Parameters:
s - the shadow tree element whose content elements this object will be managing
xm - the XBLManager for this document
Method Detail

dispose

public void dispose()
Disposes this ContentManager.


getSelectedContent

public NodeList getSelectedContent(XBLOMContentElement e)
Returns a NodeList of the content that was selected by the given content element.


getContentElement

protected XBLOMContentElement getContentElement(Node n)
Returns the content element that selected a given node.


addContentSelectionChangedListener

public void addContentSelectionChangedListener(XBLOMContentElement e,
                                               ContentSelectionChangedListener l)
Adds the specified ContentSelectionChangedListener to the listener list.


removeContentSelectionChangedListener

public void removeContentSelectionChangedListener(XBLOMContentElement e,
                                                  ContentSelectionChangedListener l)
Removes the specified ContentSelectionChangedListener from the listener list.


dispatchContentSelectionChangedEvent

protected void dispatchContentSelectionChangedEvent(XBLOMContentElement e)
Dispatches the ContentSelectionChangedEvent to the registered listeners.


update

protected void update(boolean first)
Updates all content elements.

Parameters:
first - Whether this is the first update for this ContentManager.

update

protected boolean update(boolean first,
                         Node n)

getContentSelectorLanguage

protected String getContentSelectorLanguage(Element e)
Returns the selector language to be used for the given xbl:content element. This will look at the xbl:content element and the document element for an attribute batik:selectorLanguage.



Copyright © 2008 Apache Software Foundation. All Rights Reserved.