css_value.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef _CSS_css_value_h_
00028 #define _CSS_css_value_h_
00029
00030 #include <dom/dom_string.h>
00031
00032 #include <qcolor.h>
00033
00034 #include <kdemacros.h>
00035
00036 namespace DOM {
00037
00038 class CSSStyleDeclarationImpl;
00039 class CSSRule;
00040 class CSSValue;
00041
00060 class KHTML_EXPORT CSSStyleDeclaration
00061 {
00062 public:
00063 CSSStyleDeclaration();
00064 CSSStyleDeclaration(const CSSStyleDeclaration &other);
00065 CSSStyleDeclaration(CSSStyleDeclarationImpl *impl);
00066 public:
00067
00068 CSSStyleDeclaration & operator = (const CSSStyleDeclaration &other);
00069
00070 ~CSSStyleDeclaration();
00071
00079 DOM::DOMString cssText() const;
00080
00092 void setCssText( const DOM::DOMString & );
00093
00099 unsigned long length() const;
00100
00105 CSSRule parentRule() const;
00106
00120 DOM::DOMString getPropertyValue ( const DOM::DOMString &propertyName ) const;
00121 DOM::DOMString getPropertyValue ( const DOM::DOMString &propertyName );
00122
00142 CSSValue getPropertyCSSValue ( const DOM::DOMString &propertyName ) const;
00143 CSSValue getPropertyCSSValue ( const DOM::DOMString &propertyName );
00144
00163 DOM::DOMString removeProperty ( const DOM::DOMString &propertyName );
00164
00179 DOM::DOMString getPropertyPriority ( const DOM::DOMString &propertyName ) const;
00180 DOM::DOMString getPropertyPriority ( const DOM::DOMString &propertyName );
00181
00206 void setProperty ( const DOM::DOMString &propertyName, const DOM::DOMString &value, const DOM::DOMString &priority );
00207
00221 DOM::DOMString item ( unsigned long index ) const;
00222 DOM::DOMString item ( unsigned long index );
00223
00228 CSSStyleDeclarationImpl *handle() const;
00229 bool isNull() const;
00230
00231 protected:
00232 CSSStyleDeclarationImpl *impl;
00233 };
00234
00235
00236 class CSSValueImpl;
00237
00243 class KHTML_EXPORT CSSValue
00244 {
00245 public:
00246 CSSValue();
00247 CSSValue(const CSSValue &other);
00248 CSSValue(CSSValueImpl *impl);
00249 public:
00250
00251 CSSValue & operator = (const CSSValue &other);
00252
00253 ~CSSValue();
00261 enum UnitTypes {
00262 CSS_INHERIT = 0,
00263 CSS_PRIMITIVE_VALUE = 1,
00264 CSS_VALUE_LIST = 2,
00265 CSS_CUSTOM = 3,
00266 CSS_INITIAL = 4
00267 };
00268
00273 DOM::DOMString cssText() const;
00274
00286 void setCssText( const DOM::DOMString & );
00287
00292 unsigned short cssValueType() const;
00293
00298 bool isCSSValueList() const;
00299 bool isCSSPrimitiveValue() const;
00300 CSSValueImpl *handle() const;
00301 bool isNull() const;
00302
00303 protected:
00304 CSSValueImpl *impl;
00305 };
00306
00307
00308 class CSSValueListImpl;
00309 class CSSValue;
00310
00316 class KHTML_EXPORT CSSValueList : public CSSValue
00317 {
00318 public:
00319 CSSValueList();
00320 CSSValueList(const CSSValueList &other);
00321 CSSValueList(const CSSValue &other);
00322 CSSValueList(CSSValueListImpl *impl);
00323 public:
00324
00325 CSSValueList & operator = (const CSSValueList &other);
00326 CSSValueList & operator = (const CSSValue &other);
00327
00328 ~CSSValueList();
00329
00336 unsigned long length() const;
00337
00350 CSSValue item ( unsigned long index );
00351
00352 protected:
00353 CSSValueListImpl *vimpl;
00354 };
00355
00356
00357 class CSSPrimitiveValueImpl;
00358 class Counter;
00359 class RGBColor;
00360 class Rect;
00361
00373 class KHTML_EXPORT CSSPrimitiveValue : public CSSValue
00374 {
00375 public:
00376 CSSPrimitiveValue();
00377 CSSPrimitiveValue(const CSSPrimitiveValue &other);
00378 CSSPrimitiveValue(const CSSValue &other);
00379 CSSPrimitiveValue(CSSPrimitiveValueImpl *impl);
00380 public:
00381
00382 CSSPrimitiveValue & operator = (const CSSPrimitiveValue &other);
00383 CSSPrimitiveValue & operator = (const CSSValue &other);
00384
00385 ~CSSPrimitiveValue();
00390 enum UnitTypes {
00391 CSS_UNKNOWN = 0,
00392 CSS_NUMBER = 1,
00393 CSS_PERCENTAGE = 2,
00394 CSS_EMS = 3,
00395 CSS_EXS = 4,
00396 CSS_PX = 5,
00397 CSS_CM = 6,
00398 CSS_MM = 7,
00399 CSS_IN = 8,
00400 CSS_PT = 9,
00401 CSS_PC = 10,
00402 CSS_DEG = 11,
00403 CSS_RAD = 12,
00404 CSS_GRAD = 13,
00405 CSS_MS = 14,
00406 CSS_S = 15,
00407 CSS_HZ = 16,
00408 CSS_KHZ = 17,
00409 CSS_DIMENSION = 18,
00410 CSS_STRING = 19,
00411 CSS_URI = 20,
00412 CSS_IDENT = 21,
00413 CSS_ATTR = 22,
00414 CSS_COUNTER = 23,
00415 CSS_RECT = 24,
00416 CSS_RGBCOLOR = 25,
00417 CSS_HTML_RELATIVE = 255
00418 };
00419
00425 unsigned short primitiveType() const;
00426
00455 void setFloatValue ( unsigned short unitType, float floatValue );
00456
00482
00483 float getFloatValue ( unsigned short unitType );
00484
00510 void setStringValue ( unsigned short stringType, const DOM::DOMString &stringValue );
00511
00527
00528 DOM::DOMString getStringValue ( );
00529
00543
00544 Counter getCounterValue ( );
00545
00559
00560 Rect getRectValue ( );
00561
00576
00577 RGBColor getRGBColorValue ( );
00578 };
00579
00580
00581
00590 class KHTML_EXPORT RGBColor
00591 {
00592 public:
00593 RGBColor();
00597 RGBColor(const QColor& c) { m_color = c.rgb(); }
00598 RGBColor(QRgb color);
00599
00600 RGBColor(const RGBColor &other);
00601 RGBColor & operator = (const RGBColor &other);
00602
00603 ~RGBColor();
00604
00609 CSSPrimitiveValue red() const;
00610
00615 CSSPrimitiveValue green() const;
00616
00621 CSSPrimitiveValue blue() const;
00622
00626 QRgb color() const { return m_color; }
00627 protected:
00628 QRgb m_color;
00629 };
00630
00631 class RectImpl;
00632
00641 class KHTML_EXPORT Rect
00642 {
00643 friend class CSSPrimitiveValue;
00644 public:
00645 Rect();
00646 Rect(const Rect &other);
00647
00648 Rect & operator = (const Rect &other);
00649
00650 ~Rect();
00651
00656 CSSPrimitiveValue top() const;
00657
00662 CSSPrimitiveValue right() const;
00663
00668 CSSPrimitiveValue bottom() const;
00669
00674 CSSPrimitiveValue left() const;
00675
00680 RectImpl *handle() const;
00681 bool isNull() const;
00682
00683 protected:
00684 RectImpl *impl;
00685 Rect(RectImpl *i);
00686 };
00687
00688 class CounterImpl;
00689
00698 class KHTML_EXPORT Counter
00699 {
00700 friend class CSSPrimitiveValue;
00701 public:
00702 Counter();
00703 Counter(const Counter &other);
00704 public:
00705
00706 Counter & operator = (const Counter &other);
00707
00708 ~Counter();
00709
00714 DOM::DOMString identifier() const;
00715
00720 DOM::DOMString listStyle() const;
00721
00726 DOM::DOMString separator() const;
00727
00732 CounterImpl *handle() const;
00733 bool isNull() const;
00734
00735 protected:
00736 CounterImpl *impl;
00737 Counter(CounterImpl *i);
00738 };
00739
00740
00741 }
00742
00743
00744 #endif
This file is part of the documentation for khtml Library Version 3.4.3.