OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2005 Alexander Kellett <lypanov@kde.org> | 2 * Copyright (C) 2005 Alexander Kellett <lypanov@kde.org> |
3 * | 3 * |
4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
8 * | 8 * |
9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
12 * Library General Public License for more details. | 12 * Library General Public License for more details. |
13 * | 13 * |
14 * You should have received a copy of the GNU Library General Public License | 14 * You should have received a copy of the GNU Library General Public License |
15 * along with this library; see the file COPYING.LIB. If not, write to | 15 * along with this library; see the file COPYING.LIB. If not, write to |
16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
17 * Boston, MA 02110-1301, USA. | 17 * Boston, MA 02110-1301, USA. |
18 */ | 18 */ |
19 | 19 |
20 #ifndef SVGMaskElement_h | 20 #ifndef SVGMaskElement_h |
21 #define SVGMaskElement_h | 21 #define SVGMaskElement_h |
22 | 22 |
23 #include "core/svg/SVGAnimatedBoolean.h" | 23 #include "core/svg/SVGAnimatedBoolean.h" |
24 #include "core/svg/SVGAnimatedEnumeration.h" | 24 #include "core/svg/SVGAnimatedEnumeration.h" |
25 #include "core/svg/SVGAnimatedLength.h" | 25 #include "core/svg/SVGAnimatedLength.h" |
| 26 #include "core/svg/SVGElement.h" |
26 #include "core/svg/SVGExternalResourcesRequired.h" | 27 #include "core/svg/SVGExternalResourcesRequired.h" |
27 #include "core/svg/SVGStyledElement.h" | |
28 #include "core/svg/SVGTests.h" | 28 #include "core/svg/SVGTests.h" |
29 #include "core/svg/SVGUnitTypes.h" | 29 #include "core/svg/SVGUnitTypes.h" |
30 | 30 |
31 namespace WebCore { | 31 namespace WebCore { |
32 | 32 |
33 class SVGMaskElement FINAL : public SVGStyledElement, | 33 class SVGMaskElement FINAL : public SVGElement, |
34 public SVGTests, | 34 public SVGTests, |
35 public SVGExternalResourcesRequired { | 35 public SVGExternalResourcesRequired { |
36 public: | 36 public: |
37 static PassRefPtr<SVGMaskElement> create(const QualifiedName&, Document*); | 37 static PassRefPtr<SVGMaskElement> create(const QualifiedName&, Document*); |
38 | 38 |
39 private: | 39 private: |
40 SVGMaskElement(const QualifiedName&, Document*); | 40 SVGMaskElement(const QualifiedName&, Document*); |
41 | 41 |
42 virtual bool isValid() const { return SVGTests::isValid(); } | 42 virtual bool isValid() const { return SVGTests::isValid(); } |
43 virtual bool needsPendingResourceHandling() const { return false; } | 43 virtual bool needsPendingResourceHandling() const { return false; } |
44 | 44 |
45 bool isSupportedAttribute(const QualifiedName&); | 45 bool isSupportedAttribute(const QualifiedName&); |
46 virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERR
IDE; | 46 virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERR
IDE; |
47 virtual void svgAttributeChanged(const QualifiedName&); | 47 virtual void svgAttributeChanged(const QualifiedName&); |
48 virtual void childrenChanged(bool changedByParser = false, Node* beforeChang
e = 0, Node* afterChange = 0, int childCountDelta = 0); | 48 virtual void childrenChanged(bool changedByParser = false, Node* beforeChang
e = 0, Node* afterChange = 0, int childCountDelta = 0); |
49 | 49 |
| 50 virtual bool rendererIsNeeded(const NodeRenderingContext& context) OVERRIDE
{ return rendererIsNeededInternal(context); } |
50 virtual RenderObject* createRenderer(RenderStyle*); | 51 virtual RenderObject* createRenderer(RenderStyle*); |
51 | 52 |
52 virtual bool selfHasRelativeLengths() const; | 53 virtual bool selfHasRelativeLengths() const; |
53 | 54 |
54 BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGMaskElement) | 55 BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGMaskElement) |
55 DECLARE_ANIMATED_ENUMERATION(MaskUnits, maskUnits, SVGUnitTypes::SVGUnit
Type) | 56 DECLARE_ANIMATED_ENUMERATION(MaskUnits, maskUnits, SVGUnitTypes::SVGUnit
Type) |
56 DECLARE_ANIMATED_ENUMERATION(MaskContentUnits, maskContentUnits, SVGUnit
Types::SVGUnitType) | 57 DECLARE_ANIMATED_ENUMERATION(MaskContentUnits, maskContentUnits, SVGUnit
Types::SVGUnitType) |
57 DECLARE_ANIMATED_LENGTH(X, x) | 58 DECLARE_ANIMATED_LENGTH(X, x) |
58 DECLARE_ANIMATED_LENGTH(Y, y) | 59 DECLARE_ANIMATED_LENGTH(Y, y) |
59 DECLARE_ANIMATED_LENGTH(Width, width) | 60 DECLARE_ANIMATED_LENGTH(Width, width) |
60 DECLARE_ANIMATED_LENGTH(Height, height) | 61 DECLARE_ANIMATED_LENGTH(Height, height) |
61 DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesReq
uired) | 62 DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesReq
uired) |
62 END_DECLARE_ANIMATED_PROPERTIES | 63 END_DECLARE_ANIMATED_PROPERTIES |
63 | 64 |
64 // SVGTests | 65 // SVGTests |
65 virtual void synchronizeRequiredFeatures() { SVGTests::synchronizeRequiredFe
atures(this); } | 66 virtual void synchronizeRequiredFeatures() { SVGTests::synchronizeRequiredFe
atures(this); } |
66 virtual void synchronizeRequiredExtensions() { SVGTests::synchronizeRequired
Extensions(this); } | 67 virtual void synchronizeRequiredExtensions() { SVGTests::synchronizeRequired
Extensions(this); } |
67 virtual void synchronizeSystemLanguage() { SVGTests::synchronizeSystemLangua
ge(this); } | 68 virtual void synchronizeSystemLanguage() { SVGTests::synchronizeSystemLangua
ge(this); } |
68 }; | 69 }; |
69 | 70 |
70 } | 71 } |
71 | 72 |
72 #endif | 73 #endif |
OLD | NEW |