net.sourceforge.jeuclid.elements.presentation.script
Class AbstractSubSuper
java.lang.Object
net.sourceforge.jeuclid.dom.AbstractPartialNodeImpl
net.sourceforge.jeuclid.dom.AbstractPartialElementImpl
net.sourceforge.jeuclid.dom.AbstractChangeTrackingElement
net.sourceforge.jeuclid.elements.AbstractJEuclidElement
net.sourceforge.jeuclid.elements.presentation.script.AbstractScriptElement
net.sourceforge.jeuclid.elements.presentation.script.AbstractSubSuper
- All Implemented Interfaces:
- ChangeTrackingInterface, DisplayableNode, JEuclidElement, JEuclidNode, Element, MathMLElement, MathMLPresentationElement, MathMLScriptElement, Node
- Direct Known Subclasses:
- Msub, Msubsup, Msup
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: 310 $
- Author:
- Max Berger
| Fields inherited from class net.sourceforge.jeuclid.elements.AbstractJEuclidElement |
ALIGN_AXIS, ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_TOP, 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 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 |
| Methods inherited from class net.sourceforge.jeuclid.elements.AbstractJEuclidElement |
addMathElement, addText, calculateAscentHeight, calculateDescentHeight, calculateHeight, calculateWidth, changeHook, debug, getAbsoluteScriptLevel, getAscentHeight, getBackgroundColor, getClassName, getContents, getDescentHeight, getFont, getFontMetrics, getFontsizeInPoint, getForegroundColor, getGlobalLineCorrector, getHeight, getHref, getId, getIndexOfMathElement, getInheritedScriptlevel, getMathAttribute, getMathbackground, getMathBase, getMathcolor, getMathElement, getMathElementCount, getMathElementStyle, getMathsize, getMathsizeInPoint, getMathvariant, getMathvariantAsVariant, getMiddleShift, getOwnerMathElement, getPaintedPosX, getPaintedPosY, getParent, getScriptlevelForChild, getScriptSizeMultiplier, getText, getWidth, getXCenter, getXref, hasChildPrescripts, isCalculatingSize, isChildBlock, paint, recalculateSize, setCalculatingSize, setClassName, setDefaultMathAttribute, setFakeParent, setGlobalLineCorrector, setHref, setId, setMathAttributes, setMathbackground, setMathBase, setMathcolor, setMathElement, setMathElementStyle, setMathsize, setMathvariant, setScriptSizeMultiplier, setXref |
| Methods inherited from class net.sourceforge.jeuclid.dom.AbstractPartialElementImpl |
getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getElementsByTagName, getElementsByTagNameNS, getLocalName, getNodeName, getNodeType, getSchemaTypeInfo, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS, toString |
| Methods inherited from class net.sourceforge.jeuclid.dom.AbstractPartialNodeImpl |
cloneNode, compareDocumentPosition, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getNamespaceURI, getNextSibling, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, setNodeValue, setPrefix, setUserData |
| 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.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.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 |
AbstractSubSuper
public AbstractSubSuper(MathBase base)
- Default constructor.
- Parameters:
base - MathBase to link to.
getBase
public abstract JEuclidElement getBase()
- A MathMLElement representing the base of the script. This is the first
child of the element.
- Specified by:
getBase in interface MathMLScriptElement
- 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:
getSuperscript in interface MathMLScriptElement
- 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:
getSubscript in interface MathMLScriptElement
- Returns:
- value of the subscript attribute.
getSuperBaseLineShift
protected float getSuperBaseLineShift(Graphics2D g)
- Retrieve the amount of pts by which the baseline of the super element
is shifted.
- Parameters:
g - Graphics context to use
- Returns:
- baseline shift for super elements
getSubBaseLineShift
protected float getSubBaseLineShift(Graphics2D g)
- Retrieve the amount of pts by which the baseline of the sub element is
shifted.
- Parameters:
g - Graphics context to use
- Returns:
- baseline shift for super elements
caclulateAscentHeightWithSuper
protected float caclulateAscentHeightWithSuper(Graphics2D g)
- Calculate the ascent height, taking a super element into account.
- Parameters:
g - Graphics context to use
- Returns:
- ascent height
caclulateDescentHeightWithSub
protected float caclulateDescentHeightWithSub(Graphics2D g)
- Calculate the descent height, taking a sub element into account.
- Parameters:
g - Graphics context to use
- Returns:
- descent height
hasChildPostscripts
public boolean hasChildPostscripts(JEuclidElement child)
- returns true is the child has postscripts attached to it. In this case,
there should be no extra space on the left.
- Specified by:
hasChildPostscripts in interface JEuclidElement- Overrides:
hasChildPostscripts in class AbstractJEuclidElement
- Parameters:
child - child to test
- Returns:
- true if there are attached postscripts
Copyright © 2002-2008 The JEuclid project. All Rights Reserved.