KHTML
SVGLineElement.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef SVGLineElement_h
00024 #define SVGLineElement_h
00025
00026 #if ENABLE(SVG)
00027 #include "SVGExternalResourcesRequired.h"
00028 #include "SVGLangSpace.h"
00029 #include "SVGStyledTransformableElement.h"
00030 #include "SVGTests.h"
00031
00032 namespace WebCore {
00033
00034 class SVGLength;
00035
00036 class SVGLineElement : public SVGStyledTransformableElement,
00037 public SVGTests,
00038 public SVGLangSpace,
00039 public SVGExternalResourcesRequired {
00040 public:
00041 SVGLineElement(const QualifiedName&, Document*);
00042 virtual ~SVGLineElement();
00043
00044 virtual bool isValid() const { return SVGTests::isValid(); }
00045
00046 virtual void parseMappedAttribute(MappedAttribute*);
00047 virtual void svgAttributeChanged(const QualifiedName&);
00048
00049 virtual Path toPathData() const;
00050
00051 virtual bool supportsMarkers() const { return true; }
00052
00053
00054 virtual quint32 id() const { return SVGNames::lineTag.id(); }
00055 protected:
00056 virtual const SVGElement* contextElement() const { return this; }
00057 virtual bool hasRelativeValues() const;
00058
00059 private:
00060 ANIMATED_PROPERTY_FORWARD_DECLARATIONS(SVGExternalResourcesRequired, bool, ExternalResourcesRequired, externalResourcesRequired)
00061
00062 ANIMATED_PROPERTY_DECLARATIONS(SVGLineElement, SVGLength, SVGLength, X1, x1)
00063 ANIMATED_PROPERTY_DECLARATIONS(SVGLineElement, SVGLength, SVGLength, Y1, y1)
00064 ANIMATED_PROPERTY_DECLARATIONS(SVGLineElement, SVGLength, SVGLength, X2, x2)
00065 ANIMATED_PROPERTY_DECLARATIONS(SVGLineElement, SVGLength, SVGLength, Y2, y2)
00066 };
00067
00068 }
00069
00070 #endif // ENABLE(SVG)
00071 #endif