|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.batik.bridge.BridgeContext
This class represents a context used by the various bridges and the builder. A bridge context is associated to a particular document and cannot be reused. The context encapsulates the dynamic bindings between DOM elements and GVT nodes, graphic contexts such as a GraphicsNodeRenderContext, and the different objects required by the GVT builder to interpret a SVG DOM tree such as the current viewport or the user agent.
Inner Class Summary | |
protected class |
BridgeContext.CSSPropertiesChangedListener
The CSSEngineListener invoked when CSS properties are modified on a particular element. |
protected class |
BridgeContext.DOMAttrModifiedEventListener
The DOM EventListener invoked when an attribute is modified. |
protected class |
BridgeContext.DOMCharacterDataModifiedListener
The DOM EventListener invoked when a character data is changed. |
protected class |
BridgeContext.DOMNodeInsertedEventListener
The DOM EventListener invoked when a node is added. |
protected class |
BridgeContext.DOMNodeRemovedEventListener
The DOM EventListener invoked when a node is removed. |
protected static class |
BridgeContext.EventListenerMememto
A class used to store an EventListener added to the DOM. |
Field Summary | |
protected CSSEngineListener |
cssPropertiesChangedListener
The CSSEngine listener to receive CSSEngineEvent. |
protected Document |
document
The document is bridge context is dedicated to. |
protected DocumentLoader |
documentLoader
The document loader used to load/create Document. |
protected java.awt.geom.Dimension2D |
documentSize
The size of the document. |
protected EventListener |
domAttrModifiedEventListener
The DOM EventListener to receive 'DOMAttrModified' event. |
protected EventListener |
domCharacterDataModifiedListener
The DOM EventListener to receive 'DOMCharacterDataModified' event. |
protected EventListener |
domNodeInsertedEventListener
The DOM EventListener to receive 'DOMNodeInserted' event. |
protected EventListener |
domNodeRemovedEventListener
The DOM EventListener to receive 'DOMNodeRemoved' event. |
protected boolean |
dynamic
Whether the bridge must support dynamic features. |
protected java.util.HashMap |
elementNodeMap
Binding Map: key is an SVG Element - value is a GraphicsNode |
protected java.util.List |
eventListenerList
The list of all EventListener attached by bridges that need to be removed on a dispose() call. |
protected static java.util.List |
extensions
|
protected FocusManager |
focusManager
The EventListener that is responsible of managing DOM focus event. |
protected GVTBuilder |
gvtBuilder
The GVT builder that might be used to create a GVT subtree. |
protected java.util.Map |
interpreterMap
The interpreter cache per document. |
protected InterpreterPool |
interpreterPool
The interpreter pool used to handle scripts. |
protected java.util.HashMap |
namespaceURIMap
Bridge Map: Keys are namespace URI - values are HashMap (with keys are local name and values are a Bridge instance). |
protected java.util.HashMap |
nodeElementMap
Binding Map: key is GraphicsNode - value is a SVG Element. |
protected TextPainter |
textPainter
The text painter to use. |
protected UpdateManager |
updateManager
The update manager. |
protected UserAgent |
userAgent
The user agent. |
protected java.util.Map |
viewportMap
The viewports. |
protected java.util.List |
viewportStack
The viewport stack. |
Fields inherited from interface org.apache.batik.bridge.ErrorConstants |
ERR_ATTRIBUTE_MISSING, ERR_ATTRIBUTE_VALUE_MALFORMED, ERR_CSS_LENGTH_NEGATIVE, ERR_CSS_URI_BAD_TARGET, ERR_LENGTH_NEGATIVE, ERR_URI_BAD_TARGET, ERR_URI_IMAGE_INVALID, ERR_URI_IO, ERR_URI_MALFORMED, ERR_URI_REFERENCE_A_DOCUMENT, ERR_URI_UNSECURE, ERR_XLINK_HREF_CIRCULAR_DEPENDENCIES, MSG_BROKEN_LINK_TITLE |
Constructor Summary | |
protected |
BridgeContext()
Constructs a new empty bridge context. |
|
BridgeContext(UserAgent userAgent)
Constructs a new bridge context. |
|
BridgeContext(UserAgent userAgent,
DocumentLoader loader)
Constructs a new bridge context. |
|
BridgeContext(UserAgent userAgent,
InterpreterPool interpreterPool,
DocumentLoader documentLoader)
Constructs a new bridge context. |
Method Summary | |
void |
addDOMListeners()
Adds EventListeners to the DOM and CSSEngineListener to the CSSEngine to handle any modifications on the DOM tree or style properties and update the GVT tree in response. |
void |
bind(Element element,
GraphicsNode node)
Binds the specified GraphicsNode to the specified Element. |
void |
checkLoadExternalResource(ParsedURL resourceURL,
ParsedURL docURL)
This method throws a SecurityException if the resource found at url and referenced from docURL should not be loaded. |
void |
closeViewport(Element e)
Closes the viewport associated to the specified element. |
void |
dispose()
Disposes this BridgeContext. |
float |
getBlockHeight(Element elt)
Returns the height of the block which directly contains the given element. |
float |
getBlockWidth(Element elt)
Returns the width of the block which directly contains the given element. |
float |
getBolderFontWeight(float f)
Returns a bolder font-weight. |
Bridge |
getBridge(Element element)
Returns the bridge associated with the specified element. |
Bridge |
getBridge(java.lang.String namespaceURI,
java.lang.String localName)
Returns the bridge associated with the element type |
static java.util.List |
getBridgeExtensions()
Returns the extensions supported by this bridge context. |
protected static BridgeUpdateHandler |
getBridgeUpdateHandler(Node node)
Returns the SVGContext associated to the specified Node or null if any. |
Document |
getDocument()
Returns the document this bridge context is dedicated to. |
DocumentLoader |
getDocumentLoader()
Returns the document loader used to load external documents. |
java.awt.geom.Dimension2D |
getDocumentSize()
Returns the actual size of the document or null if the document has not been built yet. |
Element |
getElement(GraphicsNode node)
Returns the Element associated to the specified GraphicsNode or null if any. |
FocusManager |
getFocusManager()
Returns the focus manager. |
java.util.Map |
getFontFamilyMap()
Returns the map of font families |
GraphicsNode |
getGraphicsNode(Element element)
Returns the GraphicsNode associated to the specified Element or null if any. |
GVTBuilder |
getGVTBuilder()
Returns the GVT builder that is currently used to build the GVT tree. |
Interpreter |
getInterpreter(java.lang.String language)
Returns a Interpreter for the specified language. |
InterpreterPool |
getInterpreterPool()
Returns the interpreter pool used to handle scripts. |
float |
getLighterFontWeight(float f)
Returns a lighter font-weight. |
float |
getMediumFontSize()
Returns the medium font size. |
float |
getPixelToMillimeter()
Returns the size of a px CSS unit in millimeters. |
float |
getPixelUnitToMillimeter()
Returns the size of a px CSS unit in millimeters. |
Element |
getReferencedElement(Element e,
java.lang.String uri)
Returns the element referenced by the specified element by the specified uri. |
protected static SVGContext |
getSVGContext(Node node)
Returns the SVGContext associated to the specified Node or null if any. |
Value |
getSystemColor(java.lang.String ident)
Returns the Value corresponding to the given system color. |
TextPainter |
getTextPainter()
Returns the text painter that will be used be text nodes. |
UpdateManager |
getUpdateManager()
Returns the update manager, if the bridge supports dynamic features. |
UserAgent |
getUserAgent()
Returns the user agent of this bridge context. |
Viewport |
getViewport(Element e)
Returns the viewport of the specified element. |
boolean |
hasGraphicsNodeBridge(Element element)
Returns true if the specified element has a GraphicsNodeBridge associated to it, false otherwise. |
protected void |
initializeDocument(Document document)
Initializes the given document. |
boolean |
isDynamic()
Returns true if the document is dynamic, false otherwise. |
void |
openViewport(Element e,
Viewport viewport)
Starts a new viewport from the specified element. |
void |
putBridge(Bridge bridge)
Associates the specified Bridge object with it's namespace URI and local name. |
void |
putBridge(java.lang.String namespaceURI,
java.lang.String localName,
Bridge bridge)
Associates the specified Bridge object with the specified namespace URI and local name. |
static void |
registerSVGBridges(BridgeContext ctx)
Registers the bridges to handle SVG 1.0 elements. |
void |
removeBridge(java.lang.String namespaceURI,
java.lang.String localName)
Removes the Bridge object associated to the specified namespace URI and local name. |
protected void |
setDocument(Document document)
Sets the document this bridge context is dedicated to, to the specified document. |
protected void |
setDocumentLoader(DocumentLoader newDocumentLoader)
Sets the document loader used to load external documents. |
protected void |
setDocumentSize(java.awt.geom.Dimension2D d)
Sets the size of the document to the specified dimension. |
void |
setDynamic(boolean b)
Sets the document as a dynamic document. |
protected void |
setFontFamilyMap(java.util.Map fontFamilyMap)
Sets the map of font families to the specified value. |
protected void |
setGVTBuilder(GVTBuilder gvtBuilder)
Sets the GVT builder that uses this context. |
protected void |
setInterpreterPool(InterpreterPool interpreterPool)
Sets the interpreter pool used to handle scripts to the specified interpreter pool. |
void |
setTextPainter(TextPainter textPainter)
Sets the text painter that will be used by text nodes. |
protected void |
setUpdateManager(UpdateManager um)
Sets the update manager. |
protected void |
setUserAgent(UserAgent userAgent)
Sets the user agent to the specified user agent. |
protected void |
storeEventListener(EventTarget t,
java.lang.String s,
EventListener l,
boolean b)
Adds to the eventListenerList the specified event listener registration. |
void |
unbind(Element element)
Removes the binding of the specified Element. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected Document document
protected GVTBuilder gvtBuilder
protected java.util.Map interpreterMap
protected java.util.Map viewportMap
protected java.util.List viewportStack
protected UserAgent userAgent
protected java.util.HashMap elementNodeMap
protected java.util.HashMap nodeElementMap
protected java.util.HashMap namespaceURIMap
protected InterpreterPool interpreterPool
protected DocumentLoader documentLoader
protected java.awt.geom.Dimension2D documentSize
protected TextPainter textPainter
protected boolean dynamic
protected UpdateManager updateManager
protected java.util.List eventListenerList
protected EventListener domCharacterDataModifiedListener
protected EventListener domAttrModifiedEventListener
protected EventListener domNodeInsertedEventListener
protected EventListener domNodeRemovedEventListener
protected CSSEngineListener cssPropertiesChangedListener
protected FocusManager focusManager
protected static java.util.List extensions
Constructor Detail |
protected BridgeContext()
public BridgeContext(UserAgent userAgent)
userAgent
- the user agentpublic BridgeContext(UserAgent userAgent, DocumentLoader loader)
userAgent
- the user agentdocumentLoader
- document loaderpublic BridgeContext(UserAgent userAgent, InterpreterPool interpreterPool, DocumentLoader documentLoader)
userAgent
- the user agentinterpreterPool
- the interpreter pooldocumentLoader
- document loaderMethod Detail |
protected void initializeDocument(Document document)
public void setTextPainter(TextPainter textPainter)
textPainter
- the text painter for text nodespublic TextPainter getTextPainter()
public Document getDocument()
protected void setDocument(Document document)
document
- the documentpublic java.util.Map getFontFamilyMap()
protected void setFontFamilyMap(java.util.Map fontFamilyMap)
fontFamilyMap
- the map of font familiespublic UserAgent getUserAgent()
protected void setUserAgent(UserAgent userAgent)
userAgent
- the user agentpublic GVTBuilder getGVTBuilder()
protected void setGVTBuilder(GVTBuilder gvtBuilder)
public InterpreterPool getInterpreterPool()
public FocusManager getFocusManager()
protected void setInterpreterPool(InterpreterPool interpreterPool)
interpreterPool
- the interpreter poolpublic Interpreter getInterpreter(java.lang.String language)
language
- the scripting languagepublic DocumentLoader getDocumentLoader()
protected void setDocumentLoader(DocumentLoader newDocumentLoader)
newDocumentLoader
- the new document loaderpublic java.awt.geom.Dimension2D getDocumentSize()
protected void setDocumentSize(java.awt.geom.Dimension2D d)
d
- the actual size of the SVG documentpublic boolean isDynamic()
public void setDynamic(boolean b)
b
- the document statepublic UpdateManager getUpdateManager()
protected void setUpdateManager(UpdateManager um)
public Element getReferencedElement(Element e, java.lang.String uri)
e
- the element referencinguri
- the uri of the referenced elementpublic Viewport getViewport(Element e)
e
- the element interested in its viewportpublic void openViewport(Element e, Viewport viewport)
e
- the element that defines a new viewportviewport
- the viewport of the elementpublic void closeViewport(Element e)
e
- the element that closes its viewportpublic void bind(Element element, GraphicsNode node)
element
- the element to bind to the specified graphics nodenode
- the graphics node to bind to the specified elementpublic void unbind(Element element)
element
- the element to unbindpublic GraphicsNode getGraphicsNode(Element element)
element
- the element associated to the graphics node to returnpublic Element getElement(GraphicsNode node)
node
- the graphics node associated to the element to returnpublic Bridge getBridge(Element element)
element
- the elementpublic boolean hasGraphicsNodeBridge(Element element)
element
- the elementpublic Bridge getBridge(java.lang.String namespaceURI, java.lang.String localName)
nameSpaceURI
- namespace of the requested elementlocalName
- element's local namepublic void putBridge(java.lang.String namespaceURI, java.lang.String localName, Bridge bridge)
namespaceURI
- the namespace URIlocalName
- the local namebridge
- the bridge that manages the elementpublic void putBridge(Bridge bridge)
bridge
- the bridge that manages the elementpublic void removeBridge(java.lang.String namespaceURI, java.lang.String localName)
namespaceURI
- the namespace URIlocalName
- the local namepublic void addDOMListeners()
protected void storeEventListener(EventTarget t, java.lang.String s, EventListener l, boolean b)
public void dispose()
protected static SVGContext getSVGContext(Node node)
protected static BridgeUpdateHandler getBridgeUpdateHandler(Node node)
public Value getSystemColor(java.lang.String ident)
getSystemColor
in interface CSSContext
public float getLighterFontWeight(float f)
getLighterFontWeight
in interface CSSContext
public float getBolderFontWeight(float f)
getBolderFontWeight
in interface CSSContext
public float getPixelUnitToMillimeter()
getPixelUnitToMillimeter
in interface CSSContext
public float getPixelToMillimeter()
getPixelToMillimeter
in interface CSSContext
public float getMediumFontSize()
getMediumFontSize
in interface CSSContext
public float getBlockWidth(Element elt)
getBlockWidth
in interface CSSContext
public float getBlockHeight(Element elt)
getBlockHeight
in interface CSSContext
public void checkLoadExternalResource(ParsedURL resourceURL, ParsedURL docURL) throws java.lang.SecurityException
checkLoadExternalResource
in interface CSSContext
scriptURL
- url for the script, as defined in
the script's xlink:href attribute. If that
attribute was empty, then this parameter should
be nulldocURL
- url for the document into which the
script was found.public static void registerSVGBridges(BridgeContext ctx)
ctx
- the bridge context to initializepublic static java.util.List getBridgeExtensions()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |