OLD | NEW |
1 /* | 1 /* |
2 Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> | 2 Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> |
3 2004, 2005 Rob Buis <buis@kde.org> | 3 2004, 2005 Rob Buis <buis@kde.org> |
4 Copyright (C) 2005, 2006 Apple Computer, Inc. | 4 Copyright (C) 2005, 2006 Apple Computer, Inc. |
5 Copyright (C) Research In Motion Limited 2010. All rights reserved. | 5 Copyright (C) Research In Motion Limited 2010. All rights reserved. |
6 | 6 |
7 This library is free software; you can redistribute it and/or | 7 This library is free software; you can redistribute it and/or |
8 modify it under the terms of the GNU Library General Public | 8 modify it under the terms of the GNU Library General Public |
9 License as published by the Free Software Foundation; either | 9 License as published by the Free Software Foundation; either |
10 version 2 of the License, or (at your option) any later version. | 10 version 2 of the License, or (at your option) any later version. |
(...skipping 10 matching lines...) Expand all Loading... |
21 */ | 21 */ |
22 | 22 |
23 #ifndef SVGRenderStyle_h | 23 #ifndef SVGRenderStyle_h |
24 #define SVGRenderStyle_h | 24 #define SVGRenderStyle_h |
25 | 25 |
26 #include "bindings/v8/ExceptionStatePlaceholder.h" | 26 #include "bindings/v8/ExceptionStatePlaceholder.h" |
27 #include "core/css/CSSValueList.h" | 27 #include "core/css/CSSValueList.h" |
28 #include "core/rendering/style/DataRef.h" | 28 #include "core/rendering/style/DataRef.h" |
29 #include "core/rendering/style/RenderStyleConstants.h" | 29 #include "core/rendering/style/RenderStyleConstants.h" |
30 #include "core/rendering/style/SVGRenderStyleDefs.h" | 30 #include "core/rendering/style/SVGRenderStyleDefs.h" |
| 31 #include "core/rendering/style/StyleDifference.h" |
31 #include "core/svg/SVGPaint.h" | 32 #include "core/svg/SVGPaint.h" |
32 #include "platform/graphics/GraphicsTypes.h" | 33 #include "platform/graphics/GraphicsTypes.h" |
33 #include "platform/graphics/Path.h" | 34 #include "platform/graphics/Path.h" |
34 | 35 |
35 namespace WebCore { | 36 namespace WebCore { |
36 | 37 |
37 class FloatRect; | 38 class FloatRect; |
38 class IntRect; | 39 class IntRect; |
39 class RenderObject; | 40 class RenderObject; |
40 | 41 |
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
420 DataRef<StyleMiscData> misc; | 421 DataRef<StyleMiscData> misc; |
421 DataRef<StyleResourceData> resources; | 422 DataRef<StyleResourceData> resources; |
422 | 423 |
423 private: | 424 private: |
424 enum CreateDefaultType { CreateDefault }; | 425 enum CreateDefaultType { CreateDefault }; |
425 | 426 |
426 SVGRenderStyle(); | 427 SVGRenderStyle(); |
427 SVGRenderStyle(const SVGRenderStyle&); | 428 SVGRenderStyle(const SVGRenderStyle&); |
428 SVGRenderStyle(CreateDefaultType); // Used to create the default style. | 429 SVGRenderStyle(CreateDefaultType); // Used to create the default style. |
429 | 430 |
| 431 bool diffNeedsLayoutAndRepaint(const SVGRenderStyle* other) const; |
| 432 bool diffNeedsRepaintOnly(const SVGRenderStyle* other) const; |
| 433 |
430 void setBitDefaults() | 434 void setBitDefaults() |
431 { | 435 { |
432 svg_inherited_flags._clipRule = initialClipRule(); | 436 svg_inherited_flags._clipRule = initialClipRule(); |
433 svg_inherited_flags._colorRendering = initialColorRendering(); | 437 svg_inherited_flags._colorRendering = initialColorRendering(); |
434 svg_inherited_flags._fillRule = initialFillRule(); | 438 svg_inherited_flags._fillRule = initialFillRule(); |
435 svg_inherited_flags._shapeRendering = initialShapeRendering(); | 439 svg_inherited_flags._shapeRendering = initialShapeRendering(); |
436 svg_inherited_flags._textAnchor = initialTextAnchor(); | 440 svg_inherited_flags._textAnchor = initialTextAnchor(); |
437 svg_inherited_flags._capStyle = initialCapStyle(); | 441 svg_inherited_flags._capStyle = initialCapStyle(); |
438 svg_inherited_flags._joinStyle = initialJoinStyle(); | 442 svg_inherited_flags._joinStyle = initialJoinStyle(); |
439 svg_inherited_flags._colorInterpolation = initialColorInterpolation(); | 443 svg_inherited_flags._colorInterpolation = initialColorInterpolation(); |
440 svg_inherited_flags._colorInterpolationFilters = initialColorInterpolati
onFilters(); | 444 svg_inherited_flags._colorInterpolationFilters = initialColorInterpolati
onFilters(); |
441 svg_inherited_flags._writingMode = initialWritingMode(); | 445 svg_inherited_flags._writingMode = initialWritingMode(); |
442 svg_inherited_flags._glyphOrientationHorizontal = initialGlyphOrientatio
nHorizontal(); | 446 svg_inherited_flags._glyphOrientationHorizontal = initialGlyphOrientatio
nHorizontal(); |
443 svg_inherited_flags._glyphOrientationVertical = initialGlyphOrientationV
ertical(); | 447 svg_inherited_flags._glyphOrientationVertical = initialGlyphOrientationV
ertical(); |
444 svg_inherited_flags._paintOrder = initialPaintOrder(); | 448 svg_inherited_flags._paintOrder = initialPaintOrder(); |
445 | 449 |
446 svg_noninherited_flags._niflags = 0; | 450 svg_noninherited_flags._niflags = 0; |
447 svg_noninherited_flags.f._alignmentBaseline = initialAlignmentBaseline()
; | 451 svg_noninherited_flags.f._alignmentBaseline = initialAlignmentBaseline()
; |
448 svg_noninherited_flags.f._dominantBaseline = initialDominantBaseline(); | 452 svg_noninherited_flags.f._dominantBaseline = initialDominantBaseline(); |
449 svg_noninherited_flags.f._baselineShift = initialBaselineShift(); | 453 svg_noninherited_flags.f._baselineShift = initialBaselineShift(); |
450 svg_noninherited_flags.f._vectorEffect = initialVectorEffect(); | 454 svg_noninherited_flags.f._vectorEffect = initialVectorEffect(); |
451 svg_noninherited_flags.f.bufferedRendering = initialBufferedRendering(); | 455 svg_noninherited_flags.f.bufferedRendering = initialBufferedRendering(); |
452 svg_noninherited_flags.f.maskType = initialMaskType(); | 456 svg_noninherited_flags.f.maskType = initialMaskType(); |
453 } | 457 } |
454 }; | 458 }; |
455 | 459 |
456 } // namespace WebCore | 460 } // namespace WebCore |
457 | 461 |
458 #endif // SVGRenderStyle_h | 462 #endif // SVGRenderStyle_h |
OLD | NEW |