KHTML
SVGAltGlyphElement.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 #include "config.h"
00023 #include "wtf/Platform.h"
00024
00025 #if ENABLE(SVG_FONTS)
00026 #include "SVGAltGlyphElement.h"
00027
00028 #include "ExceptionCode.h"
00029 #include "RenderInline.h"
00030 #include "RenderSVGTSpan.h"
00031 #include "SVGGlyphElement.h"
00032 #include "SVGNames.h"
00033 #include "XLinkNames.h"
00034
00035 namespace WebCore {
00036
00037 SVGAltGlyphElement::SVGAltGlyphElement(const QualifiedName& tagName, Document* doc)
00038 : SVGTextPositioningElement(tagName, doc)
00039 {
00040 }
00041
00042 SVGAltGlyphElement::~SVGAltGlyphElement()
00043 {
00044 }
00045
00046 void SVGAltGlyphElement::setGlyphRef(const AtomicString& type, ExceptionCode& ec)
00047 {
00048
00049 }
00050
00051 const AtomicString& SVGAltGlyphElement::glyphRef() const
00052 {
00053 return getAttribute(SVGNames::glyphRefAttr);
00054 }
00055
00056 void SVGAltGlyphElement::setFormat(const AtomicString& type, ExceptionCode& ec)
00057 {
00058
00059 }
00060
00061 const AtomicString& SVGAltGlyphElement::format() const
00062 {
00063 return getAttribute(SVGNames::formatAttr);
00064 }
00065
00066 bool SVGAltGlyphElement::childShouldCreateRenderer(Node* child) const
00067 {
00068 if (child->isTextNode())
00069 return true;
00070 return false;
00071 }
00072
00073 RenderObject* SVGAltGlyphElement::createRenderer(RenderArena* arena, RenderStyle*)
00074 {
00075 return new (arena) RenderSVGTSpan(this);
00076 }
00077
00078 SVGGlyphElement* SVGAltGlyphElement::glyphElement() const
00079 {
00080 Element* elt = document()->getElementById(getTarget(getAttribute(XLinkNames::hrefAttr)));
00081 if (!elt || !elt->hasTagName(SVGNames::glyphTag))
00082 return 0;
00083 return static_cast<SVGGlyphElement*>(elt);
00084 }
00085
00086 }
00087
00088 #endif // ENABLE(SVG)
00089
00090