KHTML
SVGAnimateTransformElement.h
Go to the documentation of this file.
00001 /* 00002 Copyright (C) 2004, 2005 Nikolas Zimmermann <wildfox@kde.org> 00003 2004, 2005, 2006, 2007 Rob Buis <buis@kde.org> 00004 Copyright (C) 2007 Eric Seidel <eric@webkit.org> 00005 Copyright (C) 2008 Apple Inc. All Rights Reserved. 00006 00007 This file is part of the KDE project 00008 00009 This library is free software; you can redistribute it and/or 00010 modify it under the terms of the GNU Library General Public 00011 License as published by the Free Software Foundation; either 00012 version 2 of the License, or (at your option) any later version. 00013 00014 This library is distributed in the hope that it will be useful, 00015 but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00017 Library General Public License for more details. 00018 00019 You should have received a copy of the GNU Library General Public License 00020 along with this library; see the file COPYING.LIB. If not, write to 00021 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00022 Boston, MA 02110-1301, USA. 00023 */ 00024 00025 #ifndef SVGAnimateTransformElement_h 00026 #define SVGAnimateTransformElement_h 00027 #if ENABLE(SVG) && ENABLE(SVG_ANIMATION) 00028 00029 #include "SVGAnimationElement.h" 00030 #include "SVGTransform.h" 00031 #include "SVGTransformDistance.h" 00032 00033 namespace WebCore { 00034 00035 class AffineTransform; 00036 00037 class SVGAnimateTransformElement : public SVGAnimationElement { 00038 public: 00039 SVGAnimateTransformElement(const QualifiedName&, Document*); 00040 virtual ~SVGAnimateTransformElement(); 00041 00042 virtual bool hasValidTarget() const; 00043 00044 virtual void parseMappedAttribute(MappedAttribute*); 00045 00046 protected: 00047 virtual const SVGElement* contextElement() const { return this; } 00048 00049 private: 00050 virtual void resetToBaseValue(const String&); 00051 virtual bool calculateFromAndToValues(const String& fromString, const String& toString); 00052 virtual bool calculateFromAndByValues(const String& fromString, const String& byString); 00053 virtual void calculateAnimatedValue(float percentage, unsigned repeat, SVGSMILElement* resultElement); 00054 virtual void applyResultsToTarget(); 00055 virtual float calculateDistance(const String& fromString, const String& toString); 00056 00057 SVGTransform parseTransformValue(const String&) const; 00058 00059 SVGTransform::SVGTransformType m_type; 00060 00061 unsigned m_baseIndexInTransformList; 00062 00063 SVGTransform m_toTransform; 00064 SVGTransform m_fromTransform; 00065 }; 00066 00067 } // namespace WebCore 00068 00069 #endif // ENABLE(SVG) 00070 #endif // SVGAnimateTransformElement_h 00071 00072 // vim:ts=4:noet
KDE 4.6 API Reference