| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2004, 2005, 2006 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2006 Nikolas Zimmermann <zimmermann@kde.org> |
| 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010 Rob Buis <buis@kde.org> |
| 4 * Copyright (C) 2007 Apple Inc. All rights reserved. | 4 * Copyright (C) 2007 Apple Inc. All rights reserved. |
| 5 * | 5 * |
| 6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
| 7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
| 8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
| 9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
| 10 * | 10 * |
| (...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 176 | 176 |
| 177 float SVGSVGElement::currentScale() const | 177 float SVGSVGElement::currentScale() const |
| 178 { | 178 { |
| 179 if (!inDocument() || !isOutermostSVGSVGElement()) | 179 if (!inDocument() || !isOutermostSVGSVGElement()) |
| 180 return 1; | 180 return 1; |
| 181 | 181 |
| 182 Frame* frame = document().frame(); | 182 Frame* frame = document().frame(); |
| 183 if (!frame) | 183 if (!frame) |
| 184 return 1; | 184 return 1; |
| 185 | 185 |
| 186 FrameTree* frameTree = frame->tree(); | 186 const FrameTree& frameTree = frame->tree(); |
| 187 ASSERT(frameTree); | |
| 188 | 187 |
| 189 // The behaviour of currentScale() is undefined, when we're dealing with non
-standalone SVG documents. | 188 // The behaviour of currentScale() is undefined, when we're dealing with non
-standalone SVG documents. |
| 190 // If the svg is embedded, the scaling is handled by the host renderer, so w
hen asking from inside | 189 // If the svg is embedded, the scaling is handled by the host renderer, so w
hen asking from inside |
| 191 // the SVG document, a scale value of 1 seems reasonable, as it doesn't know
anything about the parent scale. | 190 // the SVG document, a scale value of 1 seems reasonable, as it doesn't know
anything about the parent scale. |
| 192 return frameTree->parent() ? 1 : frame->pageZoomFactor(); | 191 return frameTree.parent() ? 1 : frame->pageZoomFactor(); |
| 193 } | 192 } |
| 194 | 193 |
| 195 void SVGSVGElement::setCurrentScale(float scale) | 194 void SVGSVGElement::setCurrentScale(float scale) |
| 196 { | 195 { |
| 197 if (!inDocument() || !isOutermostSVGSVGElement()) | 196 if (!inDocument() || !isOutermostSVGSVGElement()) |
| 198 return; | 197 return; |
| 199 | 198 |
| 200 Frame* frame = document().frame(); | 199 Frame* frame = document().frame(); |
| 201 if (!frame) | 200 if (!frame) |
| 202 return; | 201 return; |
| 203 | 202 |
| 204 FrameTree* frameTree = frame->tree(); | 203 const FrameTree& frameTree = frame->tree(); |
| 205 ASSERT(frameTree); | |
| 206 | 204 |
| 207 // The behaviour of setCurrentScale() is undefined, when we're dealing with
non-standalone SVG documents. | 205 // The behaviour of setCurrentScale() is undefined, when we're dealing with
non-standalone SVG documents. |
| 208 // We choose the ignore this call, it's pretty useless to support calling se
tCurrentScale() from within | 206 // We choose the ignore this call, it's pretty useless to support calling se
tCurrentScale() from within |
| 209 // an embedded SVG document, for the same reasons as in currentScale() - nee
ds resolution by SVG WG. | 207 // an embedded SVG document, for the same reasons as in currentScale() - nee
ds resolution by SVG WG. |
| 210 if (frameTree->parent()) | 208 if (frameTree.parent()) |
| 211 return; | 209 return; |
| 212 | 210 |
| 213 frame->setPageZoomFactor(scale); | 211 frame->setPageZoomFactor(scale); |
| 214 } | 212 } |
| 215 | 213 |
| 216 void SVGSVGElement::setCurrentTranslate(const FloatPoint& translation) | 214 void SVGSVGElement::setCurrentTranslate(const FloatPoint& translation) |
| 217 { | 215 { |
| 218 m_translation = translation; | 216 m_translation = translation; |
| 219 updateCurrentTranslate(); | 217 updateCurrentTranslate(); |
| 220 } | 218 } |
| (...skipping 560 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 781 continue; | 779 continue; |
| 782 | 780 |
| 783 Element* element = toElement(node); | 781 Element* element = toElement(node); |
| 784 if (element->getIdAttribute() == id) | 782 if (element->getIdAttribute() == id) |
| 785 return element; | 783 return element; |
| 786 } | 784 } |
| 787 return 0; | 785 return 0; |
| 788 } | 786 } |
| 789 | 787 |
| 790 } | 788 } |
| OLD | NEW |