aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/effects/SkXfermodeImageFilter.h
diff options
context:
space:
mode:
authorGravatar robertphillips <robertphillips@google.com>2016-04-05 12:48:34 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-04-05 12:48:34 -0700
commit8c0326df5f600da43a054dad3b354221dd6b790f (patch)
tree0d005e6ffab3ae81137bf0ee9c453b8377b886c9 /include/effects/SkXfermodeImageFilter.h
parentd32eac278e94ef92f6edd8c541fb57892b7b62ff (diff)
Update SkXfermodeImageFilter to sk_sp
Diffstat (limited to 'include/effects/SkXfermodeImageFilter.h')
-rw-r--r--include/effects/SkXfermodeImageFilter.h30
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;