KHTML
SVGClipPathElement.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 SVGClipPathElement_h
00024 #define SVGClipPathElement_h
00025
00026 #if ENABLE(SVG)
00027 #include "SVGResourceClipper.h"
00028 #include "SVGExternalResourcesRequired.h"
00029 #include "SVGLangSpace.h"
00030 #include "SVGStyledTransformableElement.h"
00031 #include "SVGTests.h"
00032
00033 namespace WebCore {
00034
00035 class SVGClipPathElement : public SVGStyledTransformableElement,
00036 public SVGTests,
00037 public SVGLangSpace,
00038 public SVGExternalResourcesRequired
00039 {
00040 public:
00041 SVGClipPathElement(const QualifiedName&, Document*);
00042 virtual ~SVGClipPathElement();
00043
00044 virtual bool isValid() const { return SVGTests::isValid(); }
00045 virtual bool rendererIsNeeded(RenderStyle*) { return false; }
00046
00047 virtual void parseMappedAttribute(MappedAttribute*);
00048 virtual void svgAttributeChanged(const QualifiedName&);
00049 virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0);
00050
00051 virtual SVGResource* canvasResource();
00052
00053
00054 virtual quint32 id() const { return SVGNames::clipPathTag.id(); }
00055 virtual DOMString tagName() const { return SVGNames::clipPathTag.tagName(); }
00056
00057 protected:
00058 virtual const SVGElement* contextElement() const { return this; }
00059
00060 private:
00061 ANIMATED_PROPERTY_FORWARD_DECLARATIONS(SVGExternalResourcesRequired, bool, ExternalResourcesRequired, externalResourcesRequired)
00062
00063 ANIMATED_PROPERTY_DECLARATIONS(SVGClipPathElement, int, int, ClipPathUnits, clipPathUnits)
00064
00065 RefPtr<SVGResourceClipper> m_clipper;
00066 };
00067
00068 }
00069
00070 #endif // ENABLE(SVG)
00071 #endif