diff options
Diffstat (limited to 'experimental/svg/model/SkSVGAttributeParser.h')
-rw-r--r-- | experimental/svg/model/SkSVGAttributeParser.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/experimental/svg/model/SkSVGAttributeParser.h b/experimental/svg/model/SkSVGAttributeParser.h index cd50479fee..c616113d6b 100644 --- a/experimental/svg/model/SkSVGAttributeParser.h +++ b/experimental/svg/model/SkSVGAttributeParser.h @@ -18,6 +18,7 @@ public: bool parseNumber(SkSVGNumberType*); bool parseLength(SkSVGLength*); bool parseViewBox(SkSVGViewBoxType*); + bool parseTransform(SkSVGTransformType*); private: // Stack-only @@ -37,6 +38,19 @@ private: bool parseNamedColorToken(SkColor*); bool parseHexColorToken(SkColor*); + // Transform helpers + bool parseMatrixToken(SkMatrix*); + bool parseTranslateToken(SkMatrix*); + bool parseScaleToken(SkMatrix*); + bool parseRotateToken(SkMatrix*); + bool parseSkewXToken(SkMatrix*); + bool parseSkewYToken(SkMatrix*); + + // Parses a sequence of 'WS* <prefix> WS* (<nested>)', where the nested sequence + // is handled by the passed functor. + template <typename Func, typename T> + bool parseParenthesized(const char* prefix, Func, T* result); + // The current position in the input string. const char* fCurPos; |