Class CalculatedStyle

java.lang.Object
org.xhtmlrenderer.css.style.CalculatedStyle
Direct Known Subclasses:
EmptyStyle

public class CalculatedStyle extends Object
A set of properties that apply to a single Element, derived from all matched properties following the rules for CSS cascade, inheritance, importance, specificity and sequence. A derived style is just like a style but (presumably) has additional information that allows relative properties to be assigned values, e.g. font attributes. Property values are fully resolved when this style is created. A property retrieved by name should always have only one value in this class (e.g. one-one map). Any methods to retrieve property values from an instance of this class require a valid org.xhtmlrenderer.layout.Context be given to it, for some cases of property resolution. Generally, a programmer will not use this class directly, but will retrieve properties using a StyleReference implementation.
Author:
Torbj�rn Gannholm, Patrick Wright
  • Field Details

  • Method Details

    • deriveStyle

      public CalculatedStyle deriveStyle(CascadedStyle matched)
      derives a child style from this style.

      depends on the ability to return the identical CascadedStyle each time a child style is needed

      Parameters:
      matched - the CascadedStyle to apply
      Returns:
      The derived child style
    • countAssigned

      public int countAssigned()
    • getParent

      public CalculatedStyle getParent()
      Returns the parent style.
      Returns:
      Returns the parent style
    • toString

      public String toString()
      Converts to a String representation of the object.
      Overrides:
      toString in class Object
      Returns:
      The borderWidth value
    • asColor

      public FSColor asColor(CSSName cssName)
    • asFloat

      public float asFloat(CSSName cssName)
    • asString

      public String asString(CSSName cssName)
    • asStringArray

      public String[] asStringArray(CSSName cssName)
    • hasAbsoluteUnit

      public boolean hasAbsoluteUnit(CSSName cssName)
    • isIdent

      public boolean isIdent(CSSName cssName, IdentValue val)
      Gets the ident attribute of the CalculatedStyle object
      Parameters:
      cssName - PARAM
      val - PARAM
      Returns:
      The ident value
    • getIdent

      public IdentValue getIdent(CSSName cssName)
      Gets the ident attribute of the CalculatedStyle object
      Parameters:
      cssName - PARAM
      Returns:
      The ident value
    • getColor

      public FSColor getColor()
      Convenience property accessor; returns a Color initialized with the foreground color Uses the actual value (computed actual value) for this element.
      Returns:
      The color value
    • getBackgroundColor

      public FSColor getBackgroundColor()
      Convenience property accessor; returns a Color initialized with the background color value; Uses the actual value (computed actual value) for this element.
      Returns:
      The backgroundColor value
    • getBackgroundPosition

      public BackgroundPosition getBackgroundPosition()
    • getCounterReset

      public List getCounterReset()
    • getCounterIncrement

      public List getCounterIncrement()
    • getBorder

      public BorderPropertySet getBorder(CssContext ctx)
    • getFont

      public FontSpecification getFont(CssContext ctx)
    • getFloatPropertyProportionalTo

      public float getFloatPropertyProportionalTo(CSSName cssName, float baseValue, CssContext ctx)
    • getFloatPropertyProportionalWidth

      public float getFloatPropertyProportionalWidth(CSSName cssName, float parentWidth, CssContext ctx)
      Parameters:
      cssName -
      parentWidth -
      ctx -
      Returns:
      TODO
    • getFloatPropertyProportionalHeight

      public float getFloatPropertyProportionalHeight(CSSName cssName, float parentHeight, CssContext ctx)
      Parameters:
      cssName -
      parentHeight -
      ctx -
      Returns:
      TODO
    • getLineHeight

      public float getLineHeight(CssContext ctx)
    • getMarginRect

      public RectPropertySet getMarginRect(float cbWidth, CssContext ctx)
      Convenience property accessor; returns a Border initialized with the four-sided margin width. Uses the actual value (computed actual value) for this element.
      Parameters:
      cbWidth -
      ctx -
      Returns:
      The marginWidth value
    • getMarginRect

      public RectPropertySet getMarginRect(float cbWidth, CssContext ctx, boolean useCache)
    • getPaddingRect

      public RectPropertySet getPaddingRect(float cbWidth, CssContext ctx, boolean useCache)
      Convenience property accessor; returns a Border initialized with the four-sided padding width. Uses the actual value (computed actual value) for this element.
      Parameters:
      cbWidth -
      ctx -
      Returns:
      The paddingWidth value
    • getPaddingRect

      public RectPropertySet getPaddingRect(float cbWidth, CssContext ctx)
    • getStringProperty

      public String getStringProperty(CSSName cssName)
      Parameters:
      cssName -
      Returns:
      TODO
    • isLength

      public boolean isLength(CSSName cssName)
      TODO: doc
    • isLengthOrNumber

      public boolean isLengthOrNumber(CSSName cssName)
    • valueByName

      public FSDerivedValue valueByName(CSSName cssName)
      Returns a FSDerivedValue by name. Because we are a derived style, the property will already be resolved at this point.
      Parameters:
      cssName - The CSS property name, e.g. "font-family"
      Returns:
      See desc.
    • getCachedPadding

      public RectPropertySet getCachedPadding()
    • getCachedMargin

      public RectPropertySet getCachedMargin()
    • getMarginBorderPadding

      public int getMarginBorderPadding(CssContext cssCtx, int cbWidth, int which)
    • getWhitespace

      public IdentValue getWhitespace()
    • getFSFont

      public FSFont getFSFont(CssContext cssContext)
    • getFSFontMetrics

      public FSFontMetrics getFSFontMetrics(CssContext c)
    • isClearLeft

      public boolean isClearLeft()
    • isClearRight

      public boolean isClearRight()
    • isCleared

      public boolean isCleared()
    • getBackgroundRepeat

      public IdentValue getBackgroundRepeat()
    • getBackgroundAttachment

      public IdentValue getBackgroundAttachment()
    • isFixedBackground

      public boolean isFixedBackground()
    • isInline

      public boolean isInline()
    • isInlineBlock

      public boolean isInlineBlock()
    • isTable

      public boolean isTable()
    • isInlineTable

      public boolean isInlineTable()
    • isTableCell

      public boolean isTableCell()
    • isTableSection

      public boolean isTableSection()
    • isTableCaption

      public boolean isTableCaption()
    • isTableHeader

      public boolean isTableHeader()
    • isTableFooter

      public boolean isTableFooter()
    • isTableRow

      public boolean isTableRow()
    • isDisplayNone

      public boolean isDisplayNone()
    • isSpecifiedAsBlock

      public boolean isSpecifiedAsBlock()
    • isBlockEquivalent

      public boolean isBlockEquivalent()
    • isLayedOutInInlineContext

      public boolean isLayedOutInInlineContext()
    • isNeedAutoMarginResolution

      public boolean isNeedAutoMarginResolution()
    • isAbsolute

      public boolean isAbsolute()
    • isFixed

      public boolean isFixed()
    • isFloated

      public boolean isFloated()
    • isFloatedLeft

      public boolean isFloatedLeft()
    • isFloatedRight

      public boolean isFloatedRight()
    • isRelative

      public boolean isRelative()
    • isPostionedOrFloated

      public boolean isPostionedOrFloated()
    • isPositioned

      public boolean isPositioned()
    • isAutoWidth

      public boolean isAutoWidth()
    • isAutoHeight

      public boolean isAutoHeight()
    • isAutoZIndex

      public boolean isAutoZIndex()
    • establishesBFC

      public boolean establishesBFC()
    • requiresLayer

      public boolean requiresLayer()
    • isRunning

      public boolean isRunning()
    • getRunningName

      public String getRunningName()
    • isOverflowApplies

      public boolean isOverflowApplies()
    • isHorizontalBackgroundRepeat

      public boolean isHorizontalBackgroundRepeat()
    • isVerticalBackgroundRepeat

      public boolean isVerticalBackgroundRepeat()
    • isTopAuto

      public boolean isTopAuto()
    • isBottomAuto

      public boolean isBottomAuto()
    • isListItem

      public boolean isListItem()
    • isVisible

      public boolean isVisible()
    • isForcePageBreakBefore

      public boolean isForcePageBreakBefore()
    • isForcePageBreakAfter

      public boolean isForcePageBreakAfter()
    • isAvoidPageBreakInside

      public boolean isAvoidPageBreakInside()
    • createAnonymousStyle

      public CalculatedStyle createAnonymousStyle(IdentValue display)
    • mayHaveFirstLine

      public boolean mayHaveFirstLine()
    • mayHaveFirstLetter

      public boolean mayHaveFirstLetter()
    • isNonFlowContent

      public boolean isNonFlowContent()
    • isMayCollapseMarginsWithChildren

      public boolean isMayCollapseMarginsWithChildren()
    • isAbsFixedOrInlineBlockEquiv

      public boolean isAbsFixedOrInlineBlockEquiv()
    • isMaxWidthNone

      public boolean isMaxWidthNone()
    • isMaxHeightNone

      public boolean isMaxHeightNone()
    • getMinWidth

      public int getMinWidth(CssContext c, int cbWidth)
    • getMaxWidth

      public int getMaxWidth(CssContext c, int cbWidth)
    • getMinHeight

      public int getMinHeight(CssContext c, int cbHeight)
    • getMaxHeight

      public int getMaxHeight(CssContext c, int cbHeight)
    • isCollapseBorders

      public boolean isCollapseBorders()
    • getBorderHSpacing

      public int getBorderHSpacing(CssContext c)
    • getBorderVSpacing

      public int getBorderVSpacing(CssContext c)
    • getRowSpan

      public int getRowSpan()
    • getColSpan

      public int getColSpan()
    • asLength

      public Length asLength(CssContext c, CSSName cssName)
    • isShowEmptyCells

      public boolean isShowEmptyCells()
    • isHasBackground

      public boolean isHasBackground()
    • getTextDecorations

      public List getTextDecorations()
    • getCursor

      public Cursor getCursor()
    • isPaginateTable

      public boolean isPaginateTable()
    • isTextJustify

      public boolean isTextJustify()
    • isListMarkerInside

      public boolean isListMarkerInside()
    • isKeepWithInline

      public boolean isKeepWithInline()