summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/rendering/svg/SVGTextLayoutAttributes.h
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-06-02 12:07:03 +0100
committerBen Murdoch <benm@google.com>2011-06-10 10:47:21 +0100
commit2daae5fd11344eaa88a0d92b0f6d65f8d2255c00 (patch)
treee4964fbd1cb70599f7718ff03e50ea1dab33890b /Source/WebCore/rendering/svg/SVGTextLayoutAttributes.h
parent87bdf0060a247bfbe668342b87e0874182e0ffa9 (diff)
downloadexternal_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.zip
external_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.tar.gz
external_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.tar.bz2
Merge WebKit at r84325: Initial merge by git.
Change-Id: Ic1a909300ecc0a13ddc6b4e784371d2ac6e3d59b
Diffstat (limited to 'Source/WebCore/rendering/svg/SVGTextLayoutAttributes.h')
-rw-r--r--Source/WebCore/rendering/svg/SVGTextLayoutAttributes.h41
1 files changed, 26 insertions, 15 deletions
diff --git a/Source/WebCore/rendering/svg/SVGTextLayoutAttributes.h b/Source/WebCore/rendering/svg/SVGTextLayoutAttributes.h
index fc6bd10..8b45d3d 100644
--- a/Source/WebCore/rendering/svg/SVGTextLayoutAttributes.h
+++ b/Source/WebCore/rendering/svg/SVGTextLayoutAttributes.h
@@ -31,6 +31,18 @@ class RenderSVGInlineText;
class SVGTextLayoutAttributes {
public:
+ struct PositioningLists {
+ void fillWithEmptyValues(unsigned length);
+ void appendEmptyValues();
+ void appendValuesFromPosition(const PositioningLists&, unsigned position);
+
+ Vector<float> xValues;
+ Vector<float> yValues;
+ Vector<float> dxValues;
+ Vector<float> dyValues;
+ Vector<float> rotateValues;
+ };
+
SVGTextLayoutAttributes(RenderSVGInlineText* context = 0);
void reserveCapacity(unsigned length);
@@ -40,31 +52,30 @@ public:
RenderSVGInlineText* context() const { return m_context; }
- Vector<float>& xValues() { return m_xValues; }
- const Vector<float>& xValues() const { return m_xValues; }
+ PositioningLists& positioningLists() { return m_positioningLists; }
+ const PositioningLists& positioningLists() const { return m_positioningLists; }
+
+ Vector<float>& xValues() { return m_positioningLists.xValues; }
+ const Vector<float>& xValues() const { return m_positioningLists.xValues; }
- Vector<float>& yValues() { return m_yValues; }
- const Vector<float>& yValues() const { return m_yValues; }
+ Vector<float>& yValues() { return m_positioningLists.yValues; }
+ const Vector<float>& yValues() const { return m_positioningLists.yValues; }
- Vector<float>& dxValues() { return m_dxValues; }
- const Vector<float>& dxValues() const { return m_dxValues; }
+ Vector<float>& dxValues() { return m_positioningLists.dxValues; }
+ const Vector<float>& dxValues() const { return m_positioningLists.dxValues; }
- Vector<float>& dyValues() { return m_dyValues; }
- const Vector<float>& dyValues() const { return m_dyValues; }
+ Vector<float>& dyValues() { return m_positioningLists.dyValues; }
+ const Vector<float>& dyValues() const { return m_positioningLists.dyValues; }
- Vector<float>& rotateValues() { return m_rotateValues; }
- const Vector<float>& rotateValues() const { return m_rotateValues; }
+ Vector<float>& rotateValues() { return m_positioningLists.rotateValues; }
+ const Vector<float>& rotateValues() const { return m_positioningLists.rotateValues; }
Vector<SVGTextMetrics>& textMetricsValues() { return m_textMetricsValues; }
const Vector<SVGTextMetrics>& textMetricsValues() const { return m_textMetricsValues; }
private:
RenderSVGInlineText* m_context;
- Vector<float> m_xValues;
- Vector<float> m_yValues;
- Vector<float> m_dxValues;
- Vector<float> m_dyValues;
- Vector<float> m_rotateValues;
+ PositioningLists m_positioningLists;
Vector<SVGTextMetrics> m_textMetricsValues;
};