Class AbstractSubSuper
- java.lang.Object
-
- org.apache.batik.dom.AbstractNode
-
- org.apache.batik.dom.AbstractParentNode
-
- org.apache.batik.dom.AbstractParentChildNode
-
- org.apache.batik.dom.AbstractElement
-
- org.apache.batik.dom.AbstractElementNS
-
- org.apache.batik.dom.GenericElementNS
-
- net.sourceforge.jeuclid.elements.AbstractJEuclidElement
-
- net.sourceforge.jeuclid.elements.presentation.script.AbstractScriptElement
-
- net.sourceforge.jeuclid.elements.presentation.script.AbstractSubSuper
-
- All Implemented Interfaces:
java.io.Serializable,JEuclidElement,JEuclidNode,LayoutableNode,org.apache.batik.dom.events.NodeEventTarget,org.apache.batik.dom.ExtendedNode,org.apache.batik.dom.xbl.NodeXBL,org.apache.batik.dom.xbl.XBLManagerData,org.apache.batik.w3c.dom.ElementTraversal,org.w3c.dom.Element,org.w3c.dom.events.EventTarget,MathMLElement,MathMLPresentationElement,MathMLScriptElement,org.w3c.dom.Node
public abstract class AbstractSubSuper extends AbstractScriptElement implements MathMLScriptElement
Generic support for all elements that have a subscript or a superscript attribute.Supported elements: msub, msup, msubsup.
- Version:
- $Revision: bc1d5fde7b73 $
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class net.sourceforge.jeuclid.elements.presentation.script.AbstractScriptElement
ATTR_SUBSCRIPTSHIFT, ATTR_SUPERSCRIPTSHIFT
-
Fields inherited from class net.sourceforge.jeuclid.elements.AbstractJEuclidElement
ATTR_CLASS, ATTR_DEPRECATED_BACKGROUND, ATTR_DEPRECATED_COLOR, ATTR_DEPRECATED_FONTFAMILY, ATTR_DEPRECATED_FONTSIZE, ATTR_DEPRECATED_FONTSTYLE, ATTR_DEPRECATED_FONTWEIGHT, ATTR_HREF, ATTR_ID, ATTR_MATHBACKGROUND, ATTR_MATHCOLOR, ATTR_MATHSIZE, ATTR_MATHVARIANT, ATTR_STYLE, ATTR_XREF, TRIVIAL_SPACE_MAX, URI
-
Fields inherited from class org.apache.batik.dom.AbstractParentChildNode
nextSibling, parentNode, previousSibling
-
Fields inherited from class org.apache.batik.dom.AbstractNode
DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, EMPTY_NODE_LIST, eventSupport, managerData, ownerDocument, userData, userDataHandlers
-
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
-
-
Constructor Summary
Constructors Constructor Description AbstractSubSuper(java.lang.String qname, org.apache.batik.dom.AbstractDocument odoc)Default constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract JEuclidElementgetBase()A MathMLElement representing the base of the script.abstract JEuclidElementgetSubscript()A MathMLElement representing the subscript of the script.abstract JEuclidElementgetSuperscript()A MathMLElement representing the superscript of the script.booleanhasChildPostscripts(JEuclidElement child, LayoutContext context)returns true is the child has postscripts attached to it.protected voidlayoutStageInvariant(LayoutView view, LayoutInfo info, LayoutStage stage, LayoutContext context)Layout for elements which are stage independent.-
Methods inherited from class net.sourceforge.jeuclid.elements.presentation.script.AbstractScriptElement
getChildLayoutContext, getSubscriptshift, getSuperscriptshift, setSubscriptshift, setSuperscriptshift
-
Methods inherited from class net.sourceforge.jeuclid.elements.AbstractJEuclidElement
addMathElement, applyLocalAttributesToContext, changeHook, dispatchEvent, getChildrenToDraw, getChildrenToLayout, getClassName, getContents, getFont, getFontMetrics, getHref, getId, getIndexOfMathElement, getMathAttribute, getMathAttribute, getMathbackground, getMathcolor, getMathElement, getMathElementCount, getMathElementStyle, getMathsize, getMathvariant, getMathvariantAsVariant, getMiddleShift, getOwnerMathElement, getParent, getText, getXref, hasChildPrescripts, layoutStage1, layoutStage2, setClassName, setDefaultMathAttribute, setFakeParent, setHref, setId, setMathbackground, setMathcolor, setMathElement, setMathElementStyle, setMathsize, setMathvariant, setXref
-
Methods inherited from class org.apache.batik.dom.GenericElementNS
copyInto, deepCopyInto, deepExport, export, getNodeName, isReadonly, newNode, setNodeName, setReadonly
-
Methods inherited from class org.apache.batik.dom.AbstractElement
attrAdded, attrModified, attrRemoved, checkChildType, createAttributes, fireDOMAttrModifiedEvent, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getChildElementCount, getFirstElementChild, getIdAttribute, getLastElementChild, getNextElementSibling, getNodeType, getPreviousElementSibling, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, hasAttributes, nodeAdded, nodeToBeRemoved, normalize, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS
-
Methods inherited from class org.apache.batik.dom.AbstractParentChildNode
getNextSibling, getParentNode, getPreviousSibling, setNextSibling, setParentNode, setPreviousSibling
-
Methods inherited from class org.apache.batik.dom.AbstractParentNode
appendChild, checkAndRemove, fireDOMNodeInsertedEvent, fireDOMNodeInsertedIntoDocumentEvent, fireDOMNodeRemovedEvent, fireDOMNodeRemovedFromDocumentEvent, fireDOMSubtreeModifiedEvent, getChildNodes, getElementsByTagName, getElementsByTagNameNS, getFirstChild, getLastChild, getTextContent, hasChildNodes, insertBefore, removeChild, replaceChild
-
Methods inherited from class org.apache.batik.dom.AbstractNode
addEventListener, addEventListenerNS, cloneNode, compareDocumentPosition, compareNamedNodeMaps, compareStrings, createDOMException, fireDOMCharacterDataModifiedEvent, fireUserDataHandlers, getBaseURI, getBaseURI, getCascadedXMLBase, getCurrentDocument, getEventSupport, getFeature, getLocalName, getManagerData, getNodeValue, getOwnerDocument, getParentNodeEventTarget, getPrefix, getUserData, getXblBoundElement, getXblChildNodes, getXblDefinitions, getXblFirstChild, getXblFirstElementChild, getXblLastChild, getXblLastElementChild, getXblNextElementSibling, getXblNextSibling, getXblParentNode, getXblPreviousElementSibling, getXblPreviousSibling, getXblScopedChildNodes, getXblShadowTree, hasEventListenerNS, initializeEventSupport, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespacePrefix, lookupNamespaceURI, lookupPrefix, removeEventListener, removeEventListenerNS, setManagerData, setNodeValue, setOwnerDocument, setPrefix, setSpecified, setTextContent, setUserData, willTriggerNS
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.w3c.dom.Element
getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS
-
Methods inherited from interface org.w3c.dom.mathml.MathMLElement
getClassName, getHref, getId, getMathElementStyle, getOwnerMathElement, getXref, setClassName, setHref, setId, setMathElementStyle, setXref
-
Methods inherited from interface org.w3c.dom.mathml.MathMLScriptElement
getSubscriptshift, getSuperscriptshift, setBase, setSubscript, setSubscriptshift, setSuperscript, setSuperscriptshift
-
Methods inherited from interface org.w3c.dom.Node
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
-
-
-
-
Method Detail
-
getBase
public abstract JEuclidElement getBase()
A MathMLElement representing the base of the script. This is the first child of the element.- Specified by:
getBasein interfaceMathMLScriptElement- Returns:
- value of the base attribute.
-
getSuperscript
public abstract JEuclidElement getSuperscript()
A MathMLElement representing the superscript of the script. This is the second child of a msup or the third child of a msubsup; retrieval must return null for an msub.- Specified by:
getSuperscriptin interfaceMathMLScriptElement- Returns:
- value of the superscript attribute.
-
getSubscript
public abstract JEuclidElement getSubscript()
A MathMLElement representing the subscript of the script. This is the second child of a msub or msubsup; retrieval must return null for an msup.- Specified by:
getSubscriptin interfaceMathMLScriptElement- Returns:
- value of the subscript attribute.
-
hasChildPostscripts
public boolean hasChildPostscripts(JEuclidElement child, LayoutContext context)
returns true is the child has postscripts attached to it. In this case, there should be no extra space on the left.- Specified by:
hasChildPostscriptsin interfaceJEuclidElement- Overrides:
hasChildPostscriptsin classAbstractJEuclidElement- Parameters:
child- child to testcontext- current layout context.- Returns:
- true if there are attached postscripts
-
layoutStageInvariant
protected void layoutStageInvariant(LayoutView view, LayoutInfo info, LayoutStage stage, LayoutContext context)
Layout for elements which are stage independent.This function will layout an element which is layed out the same no matter what stage it is in. This is the case for most elements.
Notable exceptions are mo and tables.
- Overrides:
layoutStageInvariantin classAbstractJEuclidElement- Parameters:
view- View Object for this layout.info- An info object which will be filled during layout.stage- current layout stage.context- current LayoutContext.
-
-