| Index: experimental/svg/model/SkSVGAttribute.h
|
| diff --git a/experimental/svg/model/SkSVGAttribute.h b/experimental/svg/model/SkSVGAttribute.h
|
| index 1d7c96eb22fc54b1f881c6168734ca58e50856d6..4ac595d526b5a0cf431818ced0845a815840e874 100644
|
| --- a/experimental/svg/model/SkSVGAttribute.h
|
| +++ b/experimental/svg/model/SkSVGAttribute.h
|
| @@ -16,10 +16,15 @@ class SkSVGRenderContext;
|
| enum class SkSVGAttribute {
|
| kD,
|
| kFill,
|
| + kFillOpacity,
|
| kHeight,
|
| kRx,
|
| kRy,
|
| kStroke,
|
| + kStrokeOpacity,
|
| + kStrokeLineCap,
|
| + kStrokeLineJoin,
|
| + kStrokeWidth,
|
| kTransform,
|
| kViewBox,
|
| kWidth,
|
| @@ -29,22 +34,19 @@ enum class SkSVGAttribute {
|
| kUnknown,
|
| };
|
|
|
| -class SkSVGPresentationAttributes {
|
| -public:
|
| - SkSVGPresentationAttributes();
|
| +struct SkSVGPresentationAttributes {
|
| + static SkSVGPresentationAttributes MakeInitial();
|
|
|
| - void setFill(const SkSVGColorType&);
|
| - void setStroke(const SkSVGColorType&);
|
| + // TODO: SkTLazy adds an extra ptr per attribute; refactor to reduce overhead.
|
|
|
| - void applyTo(SkSVGRenderContext*) const;
|
| + SkTLazy<SkSVGPaint> fFill;
|
| + SkTLazy<SkSVGNumberType> fFillOpacity;
|
|
|
| -private:
|
| - // Color only for now.
|
| - SkSVGColorType fFill;
|
| - SkSVGColorType fStroke;
|
| -
|
| - unsigned fFillIsSet : 1;
|
| - unsigned fStrokeIsSet : 1;
|
| + SkTLazy<SkSVGPaint> fStroke;
|
| + SkTLazy<SkSVGLineCap> fStrokeLineCap;
|
| + SkTLazy<SkSVGLineJoin> fStrokeLineJoin;
|
| + SkTLazy<SkSVGNumberType> fStrokeOpacity;
|
| + SkTLazy<SkSVGLength> fStrokeWidth;
|
| };
|
|
|
| #endif // SkSVGAttribute_DEFINED
|
|
|