Home | History | Annotate | Download | only in svg
      1 /*
      2     Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann (at) kde.org>
      3                   2004, 2005, 2006, 2008 Rob Buis <buis (at) kde.org>
      4 
      5     This library is free software; you can redistribute it and/or
      6     modify it under the terms of the GNU Library General Public
      7     License as published by the Free Software Foundation; either
      8     version 2 of the License, or (at your option) any later version.
      9 
     10     This library is distributed in the hope that it will be useful,
     11     but WITHOUT ANY WARRANTY; without even the implied warranty of
     12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     13     Library General Public License for more details.
     14 
     15     You should have received a copy of the GNU Library General Public License
     16     along with this library; see the file COPYING.LIB.  If not, write to
     17     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
     18     Boston, MA 02110-1301, USA.
     19 */
     20 
     21 #ifndef SVGTextPositioningElement_h
     22 #define SVGTextPositioningElement_h
     23 
     24 #if ENABLE(SVG)
     25 #include "SVGTextContentElement.h"
     26 #include "SVGLengthList.h"
     27 #include "SVGNumberList.h"
     28 
     29 namespace WebCore {
     30 
     31     class SVGTextPositioningElement : public SVGTextContentElement {
     32     public:
     33         SVGTextPositioningElement(const QualifiedName&, Document*);
     34         virtual ~SVGTextPositioningElement();
     35 
     36         virtual void parseMappedAttribute(MappedAttribute*);
     37         virtual void svgAttributeChanged(const QualifiedName&);
     38         virtual void synchronizeProperty(const QualifiedName&);
     39 
     40         bool isKnownAttribute(const QualifiedName&);
     41 
     42     private:
     43         DECLARE_ANIMATED_PROPERTY(SVGTextPositioningElement, SVGNames::xAttr, SVGLengthList*, X, x)
     44         DECLARE_ANIMATED_PROPERTY(SVGTextPositioningElement, SVGNames::yAttr, SVGLengthList*, Y, y)
     45         DECLARE_ANIMATED_PROPERTY(SVGTextPositioningElement, SVGNames::dxAttr, SVGLengthList*, Dx, dx)
     46         DECLARE_ANIMATED_PROPERTY(SVGTextPositioningElement, SVGNames::dyAttr, SVGLengthList*, Dy, dy)
     47         DECLARE_ANIMATED_PROPERTY(SVGTextPositioningElement, SVGNames::rotateAttr, SVGNumberList*, Rotate, rotate)
     48     };
     49 
     50 } // namespace WebCore
     51 
     52 #endif // ENABLE(SVG)
     53 #endif
     54