diff options
author | fmalita <fmalita@chromium.org> | 2016-09-12 17:06:47 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-09-12 17:06:47 -0700 |
commit | 28d5b72d86fdfae20dc47ba548748f119c7273e3 (patch) | |
tree | 579d10ae07a10a882ca68d00c2da6fa407c0c658 /experimental/svg/model/SkSVGRenderContext.h | |
parent | 8c24f4fae3389b9937eb73128e76226cffebdd72 (diff) |
[SVGDom] Initial linear gradient support
Kind of a big change, to connect several new bits into something useful:
* ID tracking & lookup
* new asPaint() node virtual to support shader (and in the future filter) based paint servers
* <defs>, <linearGradient> and <stop> element support
* 'href', 'offset', 'stop-color', 'stop-opacity' attribute support
* IRI/FuncIRI and rgb(...) parsing
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2327233003
Review-Url: https://codereview.chromium.org/2327233003
Diffstat (limited to 'experimental/svg/model/SkSVGRenderContext.h')
-rw-r--r-- | experimental/svg/model/SkSVGRenderContext.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/experimental/svg/model/SkSVGRenderContext.h b/experimental/svg/model/SkSVGRenderContext.h index 61f8746376..68209a73cc 100644 --- a/experimental/svg/model/SkSVGRenderContext.h +++ b/experimental/svg/model/SkSVGRenderContext.h @@ -12,6 +12,7 @@ #include "SkRect.h" #include "SkSize.h" #include "SkSVGAttribute.h" +#include "SkSVGIDMapper.h" #include "SkTLazy.h" #include "SkTypes.h" @@ -56,7 +57,8 @@ struct SkSVGPresentationContext { class SkSVGRenderContext { public: - SkSVGRenderContext(SkCanvas*, const SkSVGLengthContext&, const SkSVGPresentationContext&); + SkSVGRenderContext(SkCanvas*, const SkSVGIDMapper&, const SkSVGLengthContext&, + const SkSVGPresentationContext&); SkSVGRenderContext(const SkSVGRenderContext&); ~SkSVGRenderContext(); @@ -67,6 +69,8 @@ public: void applyPresentationAttributes(const SkSVGPresentationAttributes&); + const SkSVGNode* findNodeById(const SkString&) const; + const SkPaint* fillPaint() const; const SkPaint* strokePaint() const; @@ -76,6 +80,7 @@ private: void* operator new(size_t, void*) = delete; SkSVGRenderContext& operator=(const SkSVGRenderContext&) = delete; + const SkSVGIDMapper& fIDMapper; SkTCopyOnFirstWrite<SkSVGLengthContext> fLengthContext; SkTCopyOnFirstWrite<SkSVGPresentationContext> fPresentationContext; SkCanvas* fCanvas; |