Class CSSName

  • All Implemented Interfaces:
    java.lang.Comparable<CSSName>

    public final class CSSName
    extends java.lang.Object
    implements java.lang.Comparable<CSSName>
    A CSSName is a Singleton representing a single CSS property name, like border-width. The class declares a Singleton static instance for each CSS Level 2 property. A CSSName instance has the property name available from the toString() method, as well as a unique (among all CSSName instances) integer id ranging from 0...n instances, incremented by 1, available using the final public int FS_ID (e.g. CSSName.COLOR.FS_ID).
    • Field Detail

      • PRIMITIVE

        private static final java.lang.Integer PRIMITIVE
        marker var, used for initialization
      • SHORTHAND

        private static final java.lang.Integer SHORTHAND
        marker var, used for initialization
      • INHERITS

        private static final java.lang.Integer INHERITS
        marker var, used for initialization
      • NOT_INHERITED

        private static final java.lang.Integer NOT_INHERITED
        marker var, used for initialization
      • maxAssigned

        private static int maxAssigned
        Used to assing unique int id values to new CSSNames created in this class
      • propName

        private final java.lang.String propName
        The CSS 2 property name, e.g. "border"
      • initialValue

        private final java.lang.String initialValue
        A (String) initial value from the CSS 2.1 specification
      • propertyInherits

        private final boolean propertyInherits
        True if the property inherits by default, false if not inherited
      • implemented

        private final boolean implemented
      • FS_ID

        public final int FS_ID
        Unique integer id for a CSSName.
      • ALL_PROPERTIES

        private static final CSSName[] ALL_PROPERTIES
        Map of all CSS properties
      • ALL_PROPERTY_NAMES

        private static final java.util.Map<java.lang.String,​CSSName> ALL_PROPERTY_NAMES
        Map of all CSS properties
      • ALL_PRIMITIVE_PROPERTY_NAMES

        private static final java.util.Map<java.lang.String,​CSSName> ALL_PRIMITIVE_PROPERTY_NAMES
        Map of all non-shorthand CSS properties
      • COLOR

        public static final CSSName COLOR
        Unique CSSName instance for CSS2 property. TODO: UA dependent
      • BACKGROUND_COLOR

        public static final CSSName BACKGROUND_COLOR
        Unique CSSName instance for CSS2 property.
      • BACKGROUND_IMAGE

        public static final CSSName BACKGROUND_IMAGE
        Unique CSSName instance for CSS2 property.
      • BACKGROUND_REPEAT

        public static final CSSName BACKGROUND_REPEAT
        Unique CSSName instance for CSS2 property.
      • BACKGROUND_ATTACHMENT

        public static final CSSName BACKGROUND_ATTACHMENT
        Unique CSSName instance for CSS2 property.
      • BACKGROUND_POSITION

        public static final CSSName BACKGROUND_POSITION
        Unique CSSName instance for CSS2 property.
      • BACKGROUND_SIZE

        public static final CSSName BACKGROUND_SIZE
      • BORDER_COLLAPSE

        public static final CSSName BORDER_COLLAPSE
        Unique CSSName instance for CSS2 property.
      • FS_BORDER_RENDERING

        public static final CSSName FS_BORDER_RENDERING
        If this property is set to no-bevel then borders are rendered without bevels. This can be useful to avoid anti-aliasing.
      • FS_BORDER_SPACING_HORIZONTAL

        public static final CSSName FS_BORDER_SPACING_HORIZONTAL
        Unique CSSName instance for fictitious property.
      • FS_BORDER_SPACING_VERTICAL

        public static final CSSName FS_BORDER_SPACING_VERTICAL
        Unique CSSName instance for CSS2 property.
      • FS_DYNAMIC_AUTO_WIDTH

        public static final CSSName FS_DYNAMIC_AUTO_WIDTH
        Unique CSSName instance for CSS2 property.
      • FS_FONT_SUBSET

        public static final CSSName FS_FONT_SUBSET
        Unique CSSName instance for CSS2 property.
      • FS_CHECKBOX_STYLE

        public static final CSSName FS_CHECKBOX_STYLE
      • FS_KEEP_WITH_INLINE

        public static final CSSName FS_KEEP_WITH_INLINE
        Unique CSSName instance for CSS2 property.
      • FS_PAGE_WIDTH

        public static final CSSName FS_PAGE_WIDTH
        Unique CSSName instance for CSS2 property.
      • FS_PAGE_HEIGHT

        public static final CSSName FS_PAGE_HEIGHT
        Unique CSSName instance for CSS2 property.
      • FS_PAGE_SEQUENCE

        public static final CSSName FS_PAGE_SEQUENCE
        Unique CSSName instance for CSS2 property.
      • FS_PDF_FONT_EMBED

        public static final CSSName FS_PDF_FONT_EMBED
        Unique CSSName instance for CSS2 property.
      • FS_PDF_FONT_ENCODING

        public static final CSSName FS_PDF_FONT_ENCODING
        Unique CSSName instance for CSS2 property.
      • FS_PAGE_ORIENTATION

        public static final CSSName FS_PAGE_ORIENTATION
        Unique CSSName instance for CSS2 property.
      • FS_TABLE_PAGINATE

        public static final CSSName FS_TABLE_PAGINATE
        Unique CSSName instance for CSS2 property.
      • FS_TEXT_DECORATION_EXTENT

        public static final CSSName FS_TEXT_DECORATION_EXTENT
        Unique CSSName instance for CSS2 property.
      • FS_FIT_IMAGES_TO_WIDTH

        public static final CSSName FS_FIT_IMAGES_TO_WIDTH
        Used for forcing images to scale to a certain width
      • FS_NAMED_DESTINATION

        public static final CSSName FS_NAMED_DESTINATION
        Used to control creation of named destinations for boxes having the id attribute set.
      • FS_PAGE_BREAK_MIN_HEIGHT

        public static final CSSName FS_PAGE_BREAK_MIN_HEIGHT
        Perform a page break before this element, if not at least the specified space is left on the current page.
      • FS_MAX_JUSTIFICATION_INTER_WORD

        public static final CSSName FS_MAX_JUSTIFICATION_INTER_WORD
        The max extra spacing for space characters when text-align: justify is in use.
      • FS_MAX_JUSTIFICATION_INTER_CHAR

        public static final CSSName FS_MAX_JUSTIFICATION_INTER_CHAR
        The max extra spacing for non-space characters when text-align: justify is in use.
      • BOTTOM

        public static final CSSName BOTTOM
        Unique CSSName instance for CSS2 property.
      • CAPTION_SIDE

        public static final CSSName CAPTION_SIDE
        Unique CSSName instance for CSS2 property.
      • CLEAR

        public static final CSSName CLEAR
        Unique CSSName instance for CSS2 property.
      • CLIP

        public static final CSSName CLIP
        Unique CSSName instance for CSS2 property.
      • COLUMN_COUNT

        public static final CSSName COLUMN_COUNT
      • COLUMN_GAP

        public static final CSSName COLUMN_GAP
      • CONTENT

        public static final CSSName CONTENT
        Unique CSSName instance for CSS2 property.
      • COUNTER_INCREMENT

        public static final CSSName COUNTER_INCREMENT
        Unique CSSName instance for CSS2 property.
      • COUNTER_RESET

        public static final CSSName COUNTER_RESET
        Unique CSSName instance for CSS2 property.
      • CURSOR

        public static final CSSName CURSOR
        Unique CSSName instance for CSS2 property.
      • DIRECTION

        public static final CSSName DIRECTION
        Unique CSSName instance for CSS2 property.
      • DISPLAY

        public static final CSSName DISPLAY
        Unique CSSName instance for CSS2 property.
      • EMPTY_CELLS

        public static final CSSName EMPTY_CELLS
        Unique CSSName instance for CSS2 property.
      • FLOAT

        public static final CSSName FLOAT
        Unique CSSName instance for CSS2 property.
      • FONT_STYLE

        public static final CSSName FONT_STYLE
        Unique CSSName instance for CSS2 property.
      • FONT_VARIANT

        public static final CSSName FONT_VARIANT
        Unique CSSName instance for CSS2 property.
      • FONT_WEIGHT

        public static final CSSName FONT_WEIGHT
        Unique CSSName instance for CSS2 property.
      • FONT_SIZE

        public static final CSSName FONT_SIZE
        Unique CSSName instance for CSS2 property.
      • LINE_HEIGHT

        public static final CSSName LINE_HEIGHT
        Unique CSSName instance for CSS2 property.
      • FONT_FAMILY

        public static final CSSName FONT_FAMILY
        Unique CSSName instance for CSS2 property. TODO: UA dependent
      • FS_COLSPAN

        public static final CSSName FS_COLSPAN
        Unique CSSName instance for CSS2 property.
      • FS_ROWSPAN

        public static final CSSName FS_ROWSPAN
        Unique CSSName instance for CSS2 property.
      • HEIGHT

        public static final CSSName HEIGHT
        Unique CSSName instance for CSS2 property.
      • LEFT

        public static final CSSName LEFT
        Unique CSSName instance for CSS2 property.
      • LETTER_SPACING

        public static final CSSName LETTER_SPACING
        Unique CSSName instance for CSS2 property.
      • LIST_STYLE_TYPE

        public static final CSSName LIST_STYLE_TYPE
        Unique CSSName instance for CSS2 property.
      • LIST_STYLE_POSITION

        public static final CSSName LIST_STYLE_POSITION
        Unique CSSName instance for CSS2 property.
      • LIST_STYLE_IMAGE

        public static final CSSName LIST_STYLE_IMAGE
        Unique CSSName instance for CSS2 property.
      • MAX_HEIGHT

        public static final CSSName MAX_HEIGHT
        Unique CSSName instance for CSS2 property.
      • MAX_WIDTH

        public static final CSSName MAX_WIDTH
        Unique CSSName instance for CSS2 property.
      • MIN_HEIGHT

        public static final CSSName MIN_HEIGHT
        Unique CSSName instance for CSS2 property.
      • MIN_WIDTH

        public static final CSSName MIN_WIDTH
        Unique CSSName instance for CSS2 property. TODO: UA dependent
      • ORPHANS

        public static final CSSName ORPHANS
        Unique CSSName instance for CSS2 property.
      • OUTLINE_COLOR

        public static final CSSName OUTLINE_COLOR
        Unique CSSName instance for CSS2 property.
      • OUTLINE_STYLE

        public static final CSSName OUTLINE_STYLE
        Unique CSSName instance for CSS2 property.
      • OUTLINE_WIDTH

        public static final CSSName OUTLINE_WIDTH
        Unique CSSName instance for CSS2 property.
      • OVERFLOW

        public static final CSSName OVERFLOW
        Unique CSSName instance for CSS2 property.
      • PAGE

        public static final CSSName PAGE
        Unique CSSName instance for CSS2 property.
      • PAGE_BREAK_AFTER

        public static final CSSName PAGE_BREAK_AFTER
        Unique CSSName instance for CSS2 property.
      • PAGE_BREAK_BEFORE

        public static final CSSName PAGE_BREAK_BEFORE
        Unique CSSName instance for CSS2 property.
      • PAGE_BREAK_INSIDE

        public static final CSSName PAGE_BREAK_INSIDE
        Unique CSSName instance for CSS2 property.
      • BREAK_AFTER

        public static final CSSName BREAK_AFTER
      • BREAK_BEFORE

        public static final CSSName BREAK_BEFORE
      • POSITION

        public static final CSSName POSITION
        Unique CSSName instance for CSS2 property.
      • QUOTES

        public static final CSSName QUOTES
        Unique CSSName instance for CSS2 property. TODO: UA dependent
      • RIGHT

        public static final CSSName RIGHT
        Unique CSSName instance for CSS2 property.
      • SRC

        public static final CSSName SRC
        Unique CSSName instance for CSS2 property.
      • TAB_SIZE

        public static final CSSName TAB_SIZE
        Used for controlling tab size in pre tags. See http://dev.w3.org/csswg/css3-text/#tab-size
      • TABLE_LAYOUT

        public static final CSSName TABLE_LAYOUT
        Unique CSSName instance for CSS2 property.
      • TEXT_ALIGN

        public static final CSSName TEXT_ALIGN
        Unique CSSName instance for CSS2 property. TODO: UA dependent
      • TEXT_DECORATION

        public static final CSSName TEXT_DECORATION
        Unique CSSName instance for CSS2 property.
      • TEXT_INDENT

        public static final CSSName TEXT_INDENT
        Unique CSSName instance for CSS2 property.
      • TEXT_TRANSFORM

        public static final CSSName TEXT_TRANSFORM
        Unique CSSName instance for CSS2 property.
      • TOP

        public static final CSSName TOP
        Unique CSSName instance for CSS2 property.
      • UNICODE_BIDI

        public static final CSSName UNICODE_BIDI
        Unique CSSName instance for CSS2 property.
      • VERTICAL_ALIGN

        public static final CSSName VERTICAL_ALIGN
        Unique CSSName instance for CSS2 property.
      • VISIBILITY

        public static final CSSName VISIBILITY
        Unique CSSName instance for CSS2 property.
      • WHITE_SPACE

        public static final CSSName WHITE_SPACE
        Unique CSSName instance for CSS2 property.
      • WORD_WRAP

        public static final CSSName WORD_WRAP
        Unique CSSName instance for CSS3 property.
      • WIDOWS

        public static final CSSName WIDOWS
        Unique CSSName instance for CSS2 property.
      • WIDTH

        public static final CSSName WIDTH
        Unique CSSName instance for CSS2 property.
      • TRANSFORM

        public static final CSSName TRANSFORM
        Unique CSSName instance for CSS3 property.
      • FS_TRANSFORM_ORIGIN_X

        public static final CSSName FS_TRANSFORM_ORIGIN_X
      • FS_TRANSFORM_ORIGIN_Y

        public static final CSSName FS_TRANSFORM_ORIGIN_Y
      • WORD_SPACING

        public static final CSSName WORD_SPACING
        Unique CSSName instance for CSS2 property.
      • Z_INDEX

        public static final CSSName Z_INDEX
        Unique CSSName instance for CSS2 property.
      • BORDER_TOP_COLOR

        public static final CSSName BORDER_TOP_COLOR
        Unique CSSName instance for CSS2 property.
      • BORDER_RIGHT_COLOR

        public static final CSSName BORDER_RIGHT_COLOR
        Unique CSSName instance for CSS2 property.
      • BORDER_BOTTOM_COLOR

        public static final CSSName BORDER_BOTTOM_COLOR
        Unique CSSName instance for CSS2 property.
      • BORDER_LEFT_COLOR

        public static final CSSName BORDER_LEFT_COLOR
        Unique CSSName instance for CSS2 property.
      • BORDER_TOP_STYLE

        public static final CSSName BORDER_TOP_STYLE
        Unique CSSName instance for CSS2 property.
      • BORDER_RIGHT_STYLE

        public static final CSSName BORDER_RIGHT_STYLE
        Unique CSSName instance for CSS2 property.
      • BORDER_BOTTOM_STYLE

        public static final CSSName BORDER_BOTTOM_STYLE
        Unique CSSName instance for CSS2 property.
      • BORDER_LEFT_STYLE

        public static final CSSName BORDER_LEFT_STYLE
        Unique CSSName instance for CSS2 property.
      • BORDER_TOP_WIDTH

        public static final CSSName BORDER_TOP_WIDTH
        Unique CSSName instance for CSS2 property.
      • BORDER_RIGHT_WIDTH

        public static final CSSName BORDER_RIGHT_WIDTH
        Unique CSSName instance for CSS2 property.
      • BORDER_BOTTOM_WIDTH

        public static final CSSName BORDER_BOTTOM_WIDTH
        Unique CSSName instance for CSS2 property.
      • BORDER_LEFT_WIDTH

        public static final CSSName BORDER_LEFT_WIDTH
        Unique CSSName instance for CSS2 property.
      • BORDER_TOP_LEFT_RADIUS

        public static final CSSName BORDER_TOP_LEFT_RADIUS
        Unique CSSName instance for CSS3 property.
      • BORDER_TOP_RIGHT_RADIUS

        public static final CSSName BORDER_TOP_RIGHT_RADIUS
        Unique CSSName instance for CSS3 property.
      • BORDER_BOTTOM_RIGHT_RADIUS

        public static final CSSName BORDER_BOTTOM_RIGHT_RADIUS
        Unique CSSName instance for CSS3 property.
      • BORDER_BOTTOM_LEFT_RADIUS

        public static final CSSName BORDER_BOTTOM_LEFT_RADIUS
        Unique CSSName instance for CSS3 property.
      • MARGIN_TOP

        public static final CSSName MARGIN_TOP
        Unique CSSName instance for CSS2 property.
      • MARGIN_RIGHT

        public static final CSSName MARGIN_RIGHT
        Unique CSSName instance for CSS2 property.
      • MARGIN_BOTTOM

        public static final CSSName MARGIN_BOTTOM
        Unique CSSName instance for CSS2 property.
      • MARGIN_LEFT

        public static final CSSName MARGIN_LEFT
        Unique CSSName instance for CSS2 property.
      • PADDING_TOP

        public static final CSSName PADDING_TOP
        Unique CSSName instance for CSS2 property.
      • PADDING_RIGHT

        public static final CSSName PADDING_RIGHT
        Unique CSSName instance for CSS2 property.
      • PADDING_BOTTOM

        public static final CSSName PADDING_BOTTOM
        Unique CSSName instance for CSS2 property.
      • PADDING_LEFT

        public static final CSSName PADDING_LEFT
        Unique CSSName instance for CSS2 property.
      • IMAGE_RENDERING

        public static final CSSName IMAGE_RENDERING
        Unique CSSName instance for CSS3 property.
      • BOX_SIZING

        public static final CSSName BOX_SIZING
      • FS_MAX_OVERFLOW_PAGES

        public static final CSSName FS_MAX_OVERFLOW_PAGES
        The maximum number of inserted shadow pages to insert for cut-off content.
      • FS_OVERFLOW_PAGES_DIRECTION

        public static final CSSName FS_OVERFLOW_PAGES_DIRECTION
        Whether cut-off content to the right (default) of the page or left of the page should be inserted as shadow pages.
      • BACKGROUND_SHORTHAND

        public static final CSSName BACKGROUND_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_RADIUS_SHORTHAND

        public static final CSSName BORDER_RADIUS_SHORTHAND
        Unique CSSName instance for CSS3 property.
      • BORDER_WIDTH_SHORTHAND

        public static final CSSName BORDER_WIDTH_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_STYLE_SHORTHAND

        public static final CSSName BORDER_STYLE_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_SHORTHAND

        public static final CSSName BORDER_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_TOP_SHORTHAND

        public static final CSSName BORDER_TOP_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_RIGHT_SHORTHAND

        public static final CSSName BORDER_RIGHT_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_BOTTOM_SHORTHAND

        public static final CSSName BORDER_BOTTOM_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_LEFT_SHORTHAND

        public static final CSSName BORDER_LEFT_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_COLOR_SHORTHAND

        public static final CSSName BORDER_COLOR_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • BORDER_SPACING

        public static final CSSName BORDER_SPACING
        Unique CSSName instance for CSS2 property.
      • FONT_SHORTHAND

        public static final CSSName FONT_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • LIST_STYLE_SHORTHAND

        public static final CSSName LIST_STYLE_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • MARGIN_SHORTHAND

        public static final CSSName MARGIN_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • OUTLINE_SHORTHAND

        public static final CSSName OUTLINE_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • PADDING_SHORTHAND

        public static final CSSName PADDING_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • SIZE_SHORTHAND

        public static final CSSName SIZE_SHORTHAND
        Unique CSSName instance for CSS2 property.
      • TRANSFORM_ORIGIN_SHORTHAND

        public static final CSSName TRANSFORM_ORIGIN_SHORTHAND
        Unique CSSName instance for CSS3 property.
    • Constructor Detail

      • CSSName

        private CSSName​(java.lang.String propName,
                        java.lang.String initialValue,
                        boolean inherits,
                        boolean implemented,
                        PropertyBuilder builder)
        Constructor for the CSSName object
        Parameters:
        propName - PARAM
        initialValue -
        inherits -
        implemented -
        builder -
    • Method Detail

      • toString

        public java.lang.String toString()
        Returns a string representation of the object, in this case, always the full CSS property name in lowercase.
        Overrides:
        toString in class java.lang.Object
        Returns:
        a string representation of the object.
      • countCSSNames

        public static int countCSSNames()
        Returns a count of all CSS properties known to this class, shorthand and primitive.
        Returns:
        Returns
      • countCSSPrimitiveNames

        public static int countCSSPrimitiveNames()
        Returns a count of all CSS primitive (non-shorthand) properties known to this class.
        Returns:
        Returns
      • propertyInherits

        public static boolean propertyInherits​(CSSName cssName)
        Returns true if the named property inherits by default, according to the CSS2 spec.
        Parameters:
        cssName - PARAM
        Returns:
        Returns
      • initialValue

        public static java.lang.String initialValue​(CSSName cssName)
        Returns the initial value of the named property, according to the CSS2 spec, as a String. Casting must be taken care of by the caller, as there is too much variation in value-types.
        Parameters:
        cssName - PARAM
        Returns:
        Returns
      • isImplemented

        public static boolean isImplemented​(CSSName cssName)
      • getByPropertyName

        public static CSSName getByPropertyName​(java.lang.String propName)
        Gets the byPropertyName attribute of the CSSName class
        Parameters:
        propName - PARAM
        Returns:
        The byPropertyName value
      • getByID

        public static CSSName getByID​(int id)
      • addProperty

        private static CSSName addProperty​(java.lang.String propName,
                                           java.lang.Object type,
                                           java.lang.String initialValue,
                                           java.lang.Object inherit,
                                           PropertyBuilder builder)
      • addProperty

        private static CSSName addProperty​(java.lang.String propName,
                                           java.lang.Object type,
                                           java.lang.String initialValue,
                                           java.lang.Object inherit,
                                           boolean implemented,
                                           PropertyBuilder builder)
        Adds a feature to the Property attribute of the CSSName class
        Parameters:
        propName - The feature to be added to the Property attribute
        type -
        initialValue -
        inherit -
        implemented -
        builder -
        Returns:
        Returns
      • compareTo

        public int compareTo​(CSSName object)
        Specified by:
        compareTo in interface java.lang.Comparable<CSSName>
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object