public class CSSProperties
extends java.lang.Object
Constructor and Description |
---|
CSSProperties() |
Modifier and Type | Method and Description |
---|---|
static java.util.Stack |
getDefaultPropertySettings()
Retrieves a Stack of Pair()s with default (aka start-) values for all supported CSS properties.
|
static de.infinityloop.util.style.val.CSSValue |
getPropertyDefaultValue(int kind)
Returns the initial/default value for the passed property as CSSValue.
|
static PropertyTraits |
getPropertyTraits(int kind)
Retrieves any associated InheritanceDescriptor for the passed property.
|
static java.lang.String |
makeValidCSS2Identifier(java.lang.String src)
Escapes the passed name so that it becomes a valid CSS2 class identifier.
|
static java.lang.String |
makeValidCSS2PropertyValue(java.lang.String src)
Makes a (quoted, if need be) CSS2 property value using only ASCII characters for maximum compatibility.
|
static java.lang.String |
normalizeSingleClassValue(java.lang.String classValue)
This function simply replaces all occurrences of 0xA0 by a single space 0x20.
|
static int |
translateToId(java.lang.String name)
Translates the passed property name into its corresponding id
TODO: Make a Hashmap from the whole mapping table and use this for lookups.
|
static java.lang.String |
translateToName(int id)
Translates the passed property id into its corresponding name.
|
public static final java.lang.String kCustomCSSPrefix
"The latest proposal (unfortunately still not published) is to use 1. a hyphen or an underscore, followed by 2. the (possibly abbreviated) name of your company, 3. another hyphen or underscore, and 4. the property name E.g., "-moz-border-radius" if you are Mozilla or "-wap-accesskey" if you are OMA :-) Those extensions are meant for local use, they should ideally not be passed over the public Web, but to reduce any risk of clashes, you should probably still use a prefix whose length is inversely proportional to how well-known your company is... (And, of course, you should not use proprietary extensions at all.) The initial hyphen is guaranteed never to clash with any official CSS property, because indeed in the official grammar, an identifier cannot start with a hyphen. We thought that somebody who needed a proprietary property would not have much problem with also using a proprietary tokenizer (the modification is tiny), but apparently it does pose a problem for some implementations, so we added the underscore convention. The underscore is a legal initial character, but part of the proposal is that the CSS WG promises never to use it for any official property."
public static final java.lang.String kCustomCSSPrefixForAttribute
public static final java.lang.String kCustomCSSValPrefix
protected static java.util.Hashtable propertyTraits
protected static java.util.Hashtable defaultValues
public static final int kCSS_UNKNOWN_PROPERTY
public static final int kCSS_FontFamily
public static final int kCSS_FontSize
public static final int kCSS_Color
public static final int kCSS_Additive
public static final int kCSS_PCDATA
public static final int kCSS_CharacterStyle
public static final int kCSS_ParagraphStyle
public static final int kCSS_BorderTopWidth
public static final int kCSS_BorderRightWidth
public static final int kCSS_BorderBottomWidth
public static final int kCSS_BorderLeftWidth
public static final int kCSS_BorderTopColor
public static final int kCSS_BorderRightColor
public static final int kCSS_BorderBottomColor
public static final int kCSS_BorderLeftColor
public static final int kCSS_BorderTopStyle
public static final int kCSS_BorderRightStyle
public static final int kCSS_BorderBottomStyle
public static final int kCSS_BorderLeftStyle
public static final int kCSS_BorderHorizontalInsideStyle
public static final int kCSS_BorderVerticalInsideStyle
public static final int kCSS_BorderHorizontalInsideColor
public static final int kCSS_BorderVerticalInsideColor
public static final int kCSS_BorderHorizontalInsideWidth
public static final int kCSS_BorderVerticalInsideWidth
public static final int kCSS_TextAlign
public static final int kCSS_TextIndent
public static final int kCSS_InternalListItemDescription
public static final int kCSS_ListStyleType
public static final int kCSS_ListStylePosition
public static final int kCSS_ListNumberBefore
public static final int kCSS_ListNumberAfter
public static final int kCSS_Width
public static final int kCSS_Height
public static final int kCSS_MarginLeft
public static final int kCSS_MarginRight
public static final int kCSS_MarginTop
public static final int kCSS_MarginBottom
public static final int kCSS_PaddingLeft
public static final int kCSS_PaddingRight
public static final int kCSS_PaddingTop
public static final int kCSS_PaddingBottom
public static final int kCSS_TextDecoration
public static final int kCSS_FontVariant
public static final int kCSS_FontWeight
public static final int kCSS_TextTransform
public static final int kCSS_VerticalAlign
public static final int kCSS_FontStyle
public static final int kCSS_BackgroundColor
public static final int kCSS_Widows
public static final int kCSS_Orphans
public static final int kCSS_PageBreakBefore
public static final int kCSS_PageBreakInside
public static final int kCSS_PageBreakAfter
public static final int kCSS_Display
public static final int kCSS_LineHeight
public static final int kCSS_Float
public static final int kCSS_Clear
public static final int kCSS_TextUnderlineStyle
public static final int kCSS_TextUnderlineMode
public static final int kCSS_Page
public static final int kCSS_BorderSpacing
public static final int kCSS_WordBreakInside
public static final int kCSS_Direction
public static final int kCSS_EmptyCells
public static final int kCSS_FontStretch
public static final int kCSS_FontSizeAdjust
public static final int kCSS_LetterSpacing
public static final int kCSS_ListStyleImage
public static final int kCSS_Quotes
public static final int kCSS_WhiteSpace
public static final int kCSS_WordSpacing
public static final int kCSS_Position
public static final int kCSS_Top
public static final int kCSS_Right
public static final int kCSS_Bottom
public static final int kCSS_Left
public static final int kCSS_ZIndex
public static final int kCSS_BorderColor
public static final int kCSS_BorderStyle
public static final int kCSS_BorderWidth
public static final int kCSS_TextUnderlineColor
public static final int kCSS_TextLineThroughStyle
public static final int kCSSVal_Engrave
public static final int kCSSVal_Emboss
public static final int kCSSVal_Shadow
public static final int kCSSVal_Outline
public static final int kCSS_AltText
public static final int kCSS_ColumnCount
public static final int kCSS_ColumnWidth
public static final int kCSS_ColumnGap
public static final int kCSS_ColumnRule
public static final int kCSS_NoteMarker
public static final int kCSS_BlockBorderMode
public static final int kCSS_WrapDistanceHorizontal
public static final int kCSS_WrapDistanceVertical
public static final int kCSS_ListLevel
public static final int kCSSVal_DisplayBlockLogicalUnit
public static final int kCSSVal_DisplayBlockPhysicalUnit
public static final int kCSSVal_DisplayBlockFootnote
public static final int kCSSVal_DisplayBlockAnnotation
public static final int kCSSVal_DisplayBlockList
public static final int kCSS_EditingRights
public static final int kCSS_FontFamilyGeneric
public static final int kCSS_TextVisibility
public static final int kCSS_BorderSpacingHorizontal
public static final int kCSS_BorderSpacingVertical
public static final int kCSS_ListNumberingAbsolute
public static final int kCSS_BorderHorizontalInside
public static final int kCSS_BorderVerticalInside
public static final int kCSS_ImageSource
public static final int kCSS_TabStops
public static final int kCSS_XmlLang
public static final int kCSS_ListGroup
public static final int kCSS_ListMarkerTemplate
public static final int kCSS_ListMarkerAlign
public static final int kCSS_ListMarkerFollow
public static final int kCSS_ListMarkerOffset
public static final int kCSS_Gutter
public static final int kCSS_FacingPages
public static final int kCSS_MirrorMargins
public static final int kCSS_HeaderOffset
public static final int kCSS_FooterOffset
public static final int kCSS_RTFFontFamily
public static final int kCSS_UnicodeOffset
public static final int kCSS_ParagraphOutlineLevel_LEGACY
public static final int kCSS_ReferencePresentationType
public static final int kCSS_FontFamilyDefault
public static final int kCSS_FootnoteStyleType
public static final int kCSS_FootnoteNumberingPolicy
public static final int kCSS_FootnotePosition
public static final int kCSS_CellBorderTop
public static final int kCSS_CellBorderRight
public static final int kCSS_CellBorderBottom
public static final int kCSS_CellBorderLeft
public static final int kCSS_TableRowGroup
public static final int kCSS_BorderTop
public static final int kCSS_BorderRight
public static final int kCSS_BorderBottom
public static final int kCSS_BorderLeft
public static final int kCSS_BorderCharacter
public static final int kCSS_RowBorderTop
public static final int kCSS_RowBorderRight
public static final int kCSS_RowBorderBottom
public static final int kCSS_RowBorderLeft
public static final int kCSS_RowBorderV
public static final int kCSS_RowBorderH
public static final int kCSS_BorderTopStyleChar
public static final int kCSS_LeftIndent
public static final int kCSS_TableNesting
public static final int kCSS_Codepage
public static final int kCSS_UnicodeSkipCount
public static final int kCSS_EndnoteStyleType
public static final int kCSS_EndnoteNumberingPolicy
public static final int kCSS_EndnotePosition
public static final int kCSS_FollowingStyle
public static final int kCSS_AllSpaceTreatment
public static final int kCSS_WrapOption
public static final int kCSS_LinefeedTreatment
public static final int kCSS_WhiteSpaceTreatment
public static final int kCSS_ID
public static final int kCSS_MinWidth
public static final int kCSS_MaxWidth
public static final int kCSS_MinHeight
public static final int kCSS_MaxHeight
public static final int kCSS_Overflow
public static final int kCSS_TableLayout
public static final int kCSS_PageBreakBeforeSymbol
public static final int kCSS_ListMarkerFontFamily
public static final int kCSS_ListMarkerFontSize
public static final int kCSS_UnicodeRenderingHint
public static final int kCSS_FontswitchRenderingHint
public static final int kCSS_StyleUpdate
public static final int kCSS_PageNumberingStart
public static final int kCSS_PageNumberingMode
public static final int kCSS_PageNumberingStyle
public static final int kCSS_AnnotationMarker
public static final int kCSS_PaperOrientation
public static final int kCSS_LineStackingStrategy
public static final int kCSS_BorderCollapse
public static final int kCSS_FootnoteNumberingStart
public static final int kCSS_EndnoteNumberingStart
public static final int kCSS_PagePaddingCalculationRef
public static final int kCSS_StyleDisplay
public static final int kCSS_OutlineLevel
public static final int kCSS_ListNumberingRestart
public static final int kCSS_LineNumberingStart
public static final int kCSS_LineNumberingMode
public static final int kCSS_LineNumberingDistance
public static final int kCSS_LineNumberingInterval
public static final int kCSS_LineNumberingState
public static final int kCSS_ParagraphClass
public static final int kCSS_InlineClass
public static final int kCSS_PageSizeWidth
public static final int kCSS_PageSizeHeight
public static final int kCSS_ContentRotation
public static final int kCSS_PositionReferenceHorizontal
public static final int kCSS_PositionReferenceVertical
public static final int kCSS_VerticalAlignment
public static final int kCSS_HorizontalAlignment
public static final int kCSS_ListStyleReference
public static final int kCSS_DefaultTabSize
public static final int kCSS_ListMarkerColor
public static final int kCSS_DisplayAlign
public static final int kCSS_WordListType
public static final int kCSS_WordBaseStyle
public static final int kCSS_WordStyleId
public static final int kCSS_BaselineShift
public static final int kCSS_TextLineThroughColor
public static final int kCSS_BorderTlbr
public static final int kCSS_BorderBltr
public static final int kCSS_BorderTlbrWidth
public static final int kCSS_BorderTlbrColor
public static final int kCSS_BorderTlbrStyle
public static final int kCSS_BorderBltrWidth
public static final int kCSS_BorderBltrColor
public static final int kCSS_BorderBltrStyle
public static final int kCSS_CroppingTop
public static final int kCSS_CroppingBottom
public static final int kCSS_CroppingLeft
public static final int kCSS_CroppingRight
public static final int kCSS_StyleImportance
public static final int kCSS_StylePriority
public static final int kCSS_StyleSortOrder
public static final int kCSS_StyleDisplayFilter
public static final int kCSS_TableClass
public static final int kCSS_HasTitlepage
public static final int kCSS_ListMarkerFontWeight
public static final int kMaxProperties
public static java.lang.String makeValidCSS2Identifier(java.lang.String src)
src
- name to escapepublic static java.lang.String normalizeSingleClassValue(java.lang.String classValue)
classValue
- the "mangled" class valuepublic static java.lang.String makeValidCSS2PropertyValue(java.lang.String src)
src
- the value string to convertpublic static int translateToId(java.lang.String name)
TODO: Make a Hashmap from the whole mapping table and use this for lookups.
name
- property nametranslateToName(int)
public static final java.lang.String translateToName(int id)
translateToId(java.lang.String)
public static java.util.Stack getDefaultPropertySettings()
public static PropertyTraits getPropertyTraits(int kind)
kind
- the property idPropertyTraits
,
translateToId(java.lang.String)
public static de.infinityloop.util.style.val.CSSValue getPropertyDefaultValue(int kind)
kind
- the property you want to query the default value of