File indexing completed on 2024-04-28 11:37:41

0001 /*
0002  * This file is part of the DOM implementation for KDE.
0003  *
0004  * Copyright 1999 Lars Knoll (knoll@kde.org)
0005  *
0006  * This library is free software; you can redistribute it and/or
0007  * modify it under the terms of the GNU Library General Public
0008  * License as published by the Free Software Foundation; either
0009  * version 2 of the License, or (at your option) any later version.
0010  *
0011  * This library is distributed in the hope that it will be useful,
0012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
0013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0014  * Library General Public License for more details.
0015  *
0016  * You should have received a copy of the GNU Library General Public License
0017  * along with this library; see the file COPYING.LIB.  If not, write to
0018  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0019  * Boston, MA 02110-1301, USA.
0020  *
0021  * This file includes excerpts from the Document Object Model (DOM)
0022  * Level 2 Specification (Candidate Recommendation)
0023  * https://www.w3.org/TR/2000/CR-DOM-Level-2-20000510/
0024  * Copyright © 2000 W3C® (MIT, INRIA, Keio), All Rights Reserved.
0025  *
0026  */
0027 #ifndef _CSS_css_extensions_h_
0028 #define _CSS_css_extensions_h_
0029 
0030 #include <css_value.h>
0031 #include <dom/dom_string.h>
0032 
0033 namespace DOM
0034 {
0035 
0036 /**
0037  * The \c CSS2Azimuth interface represents the <a
0038  * href="https://www.w3.org/TR/CSS2/aural.html#propdef-azimuth">
0039  * azimuth </a> CSS Level 2 property.
0040  *
0041  */
0042 class CSS2Azimuth : public CSSValue
0043 {
0044 public:
0045     CSS2Azimuth();
0046     CSS2Azimuth(const CSS2Azimuth &other);
0047     CSS2Azimuth(CSS2AzimuthImpl *impl);
0048 public:
0049 
0050     CSS2Azimuth &operator = (const CSS2Azimuth &other);
0051 
0052     ~CSS2Azimuth();
0053 
0054     /**
0055      * A code defining the type of the value as defined in
0056      * \c CSSValue . It would be one of \c CSS_DEG ,
0057      * \c CSS_RAD , \c CSS_GRAD or
0058      * \c CSS_IDENT .
0059      *
0060      */
0061     unsigned short azimuthType() const;
0062 
0063     /**
0064      * If \c azimuthType is \c CSS_IDENT ,
0065      * \c identifier contains one of left-side, far-left,
0066      * left, center-left, center, center-right, right, far-right,
0067      * right-side, leftwards, rightwards. The empty string if none is
0068      * set.
0069      *
0070      */
0071     DOM::DOMString identifier() const;
0072 
0073     /**
0074      * \c behind indicates whether the behind identifier
0075      * has been set.
0076      *
0077      */
0078     bool behind() const;
0079 
0080     /**
0081      * A method to set the angle value with a specified unit. This
0082      * method will unset any previously set identifiers values.
0083      *
0084      * @param unitType The unitType could only be one of
0085      * \c CSS_DEG , \c CSS_RAD or \c CSS_GRAD ).
0086      *
0087      * @param floatValue The new float value of the angle.
0088      *
0089      * @return
0090      * @exception DOMException
0091      * INVALID_ACCESS_ERR: Raised if the unit type is invalid.
0092      *
0093      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
0094      * readonly.
0095      *
0096      */
0097     void setAngleValue(const unsigned short unitType, const float floatValue);
0098 
0099     /**
0100      * Used to retrieved the float value of the azimuth property.
0101      *
0102      * @param unitType The unit type can be only an angle unit type (
0103      * \c CSS_DEG , \c CSS_RAD or
0104      * \c CSS_GRAD ).
0105      *
0106      * @return The float value.
0107      *
0108      * @exception DOMException
0109      * INVALID_ACCESS_ERR: Raised if the unit type is invalid.
0110      *
0111      */
0112     float getAngleValue(const unsigned short unitType);
0113 
0114     /**
0115      * Setting the identifier for the azimuth property will unset any
0116      * previously set angle value. The value of \c azimuthType
0117      * is set to \c CSS_IDENT
0118      *
0119      * @param identifier The new identifier. If the identifier is
0120      * "leftwards" or "rightward", the behind attribute is ignored.
0121      *
0122      * @param behind The new value for behind.
0123      *
0124      * @return
0125      * @exception DOMException
0126      * SYNTAX_ERR: Raised if the specified \c identifier
0127      * has a syntax error and is unparsable.
0128      *
0129      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this property is
0130      * readonly.
0131      *
0132      */
0133     void setIdentifier(const DOM::DOMString &identifier, const bool behind);
0134 };
0135 
0136 class CSS2BackgroundPositionImpl;
0137 
0138 /**
0139  * The \c CSS2BackgroundPosition interface represents the
0140  * <a
0141  * href="https://www.w3.org/TR/CSS2/colors.html#propdef-background-position">
0142  * background-position </a> CSS Level 2 property.
0143  *
0144  */
0145 class CSS2BackgroundPosition : public CSSValue
0146 {
0147 public:
0148     CSS2BackgroundPosition();
0149     CSS2BackgroundPosition(const CSS2BackgroundPosition &other);
0150     CSS2BackgroundPosition(CSS2BackgroundPositionImpl *impl);
0151 public:
0152 
0153     CSS2BackgroundPosition &operator = (const CSS2BackgroundPosition &other);
0154 
0155     ~CSS2BackgroundPosition();
0156 
0157     /**
0158      * A code defining the type of the horizontal value. It would be
0159      * one \c CSS_PERCENTAGE , \c CSS_EMS ,
0160      * \c CSS_EXS , \c CSS_PX , \c CSS_CM ,
0161      * \c CSS_MM , \c CSS_IN ,
0162      * \c CSS_PT , \c CSS_PC ,
0163      * \c CSS_IDENT , \c CSS_INHERIT . If one of
0164      * horizontal or vertical is \c CSS_IDENT or
0165      * \c CSS_INHERIT , it's guaranteed that the other is the
0166      * same.
0167      *
0168      */
0169     unsigned short horizontalType() const;
0170 
0171     /**
0172      * A code defining the type of the horizontal value. The code can
0173      * be one of the following units : \c CSS_PERCENTAGE ,
0174      * \c CSS_EMS , \c CSS_EXS , \c CSS_PX
0175      *  , \c CSS_CM , \c CSS_MM ,
0176      * \c CSS_IN , \c CSS_PT , \c CSS_PC
0177      * , \c CSS_IDENT , \c CSS_INHERIT
0178      * . If one of horizontal or vertical is \c CSS_IDENT
0179      * or \c CSS_INHERIT , it's guaranteed that the other
0180      * is the same.
0181      *
0182      */
0183     unsigned short verticalType() const;
0184 
0185     /**
0186      * If \c horizontalType is \c CSS_IDENT or
0187      * \c CSS_INHERIT , this attribute contains the string
0188      * representation of the ident, otherwise it contains an empty
0189      * string.
0190      *
0191      */
0192     DOM::DOMString horizontalIdentifier() const;
0193 
0194     /**
0195      * If \c verticalType is \c CSS_IDENT or
0196      * \c CSS_INHERIT , this attribute contains the string
0197      * representation of the ident, otherwise it contains an empty
0198      * string. The value is \c "center" if only the
0199      * horizontalIdentifier has been set. The value is
0200      * \c "inherit" if the horizontalIdentifier is
0201      * \c "inherit" .
0202      *
0203      */
0204     DOM::DOMString verticalIdentifier() const;
0205 
0206     /**
0207      * This method is used to get the float value in a specified unit
0208      * if the \c horizontalPosition represents a length or
0209      * a percentage. If the float doesn't contain a float value or
0210      * can't be converted into the specified unit, a
0211      * \c DOMException is raised.
0212      *
0213      * @param horizontalType The specified unit.
0214      *
0215      * @return The float value.
0216      *
0217      * @exception DOMException
0218      * INVALID_ACCESS_ERR: Raises if the property doesn't contain a
0219      * float or the value can't be converted.
0220      *
0221      */
0222     float getHorizontalPosition(const float horizontalType);
0223 
0224     /**
0225      * This method is used to get the float value in a specified unit
0226      * if the \c verticalPosition represents a length or a
0227      * percentage. If the float doesn't contain a float value or can't
0228      * be converted into the specified unit, a \c DOMException
0229      * is raised. The value is \c 50% if only the
0230      * horizontal value has been specified.
0231      *
0232      * @param verticalType The specified unit.
0233      *
0234      * @return The float value.
0235      *
0236      * @exception DOMException
0237      * INVALID_ACCESS_ERR: Raises if the property doesn't contain a
0238      * float or the value can't be converted.
0239      *
0240      */
0241     float getVerticalPosition(const float verticalType);
0242 
0243     /**
0244      * This method is used to set the horizontal position with a
0245      * specified unit. If the vertical value is not a percentage or a
0246      * length, it sets the vertical position to \c 50% .
0247      *
0248      * @param horizontalType The specified unit (a length or a
0249      * percentage).
0250      *
0251      * @param value The new value.
0252      *
0253      * @return
0254      * @exception DOMException
0255      * INVALID_ACCESS_ERR: Raises if the specified unit is not a
0256      * length or a percentage.
0257      *
0258      *  NO_MODIFICATION_ALLOWED_ERR: Raises if this property is
0259      * readonly.
0260      *
0261      */
0262     void setHorizontalPosition(const unsigned short horizontalType, const float value);
0263 
0264     /**
0265      * This method is used to set the vertical position with a
0266      * specified unit. If the horizontal value is not a percentage or
0267      * a length, it sets the vertical position to \c 50% .
0268      *
0269      * @param verticalType The specified unit (a length or a
0270      * percentage).
0271      *
0272      * @param value The new value.
0273      *
0274      * @return
0275      * @exception DOMException
0276      * INVALID_ACCESS_ERR: Raises if the specified unit is not a
0277      * length or a percentage.
0278      *
0279      *  NO_MODIFICATION_ALLOWED_ERR: Raises if this property is
0280      * readonly.
0281      *
0282      */
0283     void setVerticalPosition(const unsigned short verticalType, const float value);
0284 
0285     /**
0286      * Sets the identifiers. If the second identifier is the empty
0287      * string, the vertical identifier is set to his default value (
0288      * \c "center" ). If the first identfier is
0289      * \c "inherit , the second identifier is ignored and is set
0290      * to \c "inherit" .
0291      *
0292      * @param horizontalIdentifier The new horizontal identifier.
0293      *
0294      * @param verticalIdentifier The new vertical identifier.
0295      *
0296      * @return
0297      * @exception DOMException
0298      * SYNTAX_ERR: Raises if the identifiers have a syntax error and
0299      * is unparsable.
0300      *
0301      *  NO_MODIFICATION_ALLOWED_ERR: Raises if this property is
0302      * readonly.
0303      *
0304      */
0305     void setPositionIdentifier(const DOM::DOMString &horizontalIdentifier, const DOM::DOMString &verticalIdentifier);
0306 };
0307 
0308 class CSS2BorderSpacingImpl;
0309 
0310 /**
0311  * The \c CSS2BorderSpacing interface represents the <a
0312  * href="https://www.w3.org/TR/CSS2/tables.html#propdef-border-spacing">
0313  * border-spacing </a> CSS Level 2 property.
0314  *
0315  */
0316 class CSS2BorderSpacing : public CSSValue
0317 {
0318 public:
0319     CSS2BorderSpacing();
0320     CSS2BorderSpacing(const CSS2BorderSpacing &other);
0321     CSS2BorderSpacing(CSS2BorderSpacingImpl *impl);
0322 public:
0323 
0324     CSS2BorderSpacing &operator = (const CSS2BorderSpacing &other);
0325 
0326     ~CSS2BorderSpacing();
0327 
0328     /**
0329      * The A code defining the type of the value as defined in
0330      * \c CSSValue . It would be one of \c CSS_EMS ,
0331      * \c CSS_EXS , \c CSS_PX , \c CSS_CM
0332      * , \c CSS_MM , \c CSS_IN ,
0333      * \c CSS_PT , \c CSS_PC or
0334      * \c CSS_INHERIT .
0335      *
0336      */
0337     unsigned short horizontalType() const;
0338 
0339     /**
0340      * The A code defining the type of the value as defined in
0341      * \c CSSValue . It would be one of \c CSS_EMS ,
0342      * \c CSS_EXS , \c CSS_PX , \c CSS_CM
0343      *  , \c CSS_MM , \c CSS_IN ,
0344      * \c CSS_PT , \c CSS_PC or
0345      * \c CSS_INHERIT .
0346      *
0347      */
0348     unsigned short verticalType() const;
0349 
0350     /**
0351      * This method is used to get the float value in a specified unit
0352      * if the \c horizontalSpacing represents a length. If
0353      * the float doesn't contain a float value or can't be converted
0354      * into the specified unit, a \c DOMException is
0355      * raised.
0356      *
0357      * @param horizontalType The specified unit.
0358      *
0359      * @return The float value.
0360      *
0361      * @exception DOMException
0362      * INVALID_ACCESS_ERR: Raises if the property doesn't contain a
0363      * float or the value can't be converted.
0364      *
0365      */
0366     float getHorizontalSpacing(const float horizontalType);
0367 
0368     /**
0369      * This method is used to get the float value in a specified unit
0370      * if the \c verticalSpacing represents a length. If
0371      * the float doesn't contain a float value or can't be converted
0372      * into the specified unit, a \c DOMException is
0373      * raised. The value is \c 0 if only the horizontal
0374      * value has been specified.
0375      *
0376      * @param verticalType The specified unit.
0377      *
0378      * @return The float value.
0379      *
0380      * @exception DOMException
0381      * INVALID_ACCESS_ERR: Raises if the property doesn't contain a
0382      * float or the value can't be converted.
0383      *
0384      */
0385     float getVerticalSpacing(const float verticalType);
0386 
0387     /**
0388      * This method is used to set the horizontal spacing with a
0389      * specified unit. If the vertical value is a length, it sets the
0390      * vertical spacing to \c 0 .
0391      *
0392      * @param horizontalType The specified unit.
0393      *
0394      * @param value The new value.
0395      *
0396      * @return
0397      * @exception DOMException
0398      * INVALID_ACCESS_ERR: Raises if the specified unit is not a
0399      * length.
0400      *
0401      *  NO_MODIFICATION_ALLOWED_ERR: Raises if this property is
0402      * readonly.
0403      *
0404      */
0405     void setHorizontalSpacing(const unsigned short horizontalType, const float value);
0406 
0407     /**
0408      * This method is used to set the vertical spacing with a
0409      * specified unit. If the horizontal value is not a length, it
0410      * sets the vertical spacing to \c 0 .
0411      *
0412      * @param verticalType The specified unit.
0413      *
0414      * @param value The new value.
0415      *
0416      * @return
0417      * @exception DOMException
0418      * INVALID_ACCESS_ERR: Raises if the specified unit is not a
0419      * length or a percentage.
0420      *
0421      *  NO_MODIFICATION_ALLOWED_ERR: Raises if this property is
0422      * readonly.
0423      *
0424      */
0425     void setVerticalSpacing(const unsigned short verticalType, const float value);
0426 
0427     /**
0428      * Set this property as inherit. \c horizontalType and
0429      * \c verticalType will be inherited.
0430      *
0431      * @return
0432      */
0433     void setInherit();
0434 };
0435 
0436 class CSS2CounterIncrementImpl;
0437 
0438 /**
0439  * The \c CSS2CounterIncrement interface represents a
0440  * imple value for the <a
0441  * href="https://www.w3.org/TR/CSS2/generate.html#propdef-counter-increment">
0442  * counter-increment </a> CSS Level 2 property.
0443  *
0444  */
0445 class CSS2CounterIncrement
0446 {
0447 public:
0448     CSS2CounterIncrement();
0449     CSS2CounterIncrement(const CSS2CounterIncrement &other);
0450     CSS2CounterIncrement(CSS2CounterIncrementImpl *impl);
0451 public:
0452 
0453     CSS2CounterIncrement &operator = (const CSS2CounterIncrement &other);
0454 
0455     ~CSS2CounterIncrement();
0456 
0457     /**
0458      * The element name.
0459      *
0460      */
0461     DOM::DOMString identifier() const;
0462 
0463     /**
0464      * see identifier
0465      * @exception DOMException
0466      * SYNTAX_ERR: Raised if the specified identifier has a syntax
0467      * error and is unparsable.
0468      *
0469      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this identifier is
0470      * readonly.
0471      *
0472      */
0473     void setIdentifier(const DOM::DOMString &);
0474 
0475     /**
0476      * The increment (default value is 1).
0477      *
0478      */
0479     short increment() const;
0480 
0481     /**
0482      * see increment
0483      * @exception DOMException
0484      * NO_MODIFICATION_ALLOWED_ERR: Raised if this identifier is
0485      * readonly.
0486      *
0487      */
0488     void setIncrement(const short);
0489 };
0490 
0491 class CSS2CounterResetImpl;
0492 
0493 /**
0494  * The \c CSS2CounterReset interface represents a simple
0495  * value for the <a
0496  * href="https://www.w3.org/TR/CSS2/generate.html#propdef-counter-reset">
0497  * counter-reset </a> CSS Level 2 property.
0498  *
0499  */
0500 class CSS2CounterReset
0501 {
0502 public:
0503     CSS2CounterReset();
0504     CSS2CounterReset(const CSS2CounterReset &other);
0505     CSS2CounterReset(CSS2CounterResetImpl *impl);
0506 public:
0507 
0508     CSS2CounterReset &operator = (const CSS2CounterReset &other);
0509 
0510     ~CSS2CounterReset();
0511 
0512     /**
0513      * The element name.
0514      *
0515      */
0516     DOM::DOMString identifier() const;
0517 
0518     /**
0519      * see identifier
0520      * @exception DOMException
0521      * SYNTAX_ERR: Raised if the specified identifier has a syntax
0522      * error and is unparsable.
0523      *
0524      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this identifier is
0525      * readonly.
0526      *
0527      */
0528     void setIdentifier(const DOM::DOMString &);
0529 
0530     /**
0531      * The reset (default value is 0).
0532      *
0533      */
0534     short reset() const;
0535 
0536     /**
0537      * see reset
0538      * @exception DOMException
0539      * NO_MODIFICATION_ALLOWED_ERR: Raised if this identifier is
0540      * readonly.
0541      *
0542      */
0543     void setReset(const short);
0544 };
0545 
0546 class CSS2CursorImpl;
0547 class CSSValueList;
0548 
0549 /**
0550  * The \c CSS2Cursor interface represents the <a
0551  * href="https://www.w3.org/TR/CSS2/ui.html#propdef-cursor"> cursor
0552  * </a> CSS Level 2 property.
0553  *
0554  */
0555 class CSS2Cursor : public CSSValue
0556 {
0557 public:
0558     CSS2Cursor();
0559     CSS2Cursor(const CSS2Cursor &other);
0560     CSS2Cursor(CSS2CursorImpl *impl);
0561 public:
0562 
0563     CSS2Cursor &operator = (const CSS2Cursor &other);
0564 
0565     ~CSS2Cursor();
0566 
0567     /**
0568      * A code defining the type of the property. It would one of
0569      * \c CSS_UNKNOWN or \c CSS_INHERIT . If
0570      * the type is \c CSS_UNKNOWN , then \c uris
0571      * contains a list of URIs and \c predefinedCursor
0572      * contains an ident. Setting this attribute from
0573      * \c CSS_INHERIT to \c CSS_UNKNOWN will set the
0574      * \c predefinedCursor to \c "auto" .
0575      *
0576      */
0577     unsigned short cursorType() const;
0578 
0579     /**
0580      * see cursorType
0581      */
0582     void setCursorType(const unsigned short);
0583 
0584     /**
0585      * \c uris represents the list of URIs (
0586      * \c CSS_URI ) on the cursor property. The list can be
0587      * empty.
0588      *
0589      */
0590     CSSValueList uris() const;
0591 
0592     /**
0593      * This identifier represents a generic cursor name or an empty
0594      * string.
0595      *
0596      */
0597     DOM::DOMString predefinedCursor() const;
0598 
0599     /**
0600      * see predefinedCursor
0601      * @exception DOMException
0602      * SYNTAX_ERR: Raised if the specified CSS string value has a
0603      * syntax error and is unparsable.
0604      *
0605      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is
0606      * readonly.
0607      *
0608      */
0609     void setPredefinedCursor(const DOM::DOMString &);
0610 };
0611 
0612 class CSS2FontFaceSrcImpl;
0613 class CSSValueList;
0614 
0615 /**
0616  * The \c CSS2Cursor interface represents the <a
0617  * href="https://www.w3.org/TR/CSS2/fonts.html#descdef-src"> src
0618  * </a> CSS Level 2 descriptor.
0619  *
0620  */
0621 class CSS2FontFaceSrc
0622 {
0623 public:
0624     CSS2FontFaceSrc();
0625     CSS2FontFaceSrc(const CSS2FontFaceSrc &other);
0626     CSS2FontFaceSrc(CSS2FontFaceSrcImpl *impl);
0627 public:
0628 
0629     CSS2FontFaceSrc &operator = (const CSS2FontFaceSrc &other);
0630 
0631     ~CSS2FontFaceSrc();
0632 
0633     /**
0634      * Specifies the source of the font, empty string otherwise.
0635      *
0636      */
0637     DOM::DOMString uri() const;
0638 
0639     /**
0640      * see uri
0641      * @exception DOMException
0642      * SYNTAX_ERR: Raised if the specified CSS string value has a
0643      * syntax error and is unparsable.
0644      *
0645      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is
0646      * readonly.
0647      *
0648      */
0649     void setUri(const DOM::DOMString &);
0650 
0651     /**
0652      * This attribute contains a list of strings for the format CSS
0653      * function.
0654      *
0655      */
0656     CSSValueList format() const;
0657 
0658     /**
0659      * Specifies the full font name of a locally installed font.
0660      *
0661      */
0662     DOM::DOMString fontFaceName() const;
0663 
0664     /**
0665      * see fontFaceName
0666      * @exception DOMException
0667      * SYNTAX_ERR: Raised if the specified CSS string value has a
0668      * syntax error and is unparsable.
0669      *
0670      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is
0671      * readonly.
0672      *
0673      */
0674     void setFontFaceName(const DOM::DOMString &);
0675 };
0676 
0677 class CSS2FontFaceWidthsImpl;
0678 class CSSValueList;
0679 
0680 /**
0681  * The \c CSS2Cursor interface represents a simple value
0682  * for the <a
0683  * href="https://www.w3.org/TR/CSS2/fonts.html#descdef-widths">
0684  * widths </a> CSS Level 2 descriptor.
0685  *
0686  */
0687 class CSS2FontFaceWidths
0688 {
0689 public:
0690     CSS2FontFaceWidths();
0691     CSS2FontFaceWidths(const CSS2FontFaceWidths &other);
0692     CSS2FontFaceWidths(CSS2FontFaceWidthsImpl *impl);
0693 public:
0694 
0695     CSS2FontFaceWidths &operator = (const CSS2FontFaceWidths &other);
0696 
0697     ~CSS2FontFaceWidths();
0698 
0699     /**
0700      * The range for the characters.
0701      *
0702      */
0703     DOM::DOMString urange() const;
0704 
0705     /**
0706      * see urange
0707      * @exception DOMException
0708      * SYNTAX_ERR: Raised if the specified CSS string value has a
0709      * syntax error and is unparsable.
0710      *
0711      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is
0712      * readonly.
0713      *
0714      */
0715     void setUrange(const DOM::DOMString &);
0716 
0717     /**
0718      * A list of numbers representing the glyph widths.
0719      *
0720      */
0721     CSSValueList numbers() const;
0722 };
0723 
0724 class CSS2PageSizeImpl;
0725 
0726 /**
0727  * The \c CSS2Cursor interface represents the <a
0728  * href="https://www.w3.org/TR/CSS2/page.html#propdef-size"> size
0729  * </a> CSS Level 2 descriptor.
0730  *
0731  */
0732 class CSS2PageSize : public CSSValue
0733 {
0734 public:
0735     CSS2PageSize();
0736     CSS2PageSize(const CSS2PageSize &other);
0737     CSS2PageSize(CSS2PageSizeImpl *impl);
0738 public:
0739 
0740     CSS2PageSize &operator = (const CSS2PageSize &other);
0741 
0742     ~CSS2PageSize();
0743 
0744     /**
0745      * A code defining the type of the width of the page. It would be
0746      * one of \c CSS_EMS , \c CSS_EXS ,
0747      * \c CSS_PX , \c CSS_CM , \c CSS_MM
0748      * , \c CSS_IN , \c CSS_PT , \c CSS_PC
0749      * , \c CSS_IDENT , \c CSS_INHERIT
0750      * . If one of width or height is \c CSS_IDENT or
0751      * \c CSS_INHERIT , it's guaranteed that the other is
0752      * the same.
0753      *
0754      */
0755     unsigned short widthType() const;
0756 
0757     /**
0758      * A code defining the type of the height of the page. It would be
0759      * one of \c CSS_EMS , \c CSS_EXS ,
0760      * \c CSS_PX , \c CSS_CM , \c CSS_MM
0761      * , \c CSS_IN , \c CSS_PT , \c CSS_PC
0762      * , \c CSS_IDENT , \c CSS_INHERIT
0763      * . If one of width or height is \c CSS_IDENT or
0764      * \c CSS_INHERIT , it's guaranteed that the other is
0765      * the same.
0766      *
0767      */
0768     unsigned short heightType() const;
0769 
0770     /**
0771      * If \c width is \c CSS_IDENT or
0772      * \c CSS_INHERIT , this attribute contains the string
0773      * representation of the ident, otherwise it contains an empty
0774      * string.
0775      *
0776      */
0777     DOM::DOMString identifier() const;
0778 
0779     /**
0780      * This method is used to get the float value in a specified unit
0781      * if the \c widthType represents a length. If the
0782      * float doesn't contain a float value or can't be converted into
0783      * the specified unit, a \c DOMException is raised.
0784      *
0785      * @param widthType The specified unit.
0786      *
0787      * @return The float value.
0788      *
0789      * @exception DOMException
0790      * INVALID_ACCESS_ERR: Raises if the property doesn't contain a
0791      * float or the value can't be converted.
0792      *
0793      */
0794     float getWidth(const float widthType);
0795 
0796     /**
0797      * This method is used to get the float value in a specified unit
0798      * if the \c heightType represents a length. If the
0799      * float doesn't contain a float value or can't be converted into
0800      * the specified unit, a \c DOMException is raised. If
0801      * only the width value has been specified, the height value is
0802      * the same.
0803      *
0804      * @param heightType The specified unit.
0805      *
0806      * @return The float value.
0807      *
0808      * @exception DOMException
0809      * INVALID_ACCESS_ERR: Raises if the property doesn't contain a
0810      * float or the value can't be converted.
0811      *
0812      */
0813     float getHeightSize(const float heightType);
0814 
0815     /**
0816      * This method is used to set the width position with a specified
0817      * unit. If the \c heightType is not a length, it sets
0818      * the height position to the same value.
0819      *
0820      * @param widthType The specified unit.
0821      *
0822      * @param value The new value.
0823      *
0824      * @return
0825      * @exception DOMException
0826      * INVALID_ACCESS_ERR: Raises if the specified unit is not a
0827      * length or a percentage.
0828      *
0829      *  NO_MODIFICATION_ALLOWED_ERR: Raises if this property is
0830      * readonly.
0831      *
0832      */
0833     void setWidthSize(const unsigned short widthType, const float value);
0834 
0835     /**
0836      * This method is used to set the height position with a specified
0837      * unit. If the \c widthType is not a length, it sets
0838      * the width position to the same value.
0839      *
0840      * @param heightType The specified unit.
0841      *
0842      * @param value The new value.
0843      *
0844      * @return
0845      * @exception DOMException
0846      * INVALID_ACCESS_ERR: Raises if the specified unit is not a
0847      * length or a percentage.
0848      *
0849      *  NO_MODIFICATION_ALLOWED_ERR: Raises if this property is
0850      * readonly.
0851      *
0852      */
0853     void setHeightSize(const unsigned short heightType, const float value);
0854 
0855     /**
0856      * Sets the identifier.
0857      *
0858      * @param identifier The new identifier.
0859      *
0860      * @return
0861      * @exception DOMException
0862      * SYNTAX_ERR: Raises if the identifier has a syntax error and is
0863      * unparsable.
0864      *
0865      *  NO_MODIFICATION_ALLOWED_ERR: Raises if this property is
0866      * readonly.
0867      *
0868      */
0869     void setIdentifier(const DOM::DOMString &identifier);
0870 };
0871 
0872 class CSS2PlayDuringImpl;
0873 
0874 /**
0875  * The \c CSS2PlayDuring interface represents the <a
0876  * href="https://www.w3.org/TR/CSS2/aural.html#propdef-play-during">
0877  * play-during </a> CSS Level 2 property.
0878  *
0879  */
0880 class CSS2PlayDuring : public CSSValue
0881 {
0882 public:
0883     CSS2PlayDuring();
0884     CSS2PlayDuring(const CSS2PlayDuring &other);
0885     CSS2PlayDuring(CSS2PlayDuringImpl *impl);
0886 public:
0887 
0888     CSS2PlayDuring &operator = (const CSS2PlayDuring &other);
0889 
0890     ~CSS2PlayDuring();
0891 
0892     /**
0893      * A code defining the type of the value as define in
0894      * \c CSSvalue . It would be one of \c CSS_UNKNOWN
0895      * , \c CSS_INHERIT , \c CSS_IDENT
0896      *
0897      */
0898     unsigned short playDuringType() const;
0899 
0900     /**
0901      * One of \c "inherit" , \c "auto" ,
0902      * \c "none" or the empty string if the
0903      * \c playDuringType is \c CSS_UNKNOWN . On
0904      * setting, it will set the \c uri to the empty string
0905      * and \c mix and \c repeat to
0906      * \c false .
0907      *
0908      */
0909     DOM::DOMString playDuringIdentifier() const;
0910 
0911     /**
0912      * see playDuringIdentifier
0913      * @exception DOMException
0914      * SYNTAX_ERR: Raised if the specified CSS string value has a
0915      * syntax error and is unparsable.
0916      *
0917      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is
0918      * readonly.
0919      *
0920      */
0921     void setPlayDuringIdentifier(const DOM::DOMString &);
0922 
0923     /**
0924      * The sound specified by the \c uri . It will set the
0925      * \c playDuringType attribute to \c CSS_UNKNOWN .
0926      *
0927      */
0928     DOM::DOMString uri() const;
0929 
0930     /**
0931      * see uri
0932      * @exception DOMException
0933      * SYNTAX_ERR: Raised if the specified CSS string value has a
0934      * syntax error and is unparsable.
0935      *
0936      *  NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is
0937      * readonly.
0938      *
0939      */
0940     void setUri(const DOM::DOMString &);
0941 
0942     /**
0943      * \c true if the sound should be mixed. It will be
0944      * ignored if the attribute doesn't contain a \c uri .
0945      *
0946      */
0947     bool mix() const;
0948 
0949     /**
0950      * see mix
0951      * @exception DOMException
0952      * NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is
0953      * readonly.
0954      *
0955      */
0956     void setMix(const bool);
0957 
0958     /**
0959      * \c true if the sound should be repeated. It will be
0960      * ignored if the attribute doesn't contain a \c uri .
0961      *
0962      */
0963     bool repeat() const;
0964 
0965     /**
0966      * see repeat
0967      * @exception DOMException
0968      * NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is
0969      * readonly.
0970      *
0971      */
0972     void setRepeat(const bool);
0973 };
0974 
0975 class CSS2PropertiesImpl;
0976 
0977 /**
0978  * The \c CSS2Properties interface represents a
0979  * convenience mechanism for retrieving and setting properties within
0980  * a \c CSSStyleDeclaration . The attributes of this
0981  * interface correspond to all the <a
0982  * href="https://www.w3.org/TR/CSS2/propidx.html"> properties
0983  * specified in CSS2 </a> . Getting an attribute of this interface is
0984  * equivalent to calling the \c getPropertyValue method of
0985  * the \c CSSStyleDeclaration interface. Setting an
0986  * attribute of this interface is equivalent to calling the
0987  * \c setProperty method of the \c CSSStyleDeclaration
0988  * interface.
0989  *
0990  *  A compliant implementation is not required to implement the
0991  * \c CSS2Properties interface. If an implementation does
0992  * implement this interface, the expectation is that language-specific
0993  * methods can be used to cast from an instance of the
0994  * \c CSSStyleDeclaration interface to the \c CSS2Properties
0995  * interface.
0996  *
0997  *  If an implementation does implement this interface, it is expected
0998  * to understand the specific syntax of the shorthand properties, and
0999  * apply their semantics; when the \c margin property is
1000  * set, for example, the \c marginTop , \c marginRight
1001  * , \c marginBottom and \c marginLeft
1002  * properties are actually being set by the underlying implementation.
1003  *
1004  *  When dealing with CSS "shorthand" properties, the shorthand
1005  * properties should be decomposed into their component longhand
1006  * properties as appropriate, and when querying for their value, the
1007  * form returned should be the shortest form exactly equivalent to the
1008  * declarations made in the ruleset. However, if there is no shorthand
1009  * declaration that could be added to the ruleset without changing in
1010  * any way the rules already declared in the ruleset (i.e., by adding
1011  * longhand rules that were previously not declared in the ruleset),
1012  * then the empty string should be returned for the shorthand
1013  * property.
1014  *
1015  *  For example, querying for the \c font property should
1016  * not return "normal normal normal 14pt/normal Arial, sans-serif",
1017  * when "14pt Arial, sans-serif" suffices (the normals are initial
1018  * values, and are implied by use of the longhand property).
1019  *
1020  *  If the values for all the longhand properties that compose a
1021  * particular string are the initial values, then a string consisting
1022  * of all the initial values should be returned (e.g. a
1023  * \c border-width value of "medium" should be returned as such,
1024  * not as "").
1025  *
1026  *  For some shorthand properties that take missing values from other
1027  * sides, such as the \c margin , \c padding ,
1028  * and \c border-[width|style|color] properties, the
1029  * minimum number of sides possible should be used, i.e., "0px 10px"
1030  * will be returned instead of "0px 10px 0px 10px".
1031  *
1032  *  If the value of a shorthand property can not be decomposed into
1033  * its component longhand properties, as is the case for the
1034  * \c font property with a value of "menu", querying for the
1035  * values of the component longhand properties should return the empty
1036  * string.
1037  *
1038  */
1039 class CSS2Properties
1040 {
1041 public:
1042     CSS2Properties();
1043     CSS2Properties(const CSS2Properties &other);
1044     CSS2Properties(CSS2PropertiesImpl *impl);
1045 public:
1046 
1047     CSS2Properties &operator = (const CSS2Properties &other);
1048 
1049     ~CSS2Properties();
1050 
1051     /**
1052      * See the <a
1053      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-azimuth">
1054      * azimuth property definition </a> in CSS2.
1055      *
1056      */
1057     DOM::DOMString azimuth() const;
1058 
1059     /**
1060      * see azimuth
1061      */
1062     void setAzimuth(const DOM::DOMString &);
1063 
1064     /**
1065      * See the <a
1066      * href="https://www.w3.org/TR/CSS2/colors.html#propdef-background">
1067      * background property definition </a> in CSS2.
1068      *
1069      */
1070     DOM::DOMString background() const;
1071 
1072     /**
1073      * see background
1074      */
1075     void setBackground(const DOM::DOMString &);
1076 
1077     /**
1078      * See the <a
1079      * href="https://www.w3.org/TR/CSS2/colors.html#propdef-background-attachment">
1080      * background-attachment property definition </a> in CSS2.
1081      *
1082      */
1083     DOM::DOMString backgroundAttachment() const;
1084 
1085     /**
1086      * see backgroundAttachment
1087      */
1088     void setBackgroundAttachment(const DOM::DOMString &);
1089 
1090     /**
1091      * See the <a
1092      * href="https://www.w3.org/TR/CSS2/colors.html#propdef-background-color">
1093      * background-color property definition </a> in CSS2.
1094      *
1095      */
1096     DOM::DOMString backgroundColor() const;
1097 
1098     /**
1099      * see backgroundColor
1100      */
1101     void setBackgroundColor(const DOM::DOMString &);
1102 
1103     /**
1104      * See the <a
1105      * href="https://www.w3.org/TR/CSS2/colors.html#propdef-background-image">
1106      * background-image property definition </a> in CSS2.
1107      *
1108      */
1109     DOM::DOMString backgroundImage() const;
1110 
1111     /**
1112      * see backgroundImage
1113      */
1114     void setBackgroundImage(const DOM::DOMString &);
1115 
1116     /**
1117      * See the <a
1118      * href="https://www.w3.org/TR/CSS2/colors.html#propdef-background-position">
1119      * background-position property definition </a> in CSS2.
1120      *
1121      */
1122     DOM::DOMString backgroundPosition() const;
1123 
1124     /**
1125      * see backgroundPosition
1126      */
1127     void setBackgroundPosition(const DOM::DOMString &);
1128 
1129     /**
1130      * See the <a
1131      * href="https://www.w3.org/TR/CSS2/colors.html#propdef-background-repeat">
1132      * background-repeat property definition </a> in CSS2.
1133      *
1134      */
1135     DOM::DOMString backgroundRepeat() const;
1136 
1137     /**
1138      * see backgroundRepeat
1139      */
1140     void setBackgroundRepeat(const DOM::DOMString &);
1141 
1142     /**
1143      * See the <a
1144      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border">
1145      * border property definition </a> in CSS2.
1146      *
1147      */
1148     DOM::DOMString border() const;
1149 
1150     /**
1151      * see border
1152      */
1153     void setBorder(const DOM::DOMString &);
1154 
1155     /**
1156      * See the <a
1157      * href="https://www.w3.org/TR/CSS2/tables.html#propdef-border-collapse">
1158      * border-collapse property definition </a> in CSS2.
1159      *
1160      */
1161     DOM::DOMString borderCollapse() const;
1162 
1163     /**
1164      * see borderCollapse
1165      */
1166     void setBorderCollapse(const DOM::DOMString &);
1167 
1168     /**
1169      * See the <a
1170      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-color">
1171      * border-color property definition </a> in CSS2.
1172      *
1173      */
1174     DOM::DOMString borderColor() const;
1175 
1176     /**
1177      * see borderColor
1178      */
1179     void setBorderColor(const DOM::DOMString &);
1180 
1181     /**
1182      * See the <a
1183      * href="https://www.w3.org/TR/CSS2/tables.html#propdef-border-spacing">
1184      * border-spacing property definition </a> in CSS2.
1185      *
1186      */
1187     DOM::DOMString borderSpacing() const;
1188 
1189     /**
1190      * see borderSpacing
1191      */
1192     void setBorderSpacing(const DOM::DOMString &);
1193 
1194     /**
1195      * See the <a
1196      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-style">
1197      * border-style property definition </a> in CSS2.
1198      *
1199      */
1200     DOM::DOMString borderStyle() const;
1201 
1202     /**
1203      * see borderStyle
1204      */
1205     void setBorderStyle(const DOM::DOMString &);
1206 
1207     /**
1208      * See the <a
1209      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-top">
1210      * border-top property definition </a> in CSS2.
1211      *
1212      */
1213     DOM::DOMString borderTop() const;
1214 
1215     /**
1216      * see borderTop
1217      */
1218     void setBorderTop(const DOM::DOMString &);
1219 
1220     /**
1221      * See the <a
1222      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-right">
1223      * border-right property definition </a> in CSS2.
1224      *
1225      */
1226     DOM::DOMString borderRight() const;
1227 
1228     /**
1229      * see borderRight
1230      */
1231     void setBorderRight(const DOM::DOMString &);
1232 
1233     /**
1234      * See the <a
1235      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-bottom">
1236      * border-bottom property definition </a> in CSS2.
1237      *
1238      */
1239     DOM::DOMString borderBottom() const;
1240 
1241     /**
1242      * see borderBottom
1243      */
1244     void setBorderBottom(const DOM::DOMString &);
1245 
1246     /**
1247      * See the <a
1248      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-left">
1249      * border-left property definition </a> in CSS2.
1250      *
1251      */
1252     DOM::DOMString borderLeft() const;
1253 
1254     /**
1255      * see borderLeft
1256      */
1257     void setBorderLeft(const DOM::DOMString &);
1258 
1259     /**
1260      * See the <a
1261      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-top-color">
1262      * border-top-color property definition </a> in CSS2.
1263      *
1264      */
1265     DOM::DOMString borderTopColor() const;
1266 
1267     /**
1268      * see borderTopColor
1269      */
1270     void setBorderTopColor(const DOM::DOMString &);
1271 
1272     /**
1273      * See the <a
1274      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-right-color">
1275      * border-right-color property definition </a> in CSS2.
1276      *
1277      */
1278     DOM::DOMString borderRightColor() const;
1279 
1280     /**
1281      * see borderRightColor
1282      */
1283     void setBorderRightColor(const DOM::DOMString &);
1284 
1285     /**
1286      * See the <a
1287      * href="https://www.w3.org/TR/CSS2/#propdef-border-bottom-color">
1288      * border-bottom-color property definition </a> in CSS2.
1289      *
1290      */
1291     DOM::DOMString borderBottomColor() const;
1292 
1293     /**
1294      * see borderBottomColor
1295      */
1296     void setBorderBottomColor(const DOM::DOMString &);
1297 
1298     /**
1299      * See the <a
1300      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-left-color">
1301      * border-left-color property definition </a> in CSS2.
1302      *
1303      */
1304     DOM::DOMString borderLeftColor() const;
1305 
1306     /**
1307      * see borderLeftColor
1308      */
1309     void setBorderLeftColor(const DOM::DOMString &);
1310 
1311     /**
1312      * See the <a
1313      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-top-style">
1314      * border-top-style property definition </a> in CSS2.
1315      *
1316      */
1317     DOM::DOMString borderTopStyle() const;
1318 
1319     /**
1320      * see borderTopStyle
1321      */
1322     void setBorderTopStyle(const DOM::DOMString &);
1323 
1324     /**
1325      * See the <a
1326      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-right-style">
1327      * border-right-style property definition </a> in CSS2.
1328      *
1329      */
1330     DOM::DOMString borderRightStyle() const;
1331 
1332     /**
1333      * see borderRightStyle
1334      */
1335     void setBorderRightStyle(const DOM::DOMString &);
1336 
1337     /**
1338      * See the <a
1339      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-bottom-style">
1340      * border-bottom-style property definition </a> in CSS2.
1341      *
1342      */
1343     DOM::DOMString borderBottomStyle() const;
1344 
1345     /**
1346      * see borderBottomStyle
1347      */
1348     void setBorderBottomStyle(const DOM::DOMString &);
1349 
1350     /**
1351      * See the <a
1352      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-left-style">
1353      * border-left-style property definition </a> in CSS2.
1354      *
1355      */
1356     DOM::DOMString borderLeftStyle() const;
1357 
1358     /**
1359      * see borderLeftStyle
1360      */
1361     void setBorderLeftStyle(const DOM::DOMString &);
1362 
1363     /**
1364      * See the <a
1365      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-top-width">
1366      * border-top-width property definition </a> in CSS2.
1367      *
1368      */
1369     DOM::DOMString borderTopWidth() const;
1370 
1371     /**
1372      * see borderTopWidth
1373      */
1374     void setBorderTopWidth(const DOM::DOMString &);
1375 
1376     /**
1377      * See the <a
1378      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-right-width">
1379      * border-right-width property definition </a> in CSS2.
1380      *
1381      */
1382     DOM::DOMString borderRightWidth() const;
1383 
1384     /**
1385      * see borderRightWidth
1386      */
1387     void setBorderRightWidth(const DOM::DOMString &);
1388 
1389     /**
1390      * See the <a
1391      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-bottom-width">
1392      * border-bottom-width property definition </a> in CSS2.
1393      *
1394      */
1395     DOM::DOMString borderBottomWidth() const;
1396 
1397     /**
1398      * see borderBottomWidth
1399      */
1400     void setBorderBottomWidth(const DOM::DOMString &);
1401 
1402     /**
1403      * See the <a
1404      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-left-width">
1405      * border-left-width property definition </a> in CSS2.
1406      *
1407      */
1408     DOM::DOMString borderLeftWidth() const;
1409 
1410     /**
1411      * see borderLeftWidth
1412      */
1413     void setBorderLeftWidth(const DOM::DOMString &);
1414 
1415     /**
1416      * See the <a
1417      * href="https://www.w3.org/TR/CSS2/box.html#propdef-border-width">
1418      * border-width property definition </a> in CSS2.
1419      *
1420      */
1421     DOM::DOMString borderWidth() const;
1422 
1423     /**
1424      * see borderWidth
1425      */
1426     void setBorderWidth(const DOM::DOMString &);
1427 
1428     /**
1429      * See the <a
1430      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-bottom">
1431      * bottom property definition </a> in CSS2.
1432      *
1433      */
1434     DOM::DOMString bottom() const;
1435 
1436     /**
1437      * see bottom
1438      */
1439     void setBottom(const DOM::DOMString &);
1440 
1441     /**
1442      * See the <a
1443      * href="https://www.w3.org/TR/CSS2/tables.html#propdef-caption-side">
1444      * caption-side property definition </a> in CSS2.
1445      *
1446      */
1447     DOM::DOMString captionSide() const;
1448 
1449     /**
1450      * see captionSide
1451      */
1452     void setCaptionSide(const DOM::DOMString &);
1453 
1454     /**
1455      * See the <a
1456      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-clear">
1457      * clear property definition </a> in CSS2.
1458      *
1459      */
1460     DOM::DOMString clear() const;
1461 
1462     /**
1463      * see clear
1464      */
1465     void setClear(const DOM::DOMString &);
1466 
1467     /**
1468      * See the <a
1469      * href="https://www.w3.org/TR/CSS2/visufx#propdef-clip"> clip
1470      * property definition </a> in CSS2.
1471      *
1472      */
1473     DOM::DOMString clip() const;
1474 
1475     /**
1476      * see clip
1477      */
1478     void setClip(const DOM::DOMString &);
1479 
1480     /**
1481      * See the <a
1482      * href="https://www.w3.org/TR/CSS2/colors.html#propdef-color">
1483      * color property definition </a> in CSS2.
1484      *
1485      */
1486     DOM::DOMString color() const;
1487 
1488     /**
1489      * see color
1490      */
1491     void setColor(const DOM::DOMString &);
1492 
1493     /**
1494      * See the <a
1495      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-content">
1496      * content property definition </a> in CSS2.
1497      *
1498      */
1499     DOM::DOMString content() const;
1500 
1501     /**
1502      * see content
1503      */
1504     void setContent(const DOM::DOMString &);
1505 
1506     /**
1507      * See the <a
1508      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-counter-increment">
1509      * counter-increment property definition </a> in CSS2.
1510      *
1511      */
1512     DOM::DOMString counterIncrement() const;
1513 
1514     /**
1515      * see counterIncrement
1516      */
1517     void setCounterIncrement(const DOM::DOMString &);
1518 
1519     /**
1520      * See the <a
1521      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-counter-reset">
1522      * counter-reset property definition </a> in CSS2.
1523      *
1524      */
1525     DOM::DOMString counterReset() const;
1526 
1527     /**
1528      * see counterReset
1529      */
1530     void setCounterReset(const DOM::DOMString &);
1531 
1532     /**
1533      * See the <a
1534      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-cue">
1535      * cue property definition </a> in CSS2.
1536      *
1537      */
1538     DOM::DOMString cue() const;
1539 
1540     /**
1541      * see cue
1542      */
1543     void setCue(const DOM::DOMString &);
1544 
1545     /**
1546      * See the <a
1547      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-cue-fter">
1548      * cue-after property definition </a> in CSS2.
1549      *
1550      */
1551     DOM::DOMString cueAfter() const;
1552 
1553     /**
1554      * see cueAfter
1555      */
1556     void setCueAfter(const DOM::DOMString &);
1557 
1558     /**
1559      * See the <a
1560      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-cue-before">
1561      * cue-before property definition </a> in CSS2.
1562      *
1563      */
1564     DOM::DOMString cueBefore() const;
1565 
1566     /**
1567      * see cueBefore
1568      */
1569     void setCueBefore(const DOM::DOMString &);
1570 
1571     /**
1572      * See the <a
1573      * href="https://www.w3.org/TR/CSS2/ui.html#propdef-cursor">
1574      * cursor property definition </a> in CSS2.
1575      *
1576      */
1577     DOM::DOMString cursor() const;
1578 
1579     /**
1580      * see cursor
1581      */
1582     void setCursor(const DOM::DOMString &);
1583 
1584     /**
1585      * See the <a
1586      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-direction">
1587      * direction property definition </a> in CSS2.
1588      *
1589      */
1590     DOM::DOMString direction() const;
1591 
1592     /**
1593      * see direction
1594      */
1595     void setDirection(const DOM::DOMString &);
1596 
1597     /**
1598      * See the <a
1599      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-display">
1600      * display property definition </a> in CSS2.
1601      *
1602      */
1603     DOM::DOMString display() const;
1604 
1605     /**
1606      * see display
1607      */
1608     void setDisplay(const DOM::DOMString &);
1609 
1610     /**
1611      * See the <a
1612      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-elevation">
1613      * elevation property definition </a> in CSS2.
1614      *
1615      */
1616     DOM::DOMString elevation() const;
1617 
1618     /**
1619      * see elevation
1620      */
1621     void setElevation(const DOM::DOMString &);
1622 
1623     /**
1624      * See the <a
1625      * href="https://www.w3.org/TR/CSS2/tables.html#propdef-empty-cells">
1626      * empty-cells property definition </a> in CSS2.
1627      *
1628      */
1629     DOM::DOMString emptyCells() const;
1630 
1631     /**
1632      * see emptyCells
1633      */
1634     void setEmptyCells(const DOM::DOMString &);
1635 
1636     /**
1637      * See the <a
1638      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-float">
1639      * float property definition </a> in CSS2.
1640      *
1641      */
1642     DOM::DOMString cssFloat() const;
1643 
1644     /**
1645      * see cssFloat
1646      */
1647     void setCssFloat(const DOM::DOMString &);
1648 
1649     /**
1650      * See the <a
1651      * href="https://www.w3.org/TR/CSS2/fonts.html#propdef-font">
1652      * font property definition </a> in CSS2.
1653      *
1654      */
1655     DOM::DOMString font() const;
1656 
1657     /**
1658      * see font
1659      */
1660     void setFont(const DOM::DOMString &);
1661 
1662     /**
1663      * See the <a
1664      * href="https://www.w3.org/TR/CSS2/fonts.html#propdef-font-family">
1665      * font-family property definition </a> in CSS2.
1666      *
1667      */
1668     DOM::DOMString fontFamily() const;
1669 
1670     /**
1671      * see fontFamily
1672      */
1673     void setFontFamily(const DOM::DOMString &);
1674 
1675     /**
1676      * See the <a
1677      * href="https://www.w3.org/TR/CSS2/fonts.html#propdef-font-size">
1678      * font-size property definition </a> in CSS2.
1679      *
1680      */
1681     DOM::DOMString fontSize() const;
1682 
1683     /**
1684      * see fontSize
1685      */
1686     void setFontSize(const DOM::DOMString &);
1687 
1688     /**
1689      * See the <a
1690      * href="https://www.w3.org/TR/CSS2/fonts.html#propdef-font-size-adjust">
1691      * font-size-adjust property definition </a> in CSS2.
1692      *
1693      */
1694     DOM::DOMString fontSizeAdjust() const;
1695 
1696     /**
1697      * see fontSizeAdjust
1698      */
1699     void setFontSizeAdjust(const DOM::DOMString &);
1700 
1701     /**
1702      * See the <a
1703      * href="https://www.w3.org/TR/CSS2/fonts.html#propdef-font-stretch">
1704      * font-stretch property definition </a> in CSS2.
1705      *
1706      */
1707     DOM::DOMString fontStretch() const;
1708 
1709     /**
1710      * see fontStretch
1711      */
1712     void setFontStretch(const DOM::DOMString &);
1713 
1714     /**
1715      * See the <a
1716      * href="https://www.w3.org/TR/CSS2/fonts.html#propdef-font-style">
1717      * font-style property definition </a> in CSS2.
1718      *
1719      */
1720     DOM::DOMString fontStyle() const;
1721 
1722     /**
1723      * see fontStyle
1724      */
1725     void setFontStyle(const DOM::DOMString &);
1726 
1727     /**
1728      * See the <a
1729      * href="https://www.w3.org/TR/CSS2/fonts.html#propdef-font-variant">
1730      * font-variant property definition </a> in CSS2.
1731      *
1732      */
1733     DOM::DOMString fontVariant() const;
1734 
1735     /**
1736      * see fontVariant
1737      */
1738     void setFontVariant(const DOM::DOMString &);
1739 
1740     /**
1741      * See the <a
1742      * href="https://www.w3.org/TR/CSS2/fonts.html#propdef-font-weight">
1743      * font-weight property definition </a> in CSS2.
1744      *
1745      */
1746     DOM::DOMString fontWeight() const;
1747 
1748     /**
1749      * see fontWeight
1750      */
1751     void setFontWeight(const DOM::DOMString &);
1752 
1753     /**
1754      * See the <a
1755      * href="https://www.w3.org/TR/CSS2/visudet.html#propdef-height">
1756      * height property definition </a> in CSS2.
1757      *
1758      */
1759     DOM::DOMString height() const;
1760 
1761     /**
1762      * see height
1763      */
1764     void setHeight(const DOM::DOMString &);
1765 
1766     /**
1767      * See the <a
1768      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-left">
1769      * left property definition </a> in CSS2.
1770      *
1771      */
1772     DOM::DOMString left() const;
1773 
1774     /**
1775      * see left
1776      */
1777     void setLeft(const DOM::DOMString &);
1778 
1779     /**
1780      * See the <a
1781      * href="https://www.w3.org/TR/CSS2/text.html#propdef-letter-spacing">
1782      * letter-spacing property definition </a> in CSS2.
1783      *
1784      */
1785     DOM::DOMString letterSpacing() const;
1786 
1787     /**
1788      * see letterSpacing
1789      */
1790     void setLetterSpacing(const DOM::DOMString &);
1791 
1792     /**
1793      * See the <a
1794      * href="https://www.w3.org/TR/CSS2/visudet.html#propdef-line-height">
1795      * line-height property definition </a> in CSS2.
1796      *
1797      */
1798     DOM::DOMString lineHeight() const;
1799 
1800     /**
1801      * see lineHeight
1802      */
1803     void setLineHeight(const DOM::DOMString &);
1804 
1805     /**
1806      * See the <a
1807      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-list-style">
1808      * list-style property definition </a> in CSS2.
1809      *
1810      */
1811     DOM::DOMString listStyle() const;
1812 
1813     /**
1814      * see listStyle
1815      */
1816     void setListStyle(const DOM::DOMString &);
1817 
1818     /**
1819      * See the <a
1820      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-list-style-image">
1821      * list-style-image property definition </a> in CSS2.
1822      *
1823      */
1824     DOM::DOMString listStyleImage() const;
1825 
1826     /**
1827      * see listStyleImage
1828      */
1829     void setListStyleImage(const DOM::DOMString &);
1830 
1831     /**
1832      * See the <a
1833      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-list-style-position">
1834      * list-style-position property definition </a> in CSS2.
1835      *
1836      */
1837     DOM::DOMString listStylePosition() const;
1838 
1839     /**
1840      * see listStylePosition
1841      */
1842     void setListStylePosition(const DOM::DOMString &);
1843 
1844     /**
1845      * See the <a
1846      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-list-style-type">
1847      * list-style-type property definition </a> in CSS2.
1848      *
1849      */
1850     DOM::DOMString listStyleType() const;
1851 
1852     /**
1853      * see listStyleType
1854      */
1855     void setListStyleType(const DOM::DOMString &);
1856 
1857     /**
1858      * See the <a
1859      * href="https://www.w3.org/TR/CSS2/box.html#propdef-margin">
1860      * margin property definition </a> in CSS2.
1861      *
1862      */
1863     DOM::DOMString margin() const;
1864 
1865     /**
1866      * see margin
1867      */
1868     void setMargin(const DOM::DOMString &);
1869 
1870     /**
1871      * See the <a
1872      * href="https://www.w3.org/TR/CSS2/box.html#propdef-margin-top">
1873      * margin-top property definition </a> in CSS2.
1874      *
1875      */
1876     DOM::DOMString marginTop() const;
1877 
1878     /**
1879      * see marginTop
1880      */
1881     void setMarginTop(const DOM::DOMString &);
1882 
1883     /**
1884      * See the <a
1885      * href="https://www.w3.org/TR/CSS2/box.html#propdef-margin-right">
1886      * margin-right property definition </a> in CSS2.
1887      *
1888      */
1889     DOM::DOMString marginRight() const;
1890 
1891     /**
1892      * see marginRight
1893      */
1894     void setMarginRight(const DOM::DOMString &);
1895 
1896     /**
1897      * See the <a
1898      * href="https://www.w3.org/TR/CSS2/box.html#propdef-margin-bottom">
1899      * margin-bottom property definition </a> in CSS2.
1900      *
1901      */
1902     DOM::DOMString marginBottom() const;
1903 
1904     /**
1905      * see marginBottom
1906      */
1907     void setMarginBottom(const DOM::DOMString &);
1908 
1909     /**
1910      * See the <a
1911      * href="https://www.w3.org/TR/CSS2/box.html#propdef-margin-left">
1912      * margin-left property definition </a> in CSS2.
1913      *
1914      */
1915     DOM::DOMString marginLeft() const;
1916 
1917     /**
1918      * see marginLeft
1919      */
1920     void setMarginLeft(const DOM::DOMString &);
1921 
1922     /**
1923      * See the <a
1924      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-marker-offset">
1925      * marker-offset property definition </a> in CSS2.
1926      *
1927      */
1928     DOM::DOMString markerOffset() const;
1929 
1930     /**
1931      * see markerOffset
1932      */
1933     void setMarkerOffset(const DOM::DOMString &);
1934 
1935     /**
1936      * See the <a
1937      * href="https://www.w3.org/TR/CSS2/page.html#propdef-marks">
1938      * marks property definition </a> in CSS2.
1939      *
1940      */
1941     DOM::DOMString marks() const;
1942 
1943     /**
1944      * see marks
1945      */
1946     void setMarks(const DOM::DOMString &);
1947 
1948     /**
1949      * See the <a
1950      * href="https://www.w3.org/TR/CSS2/visudet.html#propdef-max-height">
1951      * max-height property definition </a> in CSS2.
1952      *
1953      */
1954     DOM::DOMString maxHeight() const;
1955 
1956     /**
1957      * see maxHeight
1958      */
1959     void setMaxHeight(const DOM::DOMString &);
1960 
1961     /**
1962      * See the <a
1963      * href="https://www.w3.org/TR/CSS2/visudet.html#propdef-max-width">
1964      * max-width property definition </a> in CSS2.
1965      *
1966      */
1967     DOM::DOMString maxWidth() const;
1968 
1969     /**
1970      * see maxWidth
1971      */
1972     void setMaxWidth(const DOM::DOMString &);
1973 
1974     /**
1975      * See the <a
1976      * href="https://www.w3.org/TR/CSS2/visudet.html#propdef-min-height">
1977      * min-height property definition </a> in CSS2.
1978      *
1979      */
1980     DOM::DOMString minHeight() const;
1981 
1982     /**
1983      * see minHeight
1984      */
1985     void setMinHeight(const DOM::DOMString &);
1986 
1987     /**
1988      * See the <a
1989      * href="https://www.w3.org/TR/CSS2/visudet.html#propdef-min-width">
1990      * min-width property definition </a> in CSS2.
1991      *
1992      */
1993     DOM::DOMString minWidth() const;
1994 
1995     /**
1996      * see minWidth
1997      */
1998     void setMinWidth(const DOM::DOMString &);
1999 
2000     /**
2001      * See the <a
2002      * href="https://www.w3.org/TR/CSS2/page.html#propdef-orphans">
2003      * orphans property definition </a> in CSS2.
2004      *
2005      */
2006     DOM::DOMString orphans() const;
2007 
2008     /**
2009      * see orphans
2010      */
2011     void setOrphans(const DOM::DOMString &);
2012 
2013     /**
2014      * See the <a
2015      * href="https://www.w3.org/TR/CSS2/ui.html#propdef-outline">
2016      * outline property definition </a> in CSS2.
2017      *
2018      */
2019     DOM::DOMString outline() const;
2020 
2021     /**
2022      * see outline
2023      */
2024     void setOutline(const DOM::DOMString &);
2025 
2026     /**
2027      * See the <a
2028      * href="https://www.w3.org/TR/CSS2/ui.html#propdef-outline-color">
2029      * outline-color property definition </a> in CSS2.
2030      *
2031      */
2032     DOM::DOMString outlineColor() const;
2033 
2034     /**
2035      * see outlineColor
2036      */
2037     void setOutlineColor(const DOM::DOMString &);
2038 
2039     /**
2040      * See the <a
2041      * href="https://www.w3.org/TR/CSS2/ui.html#propdef-outline-style">
2042      * outline-style property definition </a> in CSS2.
2043      *
2044      */
2045     DOM::DOMString outlineStyle() const;
2046 
2047     /**
2048      * see outlineStyle
2049      */
2050     void setOutlineStyle(const DOM::DOMString &);
2051 
2052     /**
2053      * See the <a
2054      * href="https://www.w3.org/TR/CSS2/ui.html#propdef-outline-width">
2055      * outline-width property definition </a> in CSS2.
2056      *
2057      */
2058     DOM::DOMString outlineWidth() const;
2059 
2060     /**
2061      * see outlineWidth
2062      */
2063     void setOutlineWidth(const DOM::DOMString &);
2064 
2065     /**
2066      * See the <a
2067      * href="https://www.w3.org/TR/CSS2/visufx.html#propdef-overflow">
2068      * overflow property definition </a> in CSS2.
2069      *
2070      */
2071     DOM::DOMString overflow() const;
2072 
2073     /**
2074      * see overflow
2075      */
2076     void setOverflow(const DOM::DOMString &);
2077 
2078     /**
2079      * See the <a
2080      * href="https://www.w3.org/TR/CSS2/box.html#propdef-padding">
2081      * padding property definition </a> in CSS2.
2082      *
2083      */
2084     DOM::DOMString padding() const;
2085 
2086     /**
2087      * see padding
2088      */
2089     void setPadding(const DOM::DOMString &);
2090 
2091     /**
2092      * See the <a
2093      * href="https://www.w3.org/TR/CSS2/box.html#propdef-padding-top">
2094      * padding-top property definition </a> in CSS2.
2095      *
2096      */
2097     DOM::DOMString paddingTop() const;
2098 
2099     /**
2100      * see paddingTop
2101      */
2102     void setPaddingTop(const DOM::DOMString &);
2103 
2104     /**
2105      * See the <a
2106      * href="https://www.w3.org/TR/CSS2/box.html#propdef-padding-right">
2107      * padding-right property definition </a> in CSS2.
2108      *
2109      */
2110     DOM::DOMString paddingRight() const;
2111 
2112     /**
2113      * see paddingRight
2114      */
2115     void setPaddingRight(const DOM::DOMString &);
2116 
2117     /**
2118      * See the <a
2119      * href="https://www.w3.org/TR/CSS2/box.html#propdef-padding-bottom">
2120      * padding-bottom property definition </a> in CSS2.
2121      *
2122      */
2123     DOM::DOMString paddingBottom() const;
2124 
2125     /**
2126      * see paddingBottom
2127      */
2128     void setPaddingBottom(const DOM::DOMString &);
2129 
2130     /**
2131      * See the <a
2132      * href="https://www.w3.org/TR/CSS2/box.html#propdef-padding-left">
2133      * padding-left property definition </a> in CSS2.
2134      *
2135      */
2136     DOM::DOMString paddingLeft() const;
2137 
2138     /**
2139      * see paddingLeft
2140      */
2141     void setPaddingLeft(const DOM::DOMString &);
2142 
2143     /**
2144      * See the <a
2145      * href="https://www.w3.org/TR/CSS2/page.html#propdef-page">
2146      * page property definition </a> in CSS2.
2147      *
2148      */
2149     DOM::DOMString page() const;
2150 
2151     /**
2152      * see page
2153      */
2154     void setPage(const DOM::DOMString &);
2155 
2156     /**
2157      * See the <a
2158      * href="https://www.w3.org/TR/CSS2/page.html#propdef-page-break-after">
2159      * page-break-after property definition </a> in CSS2.
2160      *
2161      */
2162     DOM::DOMString pageBreakAfter() const;
2163 
2164     /**
2165      * see pageBreakAfter
2166      */
2167     void setPageBreakAfter(const DOM::DOMString &);
2168 
2169     /**
2170      * See the <a
2171      * href="https://www.w3.org/TR/CSS2/page.html#propdef-page-break-before">
2172      * page-break-before property definition </a> in CSS2.
2173      *
2174      */
2175     DOM::DOMString pageBreakBefore() const;
2176 
2177     /**
2178      * see pageBreakBefore
2179      */
2180     void setPageBreakBefore(const DOM::DOMString &);
2181 
2182     /**
2183      * See the <a
2184      * href="https://www.w3.org/TR/CSS2/page.html#propdef-page-break-inside">
2185      * page-break-inside property definition </a> in CSS2.
2186      *
2187      */
2188     DOM::DOMString pageBreakInside() const;
2189 
2190     /**
2191      * see pageBreakInside
2192      */
2193     void setPageBreakInside(const DOM::DOMString &);
2194 
2195     /**
2196      * See the <a
2197      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-pause">
2198      * pause property definition </a> in CSS2.
2199      *
2200      */
2201     DOM::DOMString pause() const;
2202 
2203     /**
2204      * see pause
2205      */
2206     void setPause(const DOM::DOMString &);
2207 
2208     /**
2209      * See the <a
2210      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-pause-after">
2211      * pause-after property definition </a> in CSS2.
2212      *
2213      */
2214     DOM::DOMString pauseAfter() const;
2215 
2216     /**
2217      * see pauseAfter
2218      */
2219     void setPauseAfter(const DOM::DOMString &);
2220 
2221     /**
2222      * See the <a
2223      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-pause-before">
2224      * pause-before property definition </a> in CSS2.
2225      *
2226      */
2227     DOM::DOMString pauseBefore() const;
2228 
2229     /**
2230      * see pauseBefore
2231      */
2232     void setPauseBefore(const DOM::DOMString &);
2233 
2234     /**
2235      * See the <a
2236      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-pitch">
2237      * pitch property definition </a> in CSS2.
2238      *
2239      */
2240     DOM::DOMString pitch() const;
2241 
2242     /**
2243      * see pitch
2244      */
2245     void setPitch(const DOM::DOMString &);
2246 
2247     /**
2248      * See the <a
2249      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-pitch-range">
2250      * pitch-range property definition </a> in CSS2.
2251      *
2252      */
2253     DOM::DOMString pitchRange() const;
2254 
2255     /**
2256      * see pitchRange
2257      */
2258     void setPitchRange(const DOM::DOMString &);
2259 
2260     /**
2261      * See the <a
2262      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-play-during">
2263      * play-during property definition </a> in CSS2.
2264      *
2265      */
2266     DOM::DOMString playDuring() const;
2267 
2268     /**
2269      * see playDuring
2270      */
2271     void setPlayDuring(const DOM::DOMString &);
2272 
2273     /**
2274      * See the <a
2275      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-position">
2276      * position property definition </a> in CSS2.
2277      *
2278      */
2279     DOM::DOMString position() const;
2280 
2281     /**
2282      * see position
2283      */
2284     void setPosition(const DOM::DOMString &);
2285 
2286     /**
2287      * See the <a
2288      * href="https://www.w3.org/TR/CSS2/generate.html#propdef-quotes">
2289      * quotes property definition </a> in CSS2.
2290      *
2291      */
2292     DOM::DOMString quotes() const;
2293 
2294     /**
2295      * see quotes
2296      */
2297     void setQuotes(const DOM::DOMString &);
2298 
2299     /**
2300      * See the <a
2301      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-richness">
2302      * richness property definition </a> in CSS2.
2303      *
2304      */
2305     DOM::DOMString richness() const;
2306 
2307     /**
2308      * see richness
2309      */
2310     void setRichness(const DOM::DOMString &);
2311 
2312     /**
2313      * See the <a
2314      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-right">
2315      * right property definition </a> in CSS2.
2316      *
2317      */
2318     DOM::DOMString right() const;
2319 
2320     /**
2321      * see right
2322      */
2323     void setRight(const DOM::DOMString &);
2324 
2325     /**
2326      * See the <a
2327      * href="https://www.w3.org/TR/CSS2/page.html#propdef-size">
2328      * size property definition </a> in CSS2.
2329      *
2330      */
2331     DOM::DOMString size() const;
2332 
2333     /**
2334      * see size
2335      */
2336     void setSize(const DOM::DOMString &);
2337 
2338     /**
2339      * See the <a
2340      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-speak">
2341      * speak property definition </a> in CSS2.
2342      *
2343      */
2344     DOM::DOMString speak() const;
2345 
2346     /**
2347      * see speak
2348      */
2349     void setSpeak(const DOM::DOMString &);
2350 
2351     /**
2352      * See the <a
2353      * href="https://www.w3.org/TR/CSS2/tables.html#propdef-speak-header">
2354      * speak-header property definition </a> in CSS2.
2355      *
2356      */
2357     DOM::DOMString speakHeader() const;
2358 
2359     /**
2360      * see speakHeader
2361      */
2362     void setSpeakHeader(const DOM::DOMString &);
2363 
2364     /**
2365      * See the <a
2366      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-speak-numeral">
2367      * speak-numeral property definition </a> in CSS2.
2368      *
2369      */
2370     DOM::DOMString speakNumeral() const;
2371 
2372     /**
2373      * see speakNumeral
2374      */
2375     void setSpeakNumeral(const DOM::DOMString &);
2376 
2377     /**
2378      * See the <a
2379      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-speak-punctuation">
2380      * speak-punctuation property definition </a> in CSS2.
2381      *
2382      */
2383     DOM::DOMString speakPunctuation() const;
2384 
2385     /**
2386      * see speakPunctuation
2387      */
2388     void setSpeakPunctuation(const DOM::DOMString &);
2389 
2390     /**
2391      * See the <a
2392      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-speech-rate">
2393      * speech-rate property definition </a> in CSS2.
2394      *
2395      */
2396     DOM::DOMString speechRate() const;
2397 
2398     /**
2399      * see speechRate
2400      */
2401     void setSpeechRate(const DOM::DOMString &);
2402 
2403     /**
2404      * See the <a
2405      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-stress">
2406      * stress property definition </a> in CSS2.
2407      *
2408      */
2409     DOM::DOMString stress() const;
2410 
2411     /**
2412      * see stress
2413      */
2414     void setStress(const DOM::DOMString &);
2415 
2416     /**
2417      * See the <a
2418      * href="https://www.w3.org/TR/CSS2/tables.html#propdef-table-layout">
2419      * table-layout property definition </a> in CSS2.
2420      *
2421      */
2422     DOM::DOMString tableLayout() const;
2423 
2424     /**
2425      * see tableLayout
2426      */
2427     void setTableLayout(const DOM::DOMString &);
2428 
2429     /**
2430      * See the <a
2431      * href="https://www.w3.org/TR/CSS2/text.html#propdef-text-align">
2432      * text-align property definition </a> in CSS2.
2433      *
2434      */
2435     DOM::DOMString textAlign() const;
2436 
2437     /**
2438      * see textAlign
2439      */
2440     void setTextAlign(const DOM::DOMString &);
2441 
2442     /**
2443      * See the <a
2444      * href="https://www.w3.org/TR/CSS2/text.html#propdef-text-decoration">
2445      * text-decoration property definition </a> in CSS2.
2446      *
2447      */
2448     DOM::DOMString textDecoration() const;
2449 
2450     /**
2451      * see textDecoration
2452      */
2453     void setTextDecoration(const DOM::DOMString &);
2454 
2455     /**
2456      * See the <a
2457      * href="https://www.w3.org/TR/CSS2/text.html#propdef-text-indent">
2458      * text-indent property definition </a> in CSS2.
2459      *
2460      */
2461     DOM::DOMString textIndent() const;
2462 
2463     /**
2464      * see textIndent
2465      */
2466     void setTextIndent(const DOM::DOMString &);
2467 
2468     /**
2469      * See the <a
2470      * href="https://www.w3.org/TR/CSS2/text.html#propdef-text-shadow">
2471      * text-shadow property definition </a> in CSS2.
2472      *
2473      */
2474     DOM::DOMString textShadow() const;
2475 
2476     /**
2477      * see textShadow
2478      */
2479     void setTextShadow(const DOM::DOMString &);
2480 
2481     /**
2482      * See the <a
2483      * href="https://www.w3.org/TR/CSS2/text.html#propdef-text-transform">
2484      * text-transform property definition </a> in CSS2.
2485      *
2486      */
2487     DOM::DOMString textTransform() const;
2488 
2489     /**
2490      * see textTransform
2491      */
2492     void setTextTransform(const DOM::DOMString &);
2493 
2494     /**
2495      * See the <a
2496      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-top">
2497      * top property definition </a> in CSS2.
2498      *
2499      */
2500     DOM::DOMString top() const;
2501 
2502     /**
2503      * see top
2504      */
2505     void setTop(const DOM::DOMString &);
2506 
2507     /**
2508      * See the <a
2509      * href="https://www.w3.org/TR/CSS2/visuren.html#propdef-unicode-bidi">
2510      * unicode-bidi property definition </a> in CSS2.
2511      *
2512      */
2513     DOM::DOMString unicodeBidi() const;
2514 
2515     /**
2516      * see unicodeBidi
2517      */
2518     void setUnicodeBidi(const DOM::DOMString &);
2519 
2520     /**
2521      * See the <a
2522      * href="https://www.w3.org/TR/CSS2/visudet.html#propdef-vertical-align">
2523      * vertical-align property definition </a> in CSS2.
2524      *
2525      */
2526     DOM::DOMString verticalAlign() const;
2527 
2528     /**
2529      * see verticalAlign
2530      */
2531     void setVerticalAlign(const DOM::DOMString &);
2532 
2533     /**
2534      * See the <a
2535      * href="https://www.w3.org/TR/CSS2/visufx.html#propdef-visibility">
2536      * visibility property definition </a> in CSS2.
2537      *
2538      */
2539     DOM::DOMString visibility() const;
2540 
2541     /**
2542      * see visibility
2543      */
2544     void setVisibility(const DOM::DOMString &);
2545 
2546     /**
2547      * See the <a
2548      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-voice-family">
2549      * voice-family property definition </a> in CSS2.
2550      *
2551      */
2552     DOM::DOMString voiceFamily() const;
2553 
2554     /**
2555      * see voiceFamily
2556      */
2557     void setVoiceFamily(const DOM::DOMString &);
2558 
2559     /**
2560      * See the <a
2561      * href="https://www.w3.org/TR/CSS2/aural.html#propdef-volume">
2562      * volume property definition </a> in CSS2.
2563      *
2564      */
2565     DOM::DOMString volume() const;
2566 
2567     /**
2568      * see volume
2569      */
2570     void setVolume(const DOM::DOMString &);
2571 
2572     /**
2573      * See the <a
2574      * href="https://www.w3.org/TR/CSS2/text.html#propdef-white-space">
2575      * white-space property definition </a> in CSS2.
2576      *
2577      */
2578     DOM::DOMString whiteSpace() const;
2579 
2580     /**
2581      * see whiteSpace
2582      */
2583     void setWhiteSpace(const DOM::DOMString &);
2584 
2585     /**
2586      * See the <a
2587      * href="https://www.w3.org/TR/CSS2/page.html#propdef-widows">
2588      * widows property definition </a> in CSS2.
2589      *
2590      */
2591     DOM::DOMString widows() const;
2592 
2593     /**
2594      * see widows
2595      */
2596     void setWidows(const DOM::DOMString &);
2597 
2598     /**
2599      * See the <a
2600      * href="https://www.w3.org/TR/CSS2/visudet.html#propdef-width">
2601      * width property definition </a> in CSS2.
2602      *
2603      */
2604     DOM::DOMString width() const;
2605 
2606     /**
2607      * see width
2608      */
2609     void setWidth(const DOM::DOMString &);
2610 
2611     /**
2612      * See the <a
2613      * href="https://www.w3.org/TR/CSS2/text.html#propdef-word-spacing">
2614      * word-spacing property definition </a> in CSS2.
2615      *
2616      */
2617     DOM::DOMString wordSpacing() const;
2618 
2619     /**
2620      * see wordSpacing
2621      */
2622     void setWordSpacing(const DOM::DOMString &);
2623 
2624     /**
2625      * See the <a
2626      * href="https://www.w3.org/TR/CSS2/visufx.html#propdef-z-index">
2627      * z-index property definition </a> in CSS2.
2628      *
2629      */
2630     DOM::DOMString zIndex() const;
2631 
2632     /**
2633      * see zIndex
2634      */
2635     void setZIndex(const DOM::DOMString &);
2636 };
2637 
2638 class CSS2TextShadowImpl;
2639 class CSSValue;
2640 
2641 /**
2642  * The \c CSS2TextShadow interface represents a simple
2643  * value for the <a
2644  * href="https://www.w3.org/TR/CSS2/text.html#propdef-text-shadow">
2645  * text-shadow </a> CSS Level 2 property.
2646  *
2647  */
2648 class CSS2TextShadow
2649 {
2650 public:
2651     CSS2TextShadow();
2652     CSS2TextShadow(const CSS2TextShadow &other);
2653     CSS2TextShadow(CSS2TextShadowImpl *impl);
2654 public:
2655 
2656     CSS2TextShadow &operator = (const CSS2TextShadow &other);
2657 
2658     ~CSS2TextShadow();
2659 
2660     /**
2661      * Specified the color of the text shadow. The CSS Value can
2662      * contain an empty string if no color has been specified.
2663      *
2664      */
2665     CSSValue color() const;
2666 
2667     /**
2668      * The horizontal position of the text shadow. \c 0 if
2669      * no length has been specified.
2670      *
2671      */
2672     CSSValue horizontal() const;
2673 
2674     /**
2675      * The vertical position of the text shadow. \c 0 if
2676      * no length has been specified.
2677      *
2678      */
2679     CSSValue vertical() const;
2680 
2681     /**
2682      * The blur radius of the text shadow. \c 0 if no
2683      * length has been specified.
2684      *
2685      */
2686     CSSValue blur() const;
2687 };
2688 
2689 }; // namespace
2690 
2691 #endif