summaryrefslogtreecommitdiffstats
path: root/WebCore/svg/SVGStyledElement.h
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/svg/SVGStyledElement.h')
-rw-r--r--WebCore/svg/SVGStyledElement.h30
1 files changed, 16 insertions, 14 deletions
diff --git a/WebCore/svg/SVGStyledElement.h b/WebCore/svg/SVGStyledElement.h
index 8431458..3482a4f 100644
--- a/WebCore/svg/SVGStyledElement.h
+++ b/WebCore/svg/SVGStyledElement.h
@@ -35,21 +35,29 @@ namespace WebCore {
class SVGStyledElement : public SVGElement,
public SVGStylable {
public:
- SVGStyledElement(const QualifiedName&, Document*);
- virtual ~SVGStyledElement();
-
virtual String title() const;
bool hasRelativeLengths() const { return !m_elementsWithRelativeLengths.isEmpty(); }
- virtual bool isStyled() const { return true; }
virtual bool supportsMarkers() const { return false; }
virtual PassRefPtr<CSSValue> getPresentationAttribute(const String& name);
- virtual CSSStyleDeclaration* style() { return StyledElement::style(); }
bool isKnownAttribute(const QualifiedName&);
+ // Centralized place to force a manual style resolution. Hacky but needed for now.
+ PassRefPtr<RenderStyle> resolveStyle(RenderStyle* parentStyle);
+
+ bool instanceUpdatesBlocked() const;
+ void setInstanceUpdatesBlocked(bool);
+
+ virtual AffineTransform localCoordinateSpaceTransform(SVGLocatable::CTMScope) const;
+
+ virtual CSSStyleDeclaration* style() { return StyledElement::style(); }
+
+ protected:
+ SVGStyledElement(const QualifiedName&, Document*);
+
virtual bool rendererIsNeeded(RenderStyle*);
virtual bool mapToEntry(const QualifiedName&, MappedAttributeEntry&) const;
@@ -62,15 +70,6 @@ namespace WebCore {
virtual void removedFromDocument();
virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0);
- // Centralized place to force a manual style resolution. Hacky but needed for now.
- PassRefPtr<RenderStyle> resolveStyle(RenderStyle* parentStyle);
-
- bool instanceUpdatesBlocked() const;
- void setInstanceUpdatesBlocked(bool);
-
- virtual AffineTransform localCoordinateSpaceTransform(SVGLocatable::CTMScope) const;
-
- protected:
static int cssPropertyIdForSVGAttributeName(const QualifiedName&);
void updateRelativeLengthsInformation() { updateRelativeLengthsInformation(selfHasRelativeLengths(), this); }
void updateRelativeLengthsInformation(bool hasRelativeLengths, SVGStyledElement*);
@@ -78,7 +77,10 @@ namespace WebCore {
virtual bool selfHasRelativeLengths() const { return false; }
private:
+ virtual bool isStyled() const { return true; }
+
HashSet<SVGStyledElement*> m_elementsWithRelativeLengths;
+
DECLARE_ANIMATED_PROPERTY(SVGStyledElement, HTMLNames::classAttr, String, ClassName, className)
};