KHTML
SVGGElement.cpp
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 #include "config.h"
00024 #include "wtf/Platform.h"
00025
00026 #if ENABLE(SVG)
00027 #include "SVGGElement.h"
00028
00029 #include "RenderSVGTransformableContainer.h"
00030
00031 namespace WebCore {
00032
00033 SVGGElement::SVGGElement(const QualifiedName& tagName, Document* doc)
00034 : SVGStyledTransformableElement(tagName, doc)
00035 , SVGTests()
00036 , SVGLangSpace()
00037 , SVGExternalResourcesRequired()
00038 {
00039 }
00040
00041 SVGGElement::~SVGGElement()
00042 {
00043 }
00044
00045 void SVGGElement::parseMappedAttribute(MappedAttribute* attr)
00046 {
00047 if (SVGTests::parseMappedAttribute(attr))
00048 return;
00049 if (SVGLangSpace::parseMappedAttribute(attr))
00050 return;
00051 if (SVGExternalResourcesRequired::parseMappedAttribute(attr))
00052 return;
00053
00054 SVGStyledTransformableElement::parseMappedAttribute(attr);
00055 }
00056
00057 void SVGGElement::svgAttributeChanged(const QualifiedName& attrName)
00058 {
00059 SVGStyledTransformableElement::svgAttributeChanged(attrName);
00060
00061 if (!renderer())
00062 return;
00063
00064 if (SVGTests::isKnownAttribute(attrName) ||
00065 SVGLangSpace::isKnownAttribute(attrName) ||
00066 SVGExternalResourcesRequired::isKnownAttribute(attrName) ||
00067 SVGStyledTransformableElement::isKnownAttribute(attrName))
00068 renderer()->setNeedsLayout(true);
00069 }
00070
00071 void SVGGElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta)
00072 {
00073 SVGStyledTransformableElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);
00074
00075 if (renderer())
00076 renderer()->setNeedsLayout(true);
00077 }
00078
00079 RenderObject* SVGGElement::createRenderer(RenderArena* arena, RenderStyle*)
00080 {
00081 return new (arena) RenderSVGTransformableContainer(this);
00082 }
00083
00084 }
00085
00086 #endif // ENABLE(SVG)