OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@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 |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
105 TEXTPATH_METHODTYPE_ALIGN = SVGTextPathMethodAlign, | 105 TEXTPATH_METHODTYPE_ALIGN = SVGTextPathMethodAlign, |
106 TEXTPATH_METHODTYPE_STRETCH = SVGTextPathMethodStretch, | 106 TEXTPATH_METHODTYPE_STRETCH = SVGTextPathMethodStretch, |
107 TEXTPATH_SPACINGTYPE_UNKNOWN = SVGTextPathSpacingUnknown, | 107 TEXTPATH_SPACINGTYPE_UNKNOWN = SVGTextPathSpacingUnknown, |
108 TEXTPATH_SPACINGTYPE_AUTO = SVGTextPathSpacingAuto, | 108 TEXTPATH_SPACINGTYPE_AUTO = SVGTextPathSpacingAuto, |
109 TEXTPATH_SPACINGTYPE_EXACT = SVGTextPathSpacingExact | 109 TEXTPATH_SPACINGTYPE_EXACT = SVGTextPathSpacingExact |
110 }; | 110 }; |
111 | 111 |
112 static PassRefPtr<SVGTextPathElement> create(Document&); | 112 static PassRefPtr<SVGTextPathElement> create(Document&); |
113 | 113 |
114 SVGAnimatedLength* startOffset() const { return m_startOffset.get(); } | 114 SVGAnimatedLength* startOffset() const { return m_startOffset.get(); } |
115 SVGAnimatedString* href() { return m_href.get(); } | |
116 | 115 |
117 private: | 116 private: |
118 explicit SVGTextPathElement(Document&); | 117 explicit SVGTextPathElement(Document&); |
119 | 118 |
120 virtual ~SVGTextPathElement(); | 119 virtual ~SVGTextPathElement(); |
121 | 120 |
122 void clearResourceReferences(); | 121 void clearResourceReferences(); |
123 | 122 |
124 virtual void buildPendingResource() OVERRIDE; | 123 virtual void buildPendingResource() OVERRIDE; |
125 virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE; | 124 virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE; |
126 virtual void removedFrom(ContainerNode*) OVERRIDE; | 125 virtual void removedFrom(ContainerNode*) OVERRIDE; |
127 | 126 |
128 bool isSupportedAttribute(const QualifiedName&); | 127 bool isSupportedAttribute(const QualifiedName&); |
129 virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERR
IDE; | 128 virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERR
IDE; |
130 virtual void svgAttributeChanged(const QualifiedName&) OVERRIDE; | 129 virtual void svgAttributeChanged(const QualifiedName&) OVERRIDE; |
131 | 130 |
132 virtual RenderObject* createRenderer(RenderStyle*) OVERRIDE; | 131 virtual RenderObject* createRenderer(RenderStyle*) OVERRIDE; |
133 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE; | 132 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE; |
134 | 133 |
135 virtual bool selfHasRelativeLengths() const OVERRIDE; | 134 virtual bool selfHasRelativeLengths() const OVERRIDE; |
136 | 135 |
137 RefPtr<SVGAnimatedLength> m_startOffset; | 136 RefPtr<SVGAnimatedLength> m_startOffset; |
138 RefPtr<SVGAnimatedString> m_href; | |
139 BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGTextPathElement) | 137 BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGTextPathElement) |
140 DECLARE_ANIMATED_ENUMERATION(Method, method, SVGTextPathMethodType) | 138 DECLARE_ANIMATED_ENUMERATION(Method, method, SVGTextPathMethodType) |
141 DECLARE_ANIMATED_ENUMERATION(Spacing, spacing, SVGTextPathSpacingType) | 139 DECLARE_ANIMATED_ENUMERATION(Spacing, spacing, SVGTextPathSpacingType) |
142 END_DECLARE_ANIMATED_PROPERTIES | 140 END_DECLARE_ANIMATED_PROPERTIES |
143 }; | 141 }; |
144 | 142 |
145 DEFINE_NODE_TYPE_CASTS(SVGTextPathElement, hasTagName(SVGNames::textPathTag)); | 143 DEFINE_NODE_TYPE_CASTS(SVGTextPathElement, hasTagName(SVGNames::textPathTag)); |
146 | 144 |
147 } // namespace WebCore | 145 } // namespace WebCore |
148 | 146 |
149 #endif | 147 #endif |
OLD | NEW |