OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2007 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2007 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2008 Dirk Schulze <krit@webkit.org> | 4 * Copyright (C) 2008 Dirk Schulze <krit@webkit.org> |
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 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 } else { | 68 } else { |
69 if (m_pattern) | 69 if (m_pattern) |
70 context.setStrokePattern(m_pattern); | 70 context.setStrokePattern(m_pattern); |
71 else if (m_gradient) | 71 else if (m_gradient) |
72 context.setStrokeGradient(m_gradient); | 72 context.setStrokeGradient(m_gradient); |
73 else | 73 else |
74 context.setStrokeColor(m_color); | 74 context.setStrokeColor(m_color); |
75 } | 75 } |
76 } | 76 } |
77 | 77 |
78 SVGPaintServer SVGPaintServer::requestForRenderer(RenderObject& renderer, Render
Style* style, RenderSVGResourceModeFlags resourceModeFlags) | 78 void SVGPaintServer::prependTransform(const AffineTransform& transform) |
| 79 { |
| 80 ASSERT(m_gradient || m_pattern); |
| 81 if (m_pattern) |
| 82 m_pattern->setPatternSpaceTransform(transform * m_pattern->patternSpaceT
ransform()); |
| 83 else |
| 84 m_gradient->setGradientSpaceTransform(transform * m_gradient->gradientSp
aceTransform()); |
| 85 } |
| 86 |
| 87 SVGPaintServer SVGPaintServer::requestForRenderer(RenderObject& renderer, Render
Style* style, RenderSVGResourceMode resourceMode) |
79 { | 88 { |
80 ASSERT(style); | 89 ASSERT(style); |
81 RenderSVGResourceMode resourceMode = static_cast<RenderSVGResourceMode>(reso
urceModeFlags & (ApplyToFillMode | ApplyToStrokeMode)); | |
82 ASSERT(resourceMode == ApplyToFillMode || resourceMode == ApplyToStrokeMode)
; | 90 ASSERT(resourceMode == ApplyToFillMode || resourceMode == ApplyToStrokeMode)
; |
83 | 91 |
84 bool hasFallback = false; | 92 bool hasFallback = false; |
85 RenderSVGResource* paintingResource = RenderSVGResource::requestPaintingReso
urce(resourceMode, &renderer, style, hasFallback); | 93 RenderSVGResource* paintingResource = RenderSVGResource::requestPaintingReso
urce(resourceMode, &renderer, style, hasFallback); |
86 if (!paintingResource) | 94 if (!paintingResource) |
87 return invalid(); | 95 return invalid(); |
88 | 96 |
89 SVGPaintServer paintServer = paintingResource->preparePaintServer(&renderer,
style, resourceModeFlags); | 97 SVGPaintServer paintServer = paintingResource->preparePaintServer(&renderer)
; |
90 if (paintServer.isValid()) | 98 if (paintServer.isValid()) |
91 return paintServer; | 99 return paintServer; |
92 if (hasFallback) | 100 if (hasFallback) |
93 return SVGPaintServer(RenderSVGResource::sharedSolidPaintingResource()->
color()); | 101 return SVGPaintServer(RenderSVGResource::sharedSolidPaintingResource()->
color()); |
94 return invalid(); | 102 return invalid(); |
95 } | 103 } |
96 | 104 |
97 SVGPaintServer RenderSVGResource::preparePaintServer(RenderObject*, RenderStyle*
, RenderSVGResourceModeFlags) | 105 SVGPaintServer RenderSVGResource::preparePaintServer(RenderObject*) |
98 { | 106 { |
99 ASSERT_NOT_REACHED(); | 107 ASSERT_NOT_REACHED(); |
100 return SVGPaintServer::invalid(); | 108 return SVGPaintServer::invalid(); |
101 } | 109 } |
102 | 110 |
103 RenderSVGResource* RenderSVGResource::requestPaintingResource(RenderSVGResourceM
ode mode, RenderObject* object, const RenderStyle* style, bool& hasFallback) | 111 RenderSVGResource* RenderSVGResource::requestPaintingResource(RenderSVGResourceM
ode mode, RenderObject* object, const RenderStyle* style, bool& hasFallback) |
104 { | 112 { |
105 ASSERT(object); | 113 ASSERT(object); |
106 ASSERT(style); | 114 ASSERT(style); |
107 | 115 |
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
248 // This will process the rest of the ancestors. | 256 // This will process the rest of the ancestors. |
249 toRenderSVGResourceContainer(current)->removeAllClientsFromCache(); | 257 toRenderSVGResourceContainer(current)->removeAllClientsFromCache(); |
250 break; | 258 break; |
251 } | 259 } |
252 | 260 |
253 current = current->parent(); | 261 current = current->parent(); |
254 } | 262 } |
255 } | 263 } |
256 | 264 |
257 } | 265 } |
OLD | NEW |