diff options
author | robertphillips <robertphillips@google.com> | 2016-04-05 12:48:34 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-04-05 12:48:34 -0700 |
commit | 8c0326df5f600da43a054dad3b354221dd6b790f (patch) | |
tree | 0d005e6ffab3ae81137bf0ee9c453b8377b886c9 /include | |
parent | d32eac278e94ef92f6edd8c541fb57892b7b62ff (diff) |
Update SkXfermodeImageFilter to sk_sp
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852123002
Committed: https://skia.googlesource.com/skia/+/3bc969264d4720d67f0b137552b3777a03b431a8
Review URL: https://codereview.chromium.org/1852123002
Diffstat (limited to 'include')
-rw-r--r-- | include/effects/SkXfermodeImageFilter.h | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/include/effects/SkXfermodeImageFilter.h b/include/effects/SkXfermodeImageFilter.h index f1e5d71070..634422747a 100644 --- a/include/effects/SkXfermodeImageFilter.h +++ b/include/effects/SkXfermodeImageFilter.h @@ -21,19 +21,35 @@ class SK_API SkXfermodeImageFilter : public SkImageFilter { */ public: - static sk_sp<SkImageFilter> Make(sk_sp<SkXfermode> mode, SkImageFilter* background, - SkImageFilter* foreground, const CropRect* cropRect); - static sk_sp<SkImageFilter> Make(sk_sp<SkXfermode> mode, SkImageFilter* background) { - return Make(std::move(mode), background, nullptr, nullptr); + static sk_sp<SkImageFilter> Make(sk_sp<SkXfermode> mode, sk_sp<SkImageFilter> background, + sk_sp<SkImageFilter> foreground, const CropRect* cropRect); + static sk_sp<SkImageFilter> Make(sk_sp<SkXfermode> mode, sk_sp<SkImageFilter> background) { + return Make(std::move(mode), std::move(background), nullptr, nullptr); } + #ifdef SK_SUPPORT_LEGACY_XFERMODE_PTR static SkImageFilter* Create(SkXfermode* mode, SkImageFilter* background, SkImageFilter* foreground = NULL, const CropRect* cropRect = NULL) { - return Make(sk_ref_sp(mode), background, foreground, cropRect).release(); + return Make(sk_ref_sp(mode), + sk_ref_sp(background), + sk_ref_sp(foreground), + cropRect).release(); } #endif - +#ifdef SK_SUPPORT_LEGACY_IMAGEFILTER_PTR + static sk_sp<SkImageFilter> Make(sk_sp<SkXfermode> mode, SkImageFilter* background, + SkImageFilter* foreground, const CropRect* cropRect) { + return Make(std::move(mode), + sk_ref_sp(background), + sk_ref_sp(foreground), + cropRect); + } + static sk_sp<SkImageFilter> Make(sk_sp<SkXfermode> mode, SkImageFilter* background) { + return Make(std::move(mode), sk_ref_sp(background)); + } +#endif + SK_TO_STRING_OVERRIDE() SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkXfermodeImageFilter) @@ -49,7 +65,7 @@ public: #endif protected: - SkXfermodeImageFilter(sk_sp<SkXfermode> mode, SkImageFilter* inputs[2], + SkXfermodeImageFilter(sk_sp<SkXfermode> mode, sk_sp<SkImageFilter> inputs[2], const CropRect* cropRect); void flatten(SkWriteBuffer&) const override; |