OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Andreas Kling (kling@webkit.org) | 2 * Copyright (C) 2011 Andreas Kling (kling@webkit.org) |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 12 matching lines...) Expand all Loading... |
23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
24 * | 24 * |
25 */ | 25 */ |
26 | 26 |
27 #include "config.h" | 27 #include "config.h" |
28 #include "core/css/CSSValue.h" | 28 #include "core/css/CSSValue.h" |
29 | 29 |
30 #include "core/css/CSSBorderImageSliceValue.h" | 30 #include "core/css/CSSBorderImageSliceValue.h" |
31 #include "core/css/CSSCanvasValue.h" | 31 #include "core/css/CSSCanvasValue.h" |
32 #include "core/css/CSSContentDistributionValue.h" | 32 #include "core/css/CSSContentDistributionValue.h" |
| 33 #include "core/css/CSSCounterValue.h" |
33 #include "core/css/CSSCrossfadeValue.h" | 34 #include "core/css/CSSCrossfadeValue.h" |
34 #include "core/css/CSSCursorImageValue.h" | 35 #include "core/css/CSSCursorImageValue.h" |
35 #include "core/css/CSSFontFaceSrcValue.h" | 36 #include "core/css/CSSFontFaceSrcValue.h" |
36 #include "core/css/CSSFontFeatureValue.h" | 37 #include "core/css/CSSFontFeatureValue.h" |
37 #include "core/css/CSSFunctionValue.h" | 38 #include "core/css/CSSFunctionValue.h" |
38 #include "core/css/CSSGradientValue.h" | 39 #include "core/css/CSSGradientValue.h" |
39 #include "core/css/CSSGridLineNamesValue.h" | 40 #include "core/css/CSSGridLineNamesValue.h" |
40 #include "core/css/CSSGridTemplateAreasValue.h" | 41 #include "core/css/CSSGridTemplateAreasValue.h" |
41 #include "core/css/CSSImageSetValue.h" | 42 #include "core/css/CSSImageSetValue.h" |
42 #include "core/css/CSSImageValue.h" | 43 #include "core/css/CSSImageValue.h" |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 } | 90 } |
90 | 91 |
91 bool CSSValue::equals(const CSSValue& other) const | 92 bool CSSValue::equals(const CSSValue& other) const |
92 { | 93 { |
93 if (m_classType == other.m_classType) { | 94 if (m_classType == other.m_classType) { |
94 switch (m_classType) { | 95 switch (m_classType) { |
95 case BorderImageSliceClass: | 96 case BorderImageSliceClass: |
96 return compareCSSValues<CSSBorderImageSliceValue>(*this, other); | 97 return compareCSSValues<CSSBorderImageSliceValue>(*this, other); |
97 case CanvasClass: | 98 case CanvasClass: |
98 return compareCSSValues<CSSCanvasValue>(*this, other); | 99 return compareCSSValues<CSSCanvasValue>(*this, other); |
| 100 case CounterClass: |
| 101 return compareCSSValues<CSSCounterValue>(*this, other); |
99 case CursorImageClass: | 102 case CursorImageClass: |
100 return compareCSSValues<CSSCursorImageValue>(*this, other); | 103 return compareCSSValues<CSSCursorImageValue>(*this, other); |
101 case FontFaceSrcClass: | 104 case FontFaceSrcClass: |
102 return compareCSSValues<CSSFontFaceSrcValue>(*this, other); | 105 return compareCSSValues<CSSFontFaceSrcValue>(*this, other); |
103 case FontFeatureClass: | 106 case FontFeatureClass: |
104 return compareCSSValues<CSSFontFeatureValue>(*this, other); | 107 return compareCSSValues<CSSFontFeatureValue>(*this, other); |
105 case FunctionClass: | 108 case FunctionClass: |
106 return compareCSSValues<CSSFunctionValue>(*this, other); | 109 return compareCSSValues<CSSFunctionValue>(*this, other); |
107 case LinearGradientClass: | 110 case LinearGradientClass: |
108 return compareCSSValues<CSSLinearGradientValue>(*this, other); | 111 return compareCSSValues<CSSLinearGradientValue>(*this, other); |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 return false; | 157 return false; |
155 } | 158 } |
156 | 159 |
157 String CSSValue::cssText() const | 160 String CSSValue::cssText() const |
158 { | 161 { |
159 switch (classType()) { | 162 switch (classType()) { |
160 case BorderImageSliceClass: | 163 case BorderImageSliceClass: |
161 return toCSSBorderImageSliceValue(this)->customCSSText(); | 164 return toCSSBorderImageSliceValue(this)->customCSSText(); |
162 case CanvasClass: | 165 case CanvasClass: |
163 return toCSSCanvasValue(this)->customCSSText(); | 166 return toCSSCanvasValue(this)->customCSSText(); |
| 167 case CounterClass: |
| 168 return toCSSCounterValue(this)->customCSSText(); |
164 case CursorImageClass: | 169 case CursorImageClass: |
165 return toCSSCursorImageValue(this)->customCSSText(); | 170 return toCSSCursorImageValue(this)->customCSSText(); |
166 case FontFaceSrcClass: | 171 case FontFaceSrcClass: |
167 return toCSSFontFaceSrcValue(this)->customCSSText(); | 172 return toCSSFontFaceSrcValue(this)->customCSSText(); |
168 case FontFeatureClass: | 173 case FontFeatureClass: |
169 return toCSSFontFeatureValue(this)->customCSSText(); | 174 return toCSSFontFeatureValue(this)->customCSSText(); |
170 case FunctionClass: | 175 case FunctionClass: |
171 return toCSSFunctionValue(this)->customCSSText(); | 176 return toCSSFunctionValue(this)->customCSSText(); |
172 case LinearGradientClass: | 177 case LinearGradientClass: |
173 return toCSSLinearGradientValue(this)->customCSSText(); | 178 return toCSSLinearGradientValue(this)->customCSSText(); |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
218 | 223 |
219 void CSSValue::destroy() | 224 void CSSValue::destroy() |
220 { | 225 { |
221 switch (classType()) { | 226 switch (classType()) { |
222 case BorderImageSliceClass: | 227 case BorderImageSliceClass: |
223 delete toCSSBorderImageSliceValue(this); | 228 delete toCSSBorderImageSliceValue(this); |
224 return; | 229 return; |
225 case CanvasClass: | 230 case CanvasClass: |
226 delete toCSSCanvasValue(this); | 231 delete toCSSCanvasValue(this); |
227 return; | 232 return; |
| 233 case CounterClass: |
| 234 delete toCSSCounterValue(this); |
| 235 return; |
228 case CursorImageClass: | 236 case CursorImageClass: |
229 delete toCSSCursorImageValue(this); | 237 delete toCSSCursorImageValue(this); |
230 return; | 238 return; |
231 case FontFaceSrcClass: | 239 case FontFaceSrcClass: |
232 delete toCSSFontFaceSrcValue(this); | 240 delete toCSSFontFaceSrcValue(this); |
233 return; | 241 return; |
234 case FontFeatureClass: | 242 case FontFeatureClass: |
235 delete toCSSFontFeatureValue(this); | 243 delete toCSSFontFeatureValue(this); |
236 return; | 244 return; |
237 case FunctionClass: | 245 case FunctionClass: |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
306 | 314 |
307 void CSSValue::finalizeGarbageCollectedObject() | 315 void CSSValue::finalizeGarbageCollectedObject() |
308 { | 316 { |
309 switch (classType()) { | 317 switch (classType()) { |
310 case BorderImageSliceClass: | 318 case BorderImageSliceClass: |
311 toCSSBorderImageSliceValue(this)->~CSSBorderImageSliceValue(); | 319 toCSSBorderImageSliceValue(this)->~CSSBorderImageSliceValue(); |
312 return; | 320 return; |
313 case CanvasClass: | 321 case CanvasClass: |
314 toCSSCanvasValue(this)->~CSSCanvasValue(); | 322 toCSSCanvasValue(this)->~CSSCanvasValue(); |
315 return; | 323 return; |
| 324 case CounterClass: |
| 325 toCSSCounterValue(this)->~CSSCounterValue(); |
| 326 return; |
316 case CursorImageClass: | 327 case CursorImageClass: |
317 toCSSCursorImageValue(this)->~CSSCursorImageValue(); | 328 toCSSCursorImageValue(this)->~CSSCursorImageValue(); |
318 return; | 329 return; |
319 case FontFaceSrcClass: | 330 case FontFaceSrcClass: |
320 toCSSFontFaceSrcValue(this)->~CSSFontFaceSrcValue(); | 331 toCSSFontFaceSrcValue(this)->~CSSFontFaceSrcValue(); |
321 return; | 332 return; |
322 case FontFeatureClass: | 333 case FontFeatureClass: |
323 toCSSFontFeatureValue(this)->~CSSFontFeatureValue(); | 334 toCSSFontFeatureValue(this)->~CSSFontFeatureValue(); |
324 return; | 335 return; |
325 case FunctionClass: | 336 case FunctionClass: |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
394 | 405 |
395 DEFINE_TRACE(CSSValue) | 406 DEFINE_TRACE(CSSValue) |
396 { | 407 { |
397 switch (classType()) { | 408 switch (classType()) { |
398 case BorderImageSliceClass: | 409 case BorderImageSliceClass: |
399 toCSSBorderImageSliceValue(this)->traceAfterDispatch(visitor); | 410 toCSSBorderImageSliceValue(this)->traceAfterDispatch(visitor); |
400 return; | 411 return; |
401 case CanvasClass: | 412 case CanvasClass: |
402 toCSSCanvasValue(this)->traceAfterDispatch(visitor); | 413 toCSSCanvasValue(this)->traceAfterDispatch(visitor); |
403 return; | 414 return; |
| 415 case CounterClass: |
| 416 toCSSCounterValue(this)->traceAfterDispatch(visitor); |
| 417 return; |
404 case CursorImageClass: | 418 case CursorImageClass: |
405 toCSSCursorImageValue(this)->traceAfterDispatch(visitor); | 419 toCSSCursorImageValue(this)->traceAfterDispatch(visitor); |
406 return; | 420 return; |
407 case FontFaceSrcClass: | 421 case FontFaceSrcClass: |
408 toCSSFontFaceSrcValue(this)->traceAfterDispatch(visitor); | 422 toCSSFontFaceSrcValue(this)->traceAfterDispatch(visitor); |
409 return; | 423 return; |
410 case FontFeatureClass: | 424 case FontFeatureClass: |
411 toCSSFontFeatureValue(this)->traceAfterDispatch(visitor); | 425 toCSSFontFeatureValue(this)->traceAfterDispatch(visitor); |
412 return; | 426 return; |
413 case FunctionClass: | 427 case FunctionClass: |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
474 toCSSSVGDocumentValue(this)->traceAfterDispatch(visitor); | 488 toCSSSVGDocumentValue(this)->traceAfterDispatch(visitor); |
475 return; | 489 return; |
476 case CSSContentDistributionClass: | 490 case CSSContentDistributionClass: |
477 toCSSContentDistributionValue(this)->traceAfterDispatch(visitor); | 491 toCSSContentDistributionValue(this)->traceAfterDispatch(visitor); |
478 return; | 492 return; |
479 } | 493 } |
480 ASSERT_NOT_REACHED(); | 494 ASSERT_NOT_REACHED(); |
481 } | 495 } |
482 | 496 |
483 } | 497 } |
OLD | NEW |