OLD | NEW |
1 /* | 1 /* |
2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) | 2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) |
3 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
4 * | 4 * |
5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
9 * | 9 * |
10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
13 * Library General Public License for more details. | 13 * Library General Public License for more details. |
14 * | 14 * |
15 * You should have received a copy of the GNU Library General Public License | 15 * You should have received a copy of the GNU Library General Public License |
16 * along with this library; see the file COPYING.LIB. If not, write to | 16 * along with this library; see the file COPYING.LIB. If not, write to |
17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
18 * Boston, MA 02110-1301, USA. | 18 * Boston, MA 02110-1301, USA. |
19 */ | 19 */ |
20 | 20 |
21 #ifndef CSSValue_h | 21 #ifndef CSSValue_h |
22 #define CSSValue_h | 22 #define CSSValue_h |
23 | 23 |
| 24 #include "bindings/core/v8/ScriptWrappable.h" |
24 #include "core/dom/ExceptionCode.h" | 25 #include "core/dom/ExceptionCode.h" |
25 #include "platform/heap/Handle.h" | 26 #include "platform/heap/Handle.h" |
26 #include "platform/weborigin/KURL.h" | 27 #include "platform/weborigin/KURL.h" |
27 #include "wtf/HashMap.h" | 28 #include "wtf/HashMap.h" |
28 #include "wtf/ListHashSet.h" | 29 #include "wtf/ListHashSet.h" |
29 #include "wtf/RefCounted.h" | 30 #include "wtf/RefCounted.h" |
30 #include "wtf/RefPtr.h" | 31 #include "wtf/RefPtr.h" |
31 | 32 |
32 namespace blink { | 33 namespace blink { |
33 | 34 |
34 class ExceptionState; | 35 class ExceptionState; |
35 class StyleSheetContents; | 36 class StyleSheetContents; |
36 | 37 |
37 enum CSSTextFormattingFlags { QuoteCSSStringIfNeeded, AlwaysQuoteCSSString }; | 38 enum CSSTextFormattingFlags { QuoteCSSStringIfNeeded, AlwaysQuoteCSSString }; |
38 | 39 |
39 // FIXME: The current CSSValue and subclasses should be turned into internal typ
es (StyleValue). | 40 // FIXME: The current CSSValue and subclasses should be turned into internal typ
es (StyleValue). |
40 // The few subtypes that are actually exposed in CSSOM can be seen in the cloneF
orCSSOM() function. | 41 // The few subtypes that are actually exposed in CSSOM can be seen in the cloneF
orCSSOM() function. |
41 // They should be handled by separate wrapper classes. | 42 // They should be handled by separate wrapper classes. |
42 | 43 |
43 // Please don't expose more CSSValue types to the web. | 44 // Please don't expose more CSSValue types to the web. |
44 class CSSValue : public RefCountedWillBeGarbageCollectedFinalized<CSSValue> { | 45 class CSSValue : public RefCountedWillBeGarbageCollectedFinalized<CSSValue>, pub
lic ScriptWrappableBase { |
45 public: | 46 public: |
46 enum Type { | 47 enum Type { |
47 CSS_INHERIT = 0, | 48 CSS_INHERIT = 0, |
48 CSS_PRIMITIVE_VALUE = 1, | 49 CSS_PRIMITIVE_VALUE = 1, |
49 CSS_VALUE_LIST = 2, | 50 CSS_VALUE_LIST = 2, |
50 CSS_CUSTOM = 3, | 51 CSS_CUSTOM = 3, |
51 CSS_INITIAL = 4 | 52 CSS_INITIAL = 4 |
52 | 53 |
53 }; | 54 }; |
54 | 55 |
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
253 { | 254 { |
254 return first ? second && first->equals(*second) : !second; | 255 return first ? second && first->equals(*second) : !second; |
255 } | 256 } |
256 | 257 |
257 #define DEFINE_CSS_VALUE_TYPE_CASTS(thisType, predicate) \ | 258 #define DEFINE_CSS_VALUE_TYPE_CASTS(thisType, predicate) \ |
258 DEFINE_TYPE_CASTS(thisType, CSSValue, value, value->predicate, value.predica
te) | 259 DEFINE_TYPE_CASTS(thisType, CSSValue, value, value->predicate, value.predica
te) |
259 | 260 |
260 } // namespace blink | 261 } // namespace blink |
261 | 262 |
262 #endif // CSSValue_h | 263 #endif // CSSValue_h |
OLD | NEW |