OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2009 Apple Inc. All rights reserved. | 4 * Copyright (C) 2009 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 * |
11 * This library is distributed in the hope that it will be useful, | 11 * This library is distributed in the hope that it will be useful, |
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
14 * Library General Public License for more details. | 14 * Library General Public License for more details. |
15 * | 15 * |
16 * You should have received a copy of the GNU Library General Public License | 16 * You should have received a copy of the GNU Library General Public License |
17 * along with this library; see the file COPYING.LIB. If not, write to | 17 * along with this library; see the file COPYING.LIB. If not, write to |
18 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 18 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
19 * Boston, MA 02110-1301, USA. | 19 * Boston, MA 02110-1301, USA. |
20 */ | 20 */ |
21 | 21 |
22 #ifndef SVGElement_h | 22 #ifndef SVGElement_h |
23 #define SVGElement_h | 23 #define SVGElement_h |
24 | 24 |
25 #if ENABLE(SVG) | 25 #if ENABLE(SVG) |
26 #include "SVGLocatable.h" | 26 #include "SVGLocatable.h" |
27 #include "SVGParsingError.h" | 27 #include "SVGParsingError.h" |
28 #include "SVGPropertyInfo.h" | 28 #include "SVGPropertyInfo.h" |
29 #include "StyledElement.h" | 29 #include "StyledElement.h" |
| 30 #include "Timer.h" |
30 #include <wtf/HashMap.h> | 31 #include <wtf/HashMap.h> |
31 | 32 |
32 namespace WebCore { | 33 namespace WebCore { |
33 | 34 |
34 class AffineTransform; | 35 class AffineTransform; |
35 class CSSCursorImageValue; | 36 class CSSCursorImageValue; |
36 class Document; | 37 class Document; |
37 class SVGAttributeToPropertyMap; | 38 class SVGAttributeToPropertyMap; |
38 class SVGCursorElement; | 39 class SVGCursorElement; |
39 class SVGDocumentExtensions; | 40 class SVGDocumentExtensions; |
(...skipping 25 matching lines...) Expand all Loading... |
65 virtual bool isTextContent() const { return false; } | 66 virtual bool isTextContent() const { return false; } |
66 | 67 |
67 // For SVGTests | 68 // For SVGTests |
68 virtual bool isValid() const { return true; } | 69 virtual bool isValid() const { return true; } |
69 | 70 |
70 virtual void svgAttributeChanged(const QualifiedName&) { } | 71 virtual void svgAttributeChanged(const QualifiedName&) { } |
71 | 72 |
72 virtual void animatedPropertyTypeForAttribute(const QualifiedName&, Vector<A
nimatedPropertyType>&); | 73 virtual void animatedPropertyTypeForAttribute(const QualifiedName&, Vector<A
nimatedPropertyType>&); |
73 | 74 |
74 void sendSVGLoadEventIfPossible(bool sendParentLoadEvents = false); | 75 void sendSVGLoadEventIfPossible(bool sendParentLoadEvents = false); |
| 76 void sendSVGLoadEventIfPossibleAsynchronously(); |
| 77 void svgLoadEventTimerFired(Timer<SVGElement>*); |
| 78 virtual Timer<SVGElement>* svgLoadEventTimer(); |
75 | 79 |
76 virtual AffineTransform* supplementalTransform() { return 0; } | 80 virtual AffineTransform* supplementalTransform() { return 0; } |
77 | 81 |
78 void invalidateSVGAttributes() { clearAreSVGAttributesValid(); } | 82 void invalidateSVGAttributes() { clearAreSVGAttributesValid(); } |
79 | 83 |
80 const HashSet<SVGElementInstance*>& instancesForElement() const; | 84 const HashSet<SVGElementInstance*>& instancesForElement() const; |
81 | 85 |
82 bool boundingBox(FloatRect&, SVGLocatable::StyleUpdateStrategy = SVGLocatabl
e::AllowStyleUpdate); | 86 bool boundingBox(FloatRect&, SVGLocatable::StyleUpdateStrategy = SVGLocatabl
e::AllowStyleUpdate); |
83 | 87 |
84 void setCursorElement(SVGCursorElement*); | 88 void setCursorElement(SVGCursorElement*); |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 inline SVGElement* toSVGElement(Element* element) | 164 inline SVGElement* toSVGElement(Element* element) |
161 { | 165 { |
162 ASSERT(!element || element->isSVGElement()); | 166 ASSERT(!element || element->isSVGElement()); |
163 return static_cast<SVGElement*>(element); | 167 return static_cast<SVGElement*>(element); |
164 } | 168 } |
165 | 169 |
166 } | 170 } |
167 | 171 |
168 #endif | 172 #endif |
169 #endif | 173 #endif |
OLD | NEW |