Back to index

lightning-sunbird  0.9+nobinonly
nsCSSPropList.h
Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
00002 /* ***** BEGIN LICENSE BLOCK *****
00003  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
00004  *
00005  * The contents of this file are subject to the Mozilla Public License Version
00006  * 1.1 (the "License"); you may not use this file except in compliance with
00007  * the License. You may obtain a copy of the License at
00008  * http://www.mozilla.org/MPL/
00009  *
00010  * Software distributed under the License is distributed on an "AS IS" basis,
00011  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
00012  * for the specific language governing rights and limitations under the
00013  * License.
00014  *
00015  * The Original Code is mozilla.org code.
00016  *
00017  * The Initial Developer of the Original Code is
00018  * Netscape Communications Corporation.
00019  * Portions created by the Initial Developer are Copyright (C) 1999
00020  * the Initial Developer. All Rights Reserved.
00021  *
00022  * Contributor(s):
00023  *   Mats Palmgren <mats.palmgren@bredband.net>
00024  *
00025  * Alternatively, the contents of this file may be used under the terms of
00026  * either of the GNU General Public License Version 2 or later (the "GPL"),
00027  * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
00028  * in which case the provisions of the GPL or the LGPL are applicable instead
00029  * of those above. If you wish to allow use of your version of this file only
00030  * under the terms of either the GPL or the LGPL, and not to allow others to
00031  * use your version of this file under the terms of the MPL, indicate your
00032  * decision by deleting the provisions above and replace them with the notice
00033  * and other provisions required by the GPL or the LGPL. If you do not delete
00034  * the provisions above, a recipient may use your version of this file under
00035  * the terms of any one of the MPL, the GPL or the LGPL.
00036  *
00037  * ***** END LICENSE BLOCK ***** */
00038 
00039 /******
00040 
00041   This file contains the list of all parsed CSS properties.  It is
00042   designed to be used as inline input through the magic of C
00043   preprocessing.  All entries must be enclosed in the appropriate
00044   CSS_PROP_* macro which will have cruel and unusual things done to it.
00045   It is recommended (but not strictly necessary) to keep all entries in
00046   alphabetical order.
00047 
00048   The arguments to CSS_PROP_* are:
00049 
00050   1. 'name' entries represent a CSS property name and *must* use only
00051   lowercase characters.
00052 
00053   2. 'id' should be the same as 'name' except that all hyphens ('-')
00054   in 'name' are converted to underscores ('_') in 'id'. This lets us
00055   do nice things with the macros without having to copy/convert strings
00056   at runtime.  These are the names used for the enum values of the
00057   nsCSSProperty enumeration defined in nsCSSProps.h.
00058 
00059   3. 'method' is designed to be as input for CSS2Properties and similar
00060   callers.  It must always be the same as 'name' except it must use
00061   InterCaps and all hyphens ('-') must be removed.
00062 
00063   4. 'datastruct' says which nsRuleData* struct this property goes in.
00064 
00065   5. 'member' gives the name of the member variable in the nsRuleData
00066   struct.
00067 
00068   6. 'type' gives the |nsCSSType| of the data in the nsRuleData struct
00069   and in the nsCSSDeclaration backend.
00070 
00071   7. 'kwtable', which is either nsnull or the name of the appropriate
00072   keyword table member of class nsCSSProps, for use in
00073   nsCSSProps::LookupPropertyValue.
00074 
00075  ******/
00076 
00077 
00078 /*************************************************************************/
00079 
00080 
00081 // XXX Should we really be using CSS_PROP_SHORTHAND for 'border-spacing',
00082 // 'background-position', and 'size'?
00083 
00084 
00085 // All includers must explicitly define CSS_PROP_NOTIMPLEMENTED if they
00086 // want this.  (Only the DOM cares.)
00087 #ifndef CSS_PROP_NOTIMPLEMENTED
00088 #define CSS_PROP_NOTIMPLEMENTED(name_, id_, method_) /* nothing */
00089 #define DEFINED_CSS_PROP_NOTIMPLEMENTED
00090 #endif
00091 
00092 // All includers must explicitly define CSS_PROP_SHORTHAND if they
00093 // want it.
00094 #ifndef CSS_PROP_SHORTHAND
00095 #define CSS_PROP_SHORTHAND(name_, id_, method_) /* nothing */
00096 #define DEFINED_CSS_PROP_SHORTHAND
00097 #endif
00098 
00099 
00100 // Callers may define CSS_PROP_LIST_EXCLUDE_INTERNAL if they want to
00101 // exclude internal properties that are not represented in the DOM (only
00102 // the DOM style code defines this).
00103 
00104 // A caller who wants all the properties can define the |CSS_PROP|
00105 // macro.
00106 #ifdef CSS_PROP
00107 
00108 #define USED_CSS_PROP
00109 #define CSS_PROP_FONT(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00110 #define CSS_PROP_COLOR(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00111 #define CSS_PROP_BACKGROUND(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00112 #define CSS_PROP_LIST(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00113 #define CSS_PROP_POSITION(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00114 #define CSS_PROP_TEXT(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00115 #define CSS_PROP_TEXTRESET(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00116 #define CSS_PROP_DISPLAY(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00117 #define CSS_PROP_VISIBILITY(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00118 #define CSS_PROP_CONTENT(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00119 #define CSS_PROP_QUOTES(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00120 #define CSS_PROP_USERINTERFACE(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00121 #define CSS_PROP_UIRESET(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00122 #define CSS_PROP_TABLE(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00123 #define CSS_PROP_TABLEBORDER(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00124 #define CSS_PROP_MARGIN(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00125 #define CSS_PROP_PADDING(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00126 #define CSS_PROP_BORDER(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00127 #define CSS_PROP_OUTLINE(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00128 #define CSS_PROP_XUL(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00129 #define CSS_PROP_COLUMN(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00130 #define CSS_PROP_SVG(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00131 #define CSS_PROP_SVGRESET(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00132 
00133 // For properties that are stored in the CSS backend but are not
00134 // computed.  An includer may define this in addition to CSS_PROP, but
00135 // otherwise we treat it as the same.
00136 #ifndef CSS_PROP_BACKENDONLY
00137 #define CSS_PROP_BACKENDONLY(name_, id_, method_, datastruct_, member_, type_, kwtable_) CSS_PROP(name_, id_, method_, datastruct_, member_, type_, kwtable_)
00138 #define DEFINED_CSS_PROP_BACKENDONLY
00139 #endif
00140 
00141 #else /* !defined(CSS_PROP) */
00142 
00143 // An includer who does not define CSS_PROP can define any or all of the
00144 // per-struct macros that are equivalent to it, and the rest will be
00145 // ignored.
00146 
00147 #ifndef CSS_PROP_FONT
00148 #define CSS_PROP_FONT(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00149 #define DEFINED_CSS_PROP_FONT
00150 #endif
00151 #ifndef CSS_PROP_COLOR
00152 #define CSS_PROP_COLOR(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00153 #define DEFINED_CSS_PROP_COLOR
00154 #endif
00155 #ifndef CSS_PROP_BACKGROUND
00156 #define CSS_PROP_BACKGROUND(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00157 #define DEFINED_CSS_PROP_BACKGROUND
00158 #endif
00159 #ifndef CSS_PROP_LIST
00160 #define CSS_PROP_LIST(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00161 #define DEFINED_CSS_PROP_LIST
00162 #endif
00163 #ifndef CSS_PROP_POSITION
00164 #define CSS_PROP_POSITION(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00165 #define DEFINED_CSS_PROP_POSITION
00166 #endif
00167 #ifndef CSS_PROP_TEXT
00168 #define CSS_PROP_TEXT(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00169 #define DEFINED_CSS_PROP_TEXT
00170 #endif
00171 #ifndef CSS_PROP_TEXTRESET
00172 #define CSS_PROP_TEXTRESET(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00173 #define DEFINED_CSS_PROP_TEXTRESET
00174 #endif
00175 #ifndef CSS_PROP_DISPLAY
00176 #define CSS_PROP_DISPLAY(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00177 #define DEFINED_CSS_PROP_DISPLAY
00178 #endif
00179 #ifndef CSS_PROP_VISIBILITY
00180 #define CSS_PROP_VISIBILITY(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00181 #define DEFINED_CSS_PROP_VISIBILITY
00182 #endif
00183 #ifndef CSS_PROP_CONTENT
00184 #define CSS_PROP_CONTENT(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00185 #define DEFINED_CSS_PROP_CONTENT
00186 #endif
00187 #ifndef CSS_PROP_QUOTES
00188 #define CSS_PROP_QUOTES(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00189 #define DEFINED_CSS_PROP_QUOTES
00190 #endif
00191 #ifndef CSS_PROP_USERINTERFACE
00192 #define CSS_PROP_USERINTERFACE(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00193 #define DEFINED_CSS_PROP_USERINTERFACE
00194 #endif
00195 #ifndef CSS_PROP_UIRESET
00196 #define CSS_PROP_UIRESET(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00197 #define DEFINED_CSS_PROP_UIRESET
00198 #endif
00199 #ifndef CSS_PROP_TABLE
00200 #define CSS_PROP_TABLE(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00201 #define DEFINED_CSS_PROP_TABLE
00202 #endif
00203 #ifndef CSS_PROP_TABLEBORDER
00204 #define CSS_PROP_TABLEBORDER(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00205 #define DEFINED_CSS_PROP_TABLEBORDER
00206 #endif
00207 #ifndef CSS_PROP_MARGIN
00208 #define CSS_PROP_MARGIN(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00209 #define DEFINED_CSS_PROP_MARGIN
00210 #endif
00211 #ifndef CSS_PROP_PADDING
00212 #define CSS_PROP_PADDING(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00213 #define DEFINED_CSS_PROP_PADDING
00214 #endif
00215 #ifndef CSS_PROP_BORDER
00216 #define CSS_PROP_BORDER(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00217 #define DEFINED_CSS_PROP_BORDER
00218 #endif
00219 #ifndef CSS_PROP_OUTLINE
00220 #define CSS_PROP_OUTLINE(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00221 #define DEFINED_CSS_PROP_OUTLINE
00222 #endif
00223 #ifndef CSS_PROP_XUL
00224 #define CSS_PROP_XUL(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00225 #define DEFINED_CSS_PROP_XUL
00226 #endif
00227 #ifndef CSS_PROP_COLUMN
00228 #define CSS_PROP_COLUMN(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00229 #define DEFINED_CSS_PROP_COLUMN
00230 #endif
00231 #ifndef CSS_PROP_SVG
00232 #define CSS_PROP_SVG(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00233 #define DEFINED_CSS_PROP_SVG
00234 #endif
00235 #ifndef CSS_PROP_SVGRESET
00236 #define CSS_PROP_SVGRESET(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00237 #define DEFINED_CSS_PROP_SVGRESET
00238 #endif
00239 
00240 #ifndef CSS_PROP_BACKENDONLY
00241 #define CSS_PROP_BACKENDONLY(name_, id_, method_, datastruct_, member_, type_, kwtable_) /* nothing */
00242 #define DEFINED_CSS_PROP_BACKENDONLY
00243 #endif
00244 
00245 #endif /* !defined(CSS_PROP) */
00246 
00247 /*************************************************************************/
00248 
00249 // For notes XXX bug 3935 below, the names being parsed do not correspond
00250 // to the constants used internally.  It would be nice to bring the
00251 // constants into line sometime.
00252 
00253 // The parser will refuse to parse properties marked with -x-.
00254 
00255 // Those marked XXX bug 48973 are CSS2 properties that we support
00256 // differently from the spec for UI requirements.  If we ever
00257 // support them correctly the old constants need to be renamed and
00258 // new ones should be entered.
00259 
00260 CSS_PROP_DISPLAY(-moz-appearance, appearance, MozAppearance, Display, mAppearance, eCSSType_Value, kAppearanceKTable)
00261 CSS_PROP_SHORTHAND(-moz-border-radius, _moz_border_radius, MozBorderRadius)
00262 CSS_PROP_BORDER(-moz-border-radius-topleft, _moz_border_radius_topLeft, MozBorderRadiusTopleft, Margin, mBorderRadius.mTop, eCSSType_Value, nsnull)
00263 CSS_PROP_BORDER(-moz-border-radius-topright, _moz_border_radius_topRight, MozBorderRadiusTopright, Margin, mBorderRadius.mRight, eCSSType_Value, nsnull)
00264 CSS_PROP_BORDER(-moz-border-radius-bottomleft, _moz_border_radius_bottomLeft, MozBorderRadiusBottomleft, Margin, mBorderRadius.mLeft, eCSSType_Value, nsnull)
00265 CSS_PROP_BORDER(-moz-border-radius-bottomright, _moz_border_radius_bottomRight, MozBorderRadiusBottomright, Margin, mBorderRadius.mBottom, eCSSType_Value, nsnull)
00266 CSS_PROP_SHORTHAND(-moz-outline-radius, _moz_outline_radius, MozOutlineRadius)
00267 CSS_PROP_OUTLINE(-moz-outline-radius-topleft, _moz_outline_radius_topLeft, MozOutlineRadiusTopleft, Margin, mOutlineRadius.mTop, eCSSType_Value, nsnull)
00268 CSS_PROP_OUTLINE(-moz-outline-radius-topright, _moz_outline_radius_topRight, MozOutlineRadiusTopright, Margin, mOutlineRadius.mRight, eCSSType_Value, nsnull)
00269 CSS_PROP_OUTLINE(-moz-outline-radius-bottomleft, _moz_outline_radius_bottomLeft, MozOutlineRadiusBottomleft, Margin, mOutlineRadius.mLeft, eCSSType_Value, nsnull)
00270 CSS_PROP_OUTLINE(-moz-outline-radius-bottomright, _moz_outline_radius_bottomRight, MozOutlineRadiusBottomright, Margin, mOutlineRadius.mBottom, eCSSType_Value, nsnull)
00271 CSS_PROP_BACKENDONLY(azimuth, azimuth, Azimuth, Aural, mAzimuth, eCSSType_Value, kAzimuthKTable)
00272 CSS_PROP_SHORTHAND(background, background, Background)
00273 CSS_PROP_BACKGROUND(background-attachment, background_attachment, BackgroundAttachment, Color, mBackAttachment, eCSSType_Value, kBackgroundAttachmentKTable)
00274 CSS_PROP_BACKGROUND(-moz-background-clip, _moz_background_clip, MozBackgroundClip, Color, mBackClip, eCSSType_Value, kBackgroundClipKTable)
00275 CSS_PROP_BACKGROUND(background-color, background_color, BackgroundColor, Color, mBackColor, eCSSType_Value, kBackgroundColorKTable)
00276 CSS_PROP_BACKGROUND(background-image, background_image, BackgroundImage, Color, mBackImage, eCSSType_Value, nsnull)
00277 CSS_PROP_BACKGROUND(-moz-background-inline-policy, _moz_background_inline_policy, MozBackgroundInlinePolicy, Color, mBackInlinePolicy, eCSSType_Value, kBackgroundInlinePolicyKTable)
00278 CSS_PROP_BACKGROUND(-moz-background-origin, _moz_background_origin, MozBackgroundOrigin, Color, mBackOrigin, eCSSType_Value, kBackgroundOriginKTable)
00279 CSS_PROP_SHORTHAND(background-position, background_position, BackgroundPosition)
00280 CSS_PROP_BACKGROUND(background-repeat, background_repeat, BackgroundRepeat, Color, mBackRepeat, eCSSType_Value, kBackgroundRepeatKTable)
00281 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00282 CSS_PROP_BACKGROUND(-x-background-x-position, background_x_position, BackgroundXPosition, Color, mBackPositionX, eCSSType_Value, kBackgroundXPositionKTable) // XXX bug 3935
00283 CSS_PROP_BACKGROUND(-x-background-y-position, background_y_position, BackgroundYPosition, Color, mBackPositionY, eCSSType_Value, kBackgroundYPositionKTable) // XXX bug 3935
00284 #endif /* !defined (CSS_PROP_LIST_EXCLUDE_INTERNAL) */
00285 CSS_PROP_DISPLAY(-moz-binding, binding, MozBinding, Display, mBinding, eCSSType_Value, nsnull) // XXX bug 3935
00286 CSS_PROP_SHORTHAND(border, border, Border)
00287 CSS_PROP_SHORTHAND(border-bottom, border_bottom, BorderBottom)
00288 CSS_PROP_BORDER(border-bottom-color, border_bottom_color, BorderBottomColor, Margin, mBorderColor.mBottom, eCSSType_Value, kBorderColorKTable)
00289 CSS_PROP_BORDER(-moz-border-bottom-colors, border_bottom_colors, MozBorderBottomColors, Margin, mBorderColors.mBottom, eCSSType_ValueList, nsnull)
00290 CSS_PROP_BORDER(border-bottom-style, border_bottom_style, BorderBottomStyle, Margin, mBorderStyle.mBottom, eCSSType_Value, kBorderStyleKTable)  // on/off will need reflow
00291 CSS_PROP_BORDER(border-bottom-width, border_bottom_width, BorderBottomWidth, Margin, mBorderWidth.mBottom, eCSSType_Value, kBorderWidthKTable)
00292 CSS_PROP_TABLEBORDER(border-collapse, border_collapse, BorderCollapse, Table, mBorderCollapse, eCSSType_Value, kBorderCollapseKTable)
00293 CSS_PROP_SHORTHAND(border-color, border_color, BorderColor)
00294 CSS_PROP_SHORTHAND(border-left, border_left, BorderLeft)
00295 CSS_PROP_BORDER(border-left-color, border_left_color, BorderLeftColor, Margin, mBorderColor.mLeft, eCSSType_Value, kBorderColorKTable)
00296 CSS_PROP_BORDER(-moz-border-left-colors, border_left_colors, MozBorderLeftColors, Margin, mBorderColors.mLeft, eCSSType_ValueList, nsnull)
00297 CSS_PROP_BORDER(border-left-style, border_left_style, BorderLeftStyle, Margin, mBorderStyle.mLeft, eCSSType_Value, kBorderStyleKTable)  // on/off will need reflow
00298 CSS_PROP_BORDER(border-left-width, border_left_width, BorderLeftWidth, Margin, mBorderWidth.mLeft, eCSSType_Value, kBorderWidthKTable)
00299 CSS_PROP_SHORTHAND(border-right, border_right, BorderRight)
00300 CSS_PROP_BORDER(border-right-color, border_right_color, BorderRightColor, Margin, mBorderColor.mRight, eCSSType_Value, kBorderColorKTable)
00301 CSS_PROP_BORDER(-moz-border-right-colors, border_right_colors, MozBorderRightColors, Margin, mBorderColors.mRight, eCSSType_ValueList, nsnull)
00302 CSS_PROP_BORDER(border-right-style, border_right_style, BorderRightStyle, Margin, mBorderStyle.mRight, eCSSType_Value, kBorderStyleKTable)  // on/off will need reflow
00303 CSS_PROP_BORDER(border-right-width, border_right_width, BorderRightWidth, Margin, mBorderWidth.mRight, eCSSType_Value, kBorderWidthKTable)
00304 CSS_PROP_TABLEBORDER(border-spacing, border_spacing, BorderSpacing, Table, mBorderSpacing, eCSSType_ValuePair, nsnull) // XXX bug 3935
00305 CSS_PROP_SHORTHAND(border-style, border_style, BorderStyle)  // on/off will need reflow
00306 CSS_PROP_SHORTHAND(border-top, border_top, BorderTop)
00307 CSS_PROP_BORDER(border-top-color, border_top_color, BorderTopColor, Margin, mBorderColor.mTop, eCSSType_Value, kBorderColorKTable)
00308 CSS_PROP_BORDER(-moz-border-top-colors, border_top_colors, MozBorderTopColors, Margin, mBorderColors.mTop, eCSSType_ValueList, nsnull)
00309 CSS_PROP_BORDER(border-top-style, border_top_style, BorderTopStyle, Margin, mBorderStyle.mTop, eCSSType_Value, kBorderStyleKTable)  // on/off will need reflow
00310 CSS_PROP_BORDER(border-top-width, border_top_width, BorderTopWidth, Margin, mBorderWidth.mTop, eCSSType_Value, kBorderWidthKTable)
00311 CSS_PROP_SHORTHAND(border-width, border_width, BorderWidth)
00312 CSS_PROP_POSITION(bottom, bottom, Bottom, Position, mOffset.mBottom, eCSSType_Value, nsnull)
00313 CSS_PROP_POSITION(-moz-box-sizing, box_sizing, MozBoxSizing, Position, mBoxSizing, eCSSType_Value, kBoxSizingKTable) // XXX bug 3935
00314 CSS_PROP_TABLEBORDER(caption-side, caption_side, CaptionSide, Table, mCaptionSide, eCSSType_Value, kCaptionSideKTable)
00315 CSS_PROP_DISPLAY(clear, clear, Clear, Display, mClear, eCSSType_Value, kClearKTable)
00316 CSS_PROP_DISPLAY(clip, clip, Clip, Display, mClip, eCSSType_Rect, nsnull)
00317 CSS_PROP_COLOR(color, color, Color, Color, mColor, eCSSType_Value, nsnull)
00318 CSS_PROP_COLUMN(-moz-column-count, _moz_column_count, MozColumnCount, Column, mColumnCount, eCSSType_Value, nsnull)
00319 CSS_PROP_COLUMN(-moz-column-width, _moz_column_width, MozColumnWidth, Column, mColumnWidth, eCSSType_Value, nsnull)
00320 CSS_PROP_COLUMN(-moz-column-gap, _moz_column_gap, MozColumnGap, Column, mColumnGap, eCSSType_Value, nsnull)
00321 CSS_PROP_CONTENT(content, content, Content, Content, mContent, eCSSType_ValueList, kContentKTable)
00322 CSS_PROP_CONTENT(counter-increment, counter_increment, CounterIncrement, Content, mCounterIncrement, eCSSType_CounterData, nsnull) // XXX bug 137285
00323 CSS_PROP_CONTENT(counter-reset, counter_reset, CounterReset, Content, mCounterReset, eCSSType_CounterData, nsnull) // XXX bug 137285
00324 CSS_PROP_SHORTHAND(cue, cue, Cue)
00325 CSS_PROP_BACKENDONLY(cue-after, cue_after, CueAfter, Aural, mCueAfter, eCSSType_Value, nsnull)
00326 CSS_PROP_BACKENDONLY(cue-before, cue_before, CueBefore, Aural, mCueBefore, eCSSType_Value, nsnull)
00327 CSS_PROP_USERINTERFACE(cursor, cursor, Cursor, UserInterface, mCursor, eCSSType_ValueList, kCursorKTable)
00328 CSS_PROP_VISIBILITY(direction, direction, Direction, Display, mDirection, eCSSType_Value, kDirectionKTable)
00329 CSS_PROP_DISPLAY(display, display, Display, Display, mDisplay, eCSSType_Value, kDisplayKTable)
00330 CSS_PROP_BACKENDONLY(elevation, elevation, Elevation, Aural, mElevation, eCSSType_Value, kElevationKTable)
00331 CSS_PROP_TABLEBORDER(empty-cells, empty_cells, EmptyCells, Table, mEmptyCells, eCSSType_Value, kEmptyCellsKTable)
00332 CSS_PROP_DISPLAY(float, float, CssFloat, Display, mFloat, eCSSType_Value, kFloatKTable)
00333 CSS_PROP_BORDER(-moz-float-edge, float_edge, MozFloatEdge, Margin, mFloatEdge, eCSSType_Value, kFloatEdgeKTable) // XXX bug 3935
00334 CSS_PROP_SHORTHAND(font, font, Font)
00335 CSS_PROP_FONT(font-family, font_family, FontFamily, Font, mFamily, eCSSType_Value, kFontKTable)
00336 CSS_PROP_FONT(font-size, font_size, FontSize, Font, mSize, eCSSType_Value, kFontSizeKTable)
00337 CSS_PROP_FONT(font-size-adjust, font_size_adjust, FontSizeAdjust, Font, mSizeAdjust, eCSSType_Value, nsnull)
00338 CSS_PROP_BACKENDONLY(font-stretch, font_stretch, FontStretch, Font, mStretch, eCSSType_Value, kFontStretchKTable)
00339 CSS_PROP_FONT(font-style, font_style, FontStyle, Font, mStyle, eCSSType_Value, kFontStyleKTable)
00340 CSS_PROP_FONT(font-variant, font_variant, FontVariant, Font, mVariant, eCSSType_Value, kFontVariantKTable)
00341 CSS_PROP_FONT(font-weight, font_weight, FontWeight, Font, mWeight, eCSSType_Value, kFontWeightKTable)
00342 CSS_PROP_UIRESET(-moz-force-broken-image-icon, force_broken_image_icon, MozForceBrokenImageIcon, UserInterface, mForceBrokenImageIcon, eCSSType_Value, nsnull) // bug 58646
00343 CSS_PROP_POSITION(height, height, Height, Position, mHeight, eCSSType_Value, nsnull)
00344 CSS_PROP_LIST(-moz-image-region, image_region, MozImageRegion, List, mImageRegion, eCSSType_Rect, nsnull)
00345 CSS_PROP_POSITION(left, left, Left, Position, mOffset.mLeft, eCSSType_Value, nsnull)
00346 CSS_PROP_TEXT(letter-spacing, letter_spacing, LetterSpacing, Text, mLetterSpacing, eCSSType_Value, nsnull)
00347 CSS_PROP_TEXT(line-height, line_height, LineHeight, Text, mLineHeight, eCSSType_Value, nsnull)
00348 CSS_PROP_SHORTHAND(list-style, list_style, ListStyle)
00349 CSS_PROP_LIST(list-style-image, list_style_image, ListStyleImage, List, mImage, eCSSType_Value, nsnull)
00350 CSS_PROP_LIST(list-style-position, list_style_position, ListStylePosition, List, mPosition, eCSSType_Value, kListStylePositionKTable)
00351 CSS_PROP_LIST(list-style-type, list_style_type, ListStyleType, List, mType, eCSSType_Value, kListStyleKTable)
00352 CSS_PROP_SHORTHAND(margin, margin, Margin)
00353 CSS_PROP_MARGIN(margin-bottom, margin_bottom, MarginBottom, Margin, mMargin.mBottom, eCSSType_Value, nsnull)
00354 CSS_PROP_SHORTHAND(-moz-margin-end, margin_end, MozMarginEnd)
00355 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00356 CSS_PROP_MARGIN(margin-end-value, margin_end_value, X, Margin, mMarginEnd, eCSSType_Value, nsnull)
00357 #endif
00358 CSS_PROP_SHORTHAND(margin-left, margin_left, MarginLeft)
00359 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00360 CSS_PROP_MARGIN(margin-left-value, margin_left_value, X, Margin, mMargin.mLeft, eCSSType_Value, nsnull)
00361 CSS_PROP_MARGIN(margin-left-ltr-source, margin_left_ltr_source, X, Margin, mMarginLeftLTRSource, eCSSType_Value, kBoxPropSourceKTable)
00362 CSS_PROP_MARGIN(margin-left-rtl-source, margin_left_rtl_source, X, Margin, mMarginLeftRTLSource, eCSSType_Value, kBoxPropSourceKTable)
00363 #endif
00364 CSS_PROP_SHORTHAND(margin-right, margin_right, MarginRight)
00365 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00366 CSS_PROP_MARGIN(margin-right-value, margin_right_value, X, Margin, mMargin.mRight, eCSSType_Value, nsnull)
00367 CSS_PROP_MARGIN(margin-right-ltr-source, margin_right_ltr_source, X, Margin, mMarginRightLTRSource, eCSSType_Value, kBoxPropSourceKTable)
00368 CSS_PROP_MARGIN(margin-right-rtl-source, margin_right_rtl_source, X, Margin, mMarginRightRTLSource, eCSSType_Value, kBoxPropSourceKTable)
00369 #endif
00370 CSS_PROP_SHORTHAND(-moz-margin-start, margin_start, MozMarginStart)
00371 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00372 CSS_PROP_MARGIN(margin-start-value, margin_start_value, X, Margin, mMarginStart, eCSSType_Value, nsnull)
00373 #endif
00374 CSS_PROP_MARGIN(margin-top, margin_top, MarginTop, Margin, mMargin.mTop, eCSSType_Value, nsnull)
00375 CSS_PROP_CONTENT(marker-offset, marker_offset, MarkerOffset, Content, mMarkerOffset, eCSSType_Value, nsnull)
00376 CSS_PROP_BACKENDONLY(marks, marks, Marks, Page, mMarks, eCSSType_Value, kPageMarksKTable)
00377 CSS_PROP_POSITION(max-height, max_height, MaxHeight, Position, mMaxHeight, eCSSType_Value, nsnull)
00378 CSS_PROP_POSITION(max-width, max_width, MaxWidth, Position, mMaxWidth, eCSSType_Value, nsnull)
00379 CSS_PROP_POSITION(min-height, min_height, MinHeight, Position, mMinHeight, eCSSType_Value, nsnull)
00380 CSS_PROP_POSITION(min-width, min_width, MinWidth, Position, mMinWidth, eCSSType_Value, nsnull)
00381 CSS_PROP_DISPLAY(opacity, opacity, Opacity, Display, mOpacity, eCSSType_Value, nsnull) // XXX bug 3935
00382 CSS_PROP_BACKENDONLY(orphans, orphans, Orphans, Breaks, mOrphans, eCSSType_Value, nsnull)
00383 CSS_PROP_SHORTHAND(outline, outline, Outline)
00384 CSS_PROP_OUTLINE(outline-color, outline_color, OutlineColor, Margin, mOutlineColor, eCSSType_Value, kOutlineColorKTable)
00385 CSS_PROP_OUTLINE(outline-style, outline_style, OutlineStyle, Margin, mOutlineStyle, eCSSType_Value, kBorderStyleKTable)
00386 CSS_PROP_OUTLINE(outline-width, outline_width, OutlineWidth, Margin, mOutlineWidth, eCSSType_Value, kBorderWidthKTable)
00387 CSS_PROP_OUTLINE(outline-offset, outline_offset, OutlineOffset, Margin, mOutlineOffset, eCSSType_Value, nsnull)
00388 CSS_PROP_SHORTHAND(overflow, overflow, Overflow)
00389 CSS_PROP_DISPLAY(overflow-x, overflow_x, OverflowX, Display, mOverflowX, eCSSType_Value, kOverflowSubKTable)
00390 CSS_PROP_DISPLAY(overflow-y, overflow_y, OverflowY, Display, mOverflowY, eCSSType_Value, kOverflowSubKTable)
00391 CSS_PROP_SHORTHAND(padding, padding, Padding)
00392 CSS_PROP_PADDING(padding-bottom, padding_bottom, PaddingBottom, Margin, mPadding.mBottom, eCSSType_Value, nsnull)
00393 CSS_PROP_SHORTHAND(-moz-padding-end, padding_end, MozPaddingEnd)
00394 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00395 CSS_PROP_PADDING(padding-end-value, padding_end_value, X, Margin, mPaddingEnd, eCSSType_Value, nsnull)
00396 #endif
00397 CSS_PROP_SHORTHAND(padding-left, padding_left, PaddingLeft)
00398 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00399 CSS_PROP_PADDING(padding-left-value, padding_left_value, X, Margin, mPadding.mLeft, eCSSType_Value, nsnull)
00400 CSS_PROP_PADDING(padding-left-ltr-source, padding_left_ltr_source, X, Margin, mPaddingLeftLTRSource, eCSSType_Value, kBoxPropSourceKTable)
00401 CSS_PROP_PADDING(padding-left-rtl-source, padding_left_rtl_source, X, Margin, mPaddingLeftRTLSource, eCSSType_Value, kBoxPropSourceKTable)
00402 #endif
00403 CSS_PROP_SHORTHAND(padding-right, padding_right, PaddingRight)
00404 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00405 CSS_PROP_PADDING(padding-right-value, padding_right_value, X, Margin, mPadding.mRight, eCSSType_Value, nsnull)
00406 CSS_PROP_PADDING(padding-right-ltr-source, padding_right_ltr_source, X, Margin, mPaddingRightLTRSource, eCSSType_Value, kBoxPropSourceKTable)
00407 CSS_PROP_PADDING(padding-right-rtl-source, padding_right_rtl_source, X, Margin, mPaddingRightRTLSource, eCSSType_Value, kBoxPropSourceKTable)
00408 #endif
00409 CSS_PROP_SHORTHAND(-moz-padding-start, padding_start, MozPaddingStart)
00410 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00411 CSS_PROP_PADDING(padding-start-value, padding_start_value, X, Margin, mPaddingStart, eCSSType_Value, nsnull)
00412 #endif
00413 CSS_PROP_PADDING(padding-top, padding_top, PaddingTop, Margin, mPadding.mTop, eCSSType_Value, nsnull)
00414 CSS_PROP_BACKENDONLY(page, page, Page, Breaks, mPage, eCSSType_Value, nsnull)
00415 CSS_PROP_DISPLAY(page-break-after, page_break_after, PageBreakAfter, Display, mBreakAfter, eCSSType_Value, kPageBreakKTable) // temp fix for bug 24000
00416 CSS_PROP_DISPLAY(page-break-before, page_break_before, PageBreakBefore, Display, mBreakBefore, eCSSType_Value, kPageBreakKTable) // temp fix for bug 24000
00417 CSS_PROP_BACKENDONLY(page-break-inside, page_break_inside, PageBreakInside, Breaks, mPageBreakInside, eCSSType_Value, kPageBreakInsideKTable)
00418 CSS_PROP_SHORTHAND(pause, pause, Pause)
00419 CSS_PROP_BACKENDONLY(pause-after, pause_after, PauseAfter, Aural, mPauseAfter, eCSSType_Value, nsnull)
00420 CSS_PROP_BACKENDONLY(pause-before, pause_before, PauseBefore, Aural, mPauseBefore, eCSSType_Value, nsnull)
00421 CSS_PROP_BACKENDONLY(pitch, pitch, Pitch, Aural, mPitch, eCSSType_Value, kPitchKTable)
00422 CSS_PROP_BACKENDONLY(pitch-range, pitch_range, PitchRange, Aural, mPitchRange, eCSSType_Value, nsnull)
00423 CSS_PROP_DISPLAY(position, position, Position, Display, mPosition, eCSSType_Value, kPositionKTable)
00424 CSS_PROP_QUOTES(quotes, quotes, Quotes, Content, mQuotes, eCSSType_Quotes, nsnull)
00425 CSS_PROP_BACKENDONLY(richness, richness, Richness, Aural, mRichness, eCSSType_Value, nsnull)
00426 CSS_PROP_POSITION(right, right, Right, Position, mOffset.mRight, eCSSType_Value, nsnull)
00427 CSS_PROP_BACKENDONLY(size, size, Size, Page, mSize, eCSSType_ValuePair, kPageSizeKTable)
00428 CSS_PROP_BACKENDONLY(speak, speak, Speak, Aural, mSpeak, eCSSType_Value, kSpeakKTable)
00429 CSS_PROP_BACKENDONLY(speak-header, speak_header, SpeakHeader, Aural, mSpeakHeader, eCSSType_Value, kSpeakHeaderKTable)
00430 CSS_PROP_BACKENDONLY(speak-numeral, speak_numeral, SpeakNumeral, Aural, mSpeakNumeral, eCSSType_Value, kSpeakNumeralKTable)
00431 CSS_PROP_BACKENDONLY(speak-punctuation, speak_punctuation, SpeakPunctuation, Aural, mSpeakPunctuation, eCSSType_Value, kSpeakPunctuationKTable)
00432 CSS_PROP_BACKENDONLY(speech-rate, speech_rate, SpeechRate, Aural, mSpeechRate, eCSSType_Value, kSpeechRateKTable)
00433 CSS_PROP_BACKENDONLY(stress, stress, Stress, Aural, mStress, eCSSType_Value, nsnull)
00434 CSS_PROP_TABLE(table-layout, table_layout, TableLayout, Table, mLayout, eCSSType_Value, kTableLayoutKTable)
00435 CSS_PROP_TEXT(text-align, text_align, TextAlign, Text, mTextAlign, eCSSType_Value, kTextAlignKTable)
00436 CSS_PROP_TEXTRESET(text-decoration, text_decoration, TextDecoration, Text, mDecoration, eCSSType_Value, kTextDecorationKTable)
00437 CSS_PROP_TEXT(text-indent, text_indent, TextIndent, Text, mTextIndent, eCSSType_Value, nsnull)
00438 CSS_PROP_BACKENDONLY(text-shadow, text_shadow, TextShadow, Text, mTextShadow, eCSSType_Shadow, nsnull)
00439 CSS_PROP_TEXT(text-transform, text_transform, TextTransform, Text, mTextTransform, eCSSType_Value, kTextTransformKTable)
00440 CSS_PROP_POSITION(top, top, Top, Position, mOffset.mTop, eCSSType_Value, nsnull)
00441 CSS_PROP_TEXTRESET(unicode-bidi, unicode_bidi, UnicodeBidi, Text, mUnicodeBidi, eCSSType_Value, kUnicodeBidiKTable)
00442 CSS_PROP_USERINTERFACE(-moz-user-focus, user_focus, MozUserFocus, UserInterface, mUserFocus, eCSSType_Value, kUserFocusKTable) // XXX bug 3935
00443 CSS_PROP_USERINTERFACE(-moz-user-input, user_input, MozUserInput, UserInterface, mUserInput, eCSSType_Value, kUserInputKTable) // XXX ??? // XXX bug 3935
00444 CSS_PROP_USERINTERFACE(-moz-user-modify, user_modify, MozUserModify, UserInterface, mUserModify, eCSSType_Value, kUserModifyKTable) // XXX bug 3935
00445 CSS_PROP_UIRESET(-moz-user-select, user_select, MozUserSelect, UserInterface, mUserSelect, eCSSType_Value, kUserSelectKTable) // XXX bug 3935
00446 CSS_PROP_TEXTRESET(vertical-align, vertical_align, VerticalAlign, Text, mVerticalAlign, eCSSType_Value, kVerticalAlignKTable)
00447 CSS_PROP_VISIBILITY(visibility, visibility, Visibility, Display, mVisibility, eCSSType_Value, kVisibilityKTable)  // reflow for collapse
00448 CSS_PROP_BACKENDONLY(voice-family, voice_family, VoiceFamily, Aural, mVoiceFamily, eCSSType_Value, nsnull)
00449 CSS_PROP_BACKENDONLY(volume, volume, Volume, Aural, mVolume, eCSSType_Value, kVolumeKTable)
00450 CSS_PROP_TEXT(white-space, white_space, WhiteSpace, Text, mWhiteSpace, eCSSType_Value, kWhitespaceKTable)
00451 CSS_PROP_BACKENDONLY(widows, widows, Widows, Breaks, mWidows, eCSSType_Value, nsnull)
00452 CSS_PROP_POSITION(width, width, Width, Position, mWidth, eCSSType_Value, nsnull)
00453 CSS_PROP_TEXT(word-spacing, word_spacing, WordSpacing, Text, mWordSpacing, eCSSType_Value, nsnull)
00454 CSS_PROP_POSITION(z-index, z_index, ZIndex, Position, mZIndex, eCSSType_Value, nsnull)
00455 
00456 CSS_PROP_XUL(-moz-box-align, box_align, MozBoxAlign, XUL, mBoxAlign, eCSSType_Value, kBoxAlignKTable) // XXX bug 3935
00457 CSS_PROP_XUL(-moz-box-direction, box_direction, MozBoxDirection, XUL, mBoxDirection, eCSSType_Value, kBoxDirectionKTable) // XXX bug 3935
00458 CSS_PROP_XUL(-moz-box-flex, box_flex, MozBoxFlex, XUL, mBoxFlex, eCSSType_Value, nsnull) // XXX bug 3935
00459 CSS_PROP_XUL(-moz-box-orient, box_orient, MozBoxOrient, XUL, mBoxOrient, eCSSType_Value, kBoxOrientKTable) // XXX bug 3935
00460 CSS_PROP_XUL(-moz-box-pack, box_pack, MozBoxPack, XUL, mBoxPack, eCSSType_Value, kBoxPackKTable) // XXX bug 3935
00461 CSS_PROP_XUL(-moz-box-ordinal-group, box_ordinal_group, MozBoxOrdinalGroup, XUL, mBoxOrdinal, eCSSType_Value, nsnull)
00462 
00463 #ifdef MOZ_SVG
00464 // XXX treat SVG's CSS Properties as internal for now.
00465 // Do we want to create an nsIDOMSVGCSS2Properties interface?
00466 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
00467 CSS_PROP_SVGRESET(clip-path, clip_path, ClipPath, SVG, mClipPath, eCSSType_Value, nsnull)
00468 CSS_PROP_SVG(clip-rule, clip_rule, ClipRule, SVG, mClipRule, eCSSType_Value, kFillRuleKTable)
00469 CSS_PROP_SVGRESET(dominant-baseline, dominant_baseline, DominantBaseline, SVG, mDominantBaseline, eCSSType_Value, kDominantBaselineKTable)
00470 CSS_PROP_SVG(fill, fill, Fill, SVG, mFill, eCSSType_Value, nsnull)
00471 CSS_PROP_SVG(fill-opacity, fill_opacity, FillOpacity, SVG, mFillOpacity, eCSSType_Value, nsnull)
00472 CSS_PROP_SVG(fill-rule, fill_rule, FillRule, SVG, mFillRule, eCSSType_Value, kFillRuleKTable)
00473 CSS_PROP_SHORTHAND(marker, marker, Marker)
00474 CSS_PROP_SVG(marker-end, marker_end, MarkerEnd, SVG, mMarkerEnd, eCSSType_Value, nsnull)
00475 CSS_PROP_SVG(marker-mid, marker_mid, MarkerMid, SVG, mMarkerMid, eCSSType_Value, nsnull)
00476 CSS_PROP_SVG(marker-start, marker_start, MarkerStart, SVG, mMarkerStart, eCSSType_Value, nsnull)
00477 CSS_PROP_SVG(pointer-events, pointer_events, PointerEvents, SVG, mPointerEvents, eCSSType_Value, kPointerEventsKTable)
00478 CSS_PROP_SVG(shape-rendering, shape_rendering, ShapeRendering, SVG, mShapeRendering, eCSSType_Value, kShapeRenderingKTable)
00479 CSS_PROP_SVGRESET(stop-color, stop_color, StopColor, SVG, mStopColor, eCSSType_Value, nsnull)
00480 CSS_PROP_SVGRESET(stop-opacity, stop_opacity, StopOpacity, SVG, mStopOpacity, eCSSType_Value, nsnull)
00481 CSS_PROP_SVG(stroke, stroke, Stroke, SVG, mStroke, eCSSType_Value, nsnull)
00482 CSS_PROP_SVG(stroke-dasharray, stroke_dasharray, StrokeDasharray, SVG, mStrokeDasharray, eCSSType_ValueList, nsnull)
00483 CSS_PROP_SVG(stroke-dashoffset, stroke_dashoffset, StrokeDashoffset, SVG, mStrokeDashoffset, eCSSType_Value, nsnull)
00484 CSS_PROP_SVG(stroke-linecap, stroke_linecap, StrokeLinecap, SVG, mStrokeLinecap, eCSSType_Value, kStrokeLinecapKTable)
00485 CSS_PROP_SVG(stroke-linejoin, stroke_linejoin, StrokeLinejoin, SVG, mStrokeLinejoin, eCSSType_Value, kStrokeLinejoinKTable)
00486 CSS_PROP_SVG(stroke-miterlimit, stroke_miterlimit, StrokeMiterlimit, SVG, mStrokeMiterlimit, eCSSType_Value, nsnull)
00487 CSS_PROP_SVG(stroke-opacity, stroke_opacity, StrokeOpacity, SVG, mStrokeOpacity, eCSSType_Value, nsnull)
00488 CSS_PROP_SVG(stroke-width, stroke_width, StrokeWidth, SVG, mStrokeWidth, eCSSType_Value, nsnull)
00489 CSS_PROP_SVG(text-anchor, text_anchor, TextAnchor, SVG, mTextAnchor, eCSSType_Value, kTextAnchorKTable)
00490 CSS_PROP_SVG(text-rendering, text_rendering, TextRendering, SVG, mTextRendering, eCSSType_Value, kTextRenderingKTable)
00491 #endif /* !defined (CSS_PROP_LIST_EXCLUDE_INTERNAL) */
00492 #endif
00493 
00494 // Callers that want information on the properties that are in
00495 // the style structs but not in the nsCSS* structs should define
00496 // |CSS_PROP_INCLUDE_NOT_CSS|.  (Some of these are also in nsRuleData*,
00497 // and a distinction might be needed at some point.)
00498 // The first 3 parameters don't matter, but some compilers don't like
00499 // empty arguments to macros.
00500 #ifdef CSS_PROP_INCLUDE_NOT_CSS
00501 CSS_PROP_VISIBILITY(X, X, X, Display, mLang, eCSSType_Value, nsnull)
00502 CSS_PROP_TABLE(X, X, X, Table, mFrame, eCSSType_Value, nsnull)
00503 CSS_PROP_TABLE(X, X, X, Table, mRules, eCSSType_Value, nsnull)
00504 CSS_PROP_TABLE(X, X, X, Table, mCols, eCSSType_Value, nsnull)
00505 CSS_PROP_TABLE(X, X, X, Table, mSpan, eCSSType_Value, nsnull)
00506 #endif /* defined(CSS_PROP_INCLUDE_NOT_CSS) */
00507 
00508 #ifdef USED_CSS_PROP
00509 
00510 #undef USED_CSS_PROP
00511 #undef CSS_PROP_FONT
00512 #undef CSS_PROP_COLOR
00513 #undef CSS_PROP_BACKGROUND
00514 #undef CSS_PROP_LIST
00515 #undef CSS_PROP_POSITION
00516 #undef CSS_PROP_TEXT
00517 #undef CSS_PROP_TEXTRESET
00518 #undef CSS_PROP_DISPLAY
00519 #undef CSS_PROP_VISIBILITY
00520 #undef CSS_PROP_CONTENT
00521 #undef CSS_PROP_QUOTES
00522 #undef CSS_PROP_USERINTERFACE
00523 #undef CSS_PROP_UIRESET
00524 #undef CSS_PROP_TABLE
00525 #undef CSS_PROP_TABLEBORDER
00526 #undef CSS_PROP_MARGIN
00527 #undef CSS_PROP_PADDING
00528 #undef CSS_PROP_BORDER
00529 #undef CSS_PROP_OUTLINE
00530 #undef CSS_PROP_XUL
00531 #undef CSS_PROP_COLUMN
00532 #undef CSS_PROP_SVG
00533 #undef CSS_PROP_SVGRESET
00534 #ifdef DEFINED_CSS_PROP_BACKENDONLY
00535 #undef CSS_PROP_BACKENDONLY
00536 #undef DEFINED_CSS_PROP_BACKENDONLY
00537 #endif
00538 
00539 #else /* !defined(USED_CSS_PROP) */
00540 
00541 #ifdef DEFINED_CSS_PROP_FONT
00542 #undef CSS_PROP_FONT
00543 #undef DEFINED_CSS_PROP_FONT
00544 #endif
00545 #ifdef DEFINED_CSS_PROP_COLOR
00546 #undef CSS_PROP_COLOR
00547 #undef DEFINED_CSS_PROP_COLOR
00548 #endif
00549 #ifdef DEFINED_CSS_PROP_BACKGROUND
00550 #undef CSS_PROP_BACKGROUND
00551 #undef DEFINED_CSS_PROP_BACKGROUND
00552 #endif
00553 #ifdef DEFINED_CSS_PROP_LIST
00554 #undef CSS_PROP_LIST
00555 #undef DEFINED_CSS_PROP_LIST
00556 #endif
00557 #ifdef DEFINED_CSS_PROP_POSITION
00558 #undef CSS_PROP_POSITION
00559 #undef DEFINED_CSS_PROP_POSITION
00560 #endif
00561 #ifdef DEFINED_CSS_PROP_TEXT
00562 #undef CSS_PROP_TEXT
00563 #undef DEFINED_CSS_PROP_TETEXTRESETT
00564 #endif
00565 #ifdef DEFINED_CSS_PROP_TEXTRESET
00566 #undef CSS_PROP_TEXTRESET
00567 #undef DEFINED_CSS_PROP_TEDISPLAYTRESET
00568 #endif
00569 #ifdef DEFINED_CSS_PROP_DISPLAY
00570 #undef CSS_PROP_DISPLAY
00571 #undef DEFINED_CSS_PROP_DISPLAY
00572 #endif
00573 #ifdef DEFINED_CSS_PROP_VISIBILITY
00574 #undef CSS_PROP_VISIBILITY
00575 #undef DEFINED_CSS_PROP_VISIBILITY
00576 #endif
00577 #ifdef DEFINED_CSS_PROP_CONTENT
00578 #undef CSS_PROP_CONTENT
00579 #undef DEFINED_CSS_PROP_CONTENT
00580 #endif
00581 #ifdef DEFINED_CSS_PROP_QUOTES
00582 #undef CSS_PROP_QUOTES
00583 #undef DEFINED_CSS_PROP_QUOTES
00584 #endif
00585 #ifdef DEFINED_CSS_PROP_USERINTERFACE
00586 #undef CSS_PROP_USERINTERFACE
00587 #undef DEFINED_CSS_PROP_USERINTERFACE
00588 #endif
00589 #ifdef DEFINED_CSS_PROP_UIRESET
00590 #undef CSS_PROP_UIRESET
00591 #undef DEFINED_CSS_PROP_UIRESET
00592 #endif
00593 #ifdef DEFINED_CSS_PROP_TABLE
00594 #undef CSS_PROP_TABLE
00595 #undef DEFINED_CSS_PROP_TABLE
00596 #endif
00597 #ifdef DEFINED_CSS_PROP_TABLEBORDER
00598 #undef CSS_PROP_TABLEBORDER
00599 #undef DEFINED_CSS_PROP_TABLEBORDER
00600 #endif
00601 #ifdef DEFINED_CSS_PROP_MARGIN
00602 #undef CSS_PROP_MARGIN
00603 #undef DEFINED_CSS_PROP_MARGIN
00604 #endif
00605 #ifdef DEFINED_CSS_PROP_PADDING
00606 #undef CSS_PROP_PADDING
00607 #undef DEFINED_CSS_PROP_PADDING
00608 #endif
00609 #ifdef DEFINED_CSS_PROP_BORDER
00610 #undef CSS_PROP_BORDER
00611 #undef DEFINED_CSS_PROP_BORDER
00612 #endif
00613 #ifdef DEFINED_CSS_PROP_OUTLINE
00614 #undef CSS_PROP_OUTLINE
00615 #undef DEFINED_CSS_PROP_OUTLINE
00616 #endif
00617 #ifdef DEFINED_CSS_PROP_XUL
00618 #undef CSS_PROP_XUL
00619 #undef DEFINED_CSS_PROP_XUL
00620 #endif
00621 #ifdef DEFINED_CSS_PROP_COLUMN
00622 #undef CSS_PROP_COLUMN
00623 #undef DEFINED_CSS_PROP_COLUMN
00624 #endif
00625 #ifdef DEFINED_CSS_PROP_SVG
00626 #undef CSS_PROP_SVG
00627 #undef DEFINED_CSS_PROP_SVG
00628 #endif
00629 #ifdef DEFINED_CSS_PROP_SVGRESET
00630 #undef CSS_PROP_SVGRESET
00631 #undef DEFINED_CSS_PROP_SVGRESET
00632 #endif
00633 #ifdef DEFINED_CSS_PROP_BACKENDONLY
00634 #undef CSS_PROP_BACKENDONLY
00635 #undef DEFINED_CSS_PROP_BACKENDONLY
00636 #endif
00637 
00638 #endif /* !defined(USED_CSS_PROP) */
00639 
00640 #ifdef DEFINED_CSS_PROP_NOTIMPLEMENTED
00641 #undef CSS_PROP_NOTIMPLEMENTED
00642 #undef DEFINED_CSS_PROP_NOTIMPLEMENTED
00643 #endif
00644 
00645 #ifdef DEFINED_CSS_PROP_SHORTHAND
00646 #undef CSS_PROP_SHORTHAND
00647 #undef DEFINED_CSS_PROP_SHORTHAND
00648 #endif