SVGTextPositioningElement.cpp [plain text]
#include "config.h"
#if SVG_SUPPORT
#include "Attr.h"
#include "SVGNames.h"
#include "SVGHelper.h"
#include "SVGTextPositioningElement.h"
#include "SVGAnimatedLengthList.h"
#include "SVGAnimatedNumberList.h"
using namespace WebCore;
SVGTextPositioningElement::SVGTextPositioningElement(const QualifiedName& tagName, Document *doc)
: SVGTextContentElement(tagName, doc)
{
}
SVGTextPositioningElement::~SVGTextPositioningElement()
{
}
SVGAnimatedLengthList *SVGTextPositioningElement::x() const
{
return lazy_create<SVGAnimatedLengthList>(m_x, this);
}
SVGAnimatedLengthList *SVGTextPositioningElement::y() const
{
return lazy_create<SVGAnimatedLengthList>(m_y, this);
}
SVGAnimatedLengthList *SVGTextPositioningElement::dx() const
{
return lazy_create<SVGAnimatedLengthList>(m_dx, this);
}
SVGAnimatedLengthList *SVGTextPositioningElement::dy() const
{
return lazy_create<SVGAnimatedLengthList>(m_dy, this);
}
SVGAnimatedNumberList *SVGTextPositioningElement::rotate() const
{
return lazy_create<SVGAnimatedNumberList>(m_rotate, this);
}
void SVGTextPositioningElement::parseMappedAttribute(MappedAttribute *attr)
{
const String& value = attr->value();
if (attr->name() == SVGNames::xAttr)
x()->baseVal()->parse(value.deprecatedString(), this, LM_WIDTH);
else if (attr->name() == SVGNames::yAttr)
y()->baseVal()->parse(value.deprecatedString(), this, LM_HEIGHT);
else if (attr->name() == SVGNames::dxAttr)
dx()->baseVal()->parse(value.deprecatedString(), this, LM_WIDTH);
else if (attr->name() == SVGNames::dyAttr)
dy()->baseVal()->parse(value.deprecatedString(), this, LM_HEIGHT);
else if (attr->name() == SVGNames::rotateAttr)
rotate()->baseVal()->parse(value.deprecatedString(), this);
else
SVGTextContentElement::parseMappedAttribute(attr);
}
#endif // SVG_SUPPORT