aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar reed <reed@google.com>2015-10-12 11:10:10 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-10-12 11:10:10 -0700
commitf028003cf4429813ae1ac6624efa51ecbb062ed3 (patch)
treef12b5f37c08589ae00be9a017f0c42f1090999ed
parent063675ba374cb520fe58bbcdaf5afeea0aa0ad60 (diff)
change more effects to only expose factories
BUG=skia: TBR= Review URL: https://codereview.chromium.org/1395403002
-rw-r--r--include/effects/SkColorFilterImageFilter.h14
-rw-r--r--include/effects/SkModeColorFilter.h14
-rw-r--r--src/effects/SkColorFilterImageFilter.cpp4
-rw-r--r--src/effects/SkColorFilters.cpp2
-rw-r--r--tests/ImageFilterTest.cpp7
5 files changed, 21 insertions, 20 deletions
diff --git a/include/effects/SkColorFilterImageFilter.h b/include/effects/SkColorFilterImageFilter.h
index f23f16dfd1..200ec86500 100644
--- a/include/effects/SkColorFilterImageFilter.h
+++ b/include/effects/SkColorFilterImageFilter.h
@@ -14,20 +14,16 @@ class SkColorFilter;
class SK_API SkColorFilterImageFilter : public SkImageFilter {
public:
- static SkColorFilterImageFilter* Create(SkColorFilter* cf,
- SkImageFilter* input = NULL,
- const CropRect* cropRect = NULL);
- virtual ~SkColorFilterImageFilter();
+ static SkImageFilter* Create(SkColorFilter* cf, SkImageFilter* input = NULL,
+ const CropRect* cropRect = NULL);
SK_TO_STRING_OVERRIDE()
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkColorFilterImageFilter)
protected:
void flatten(SkWriteBuffer&) const override;
-
- virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&,
- SkBitmap* result, SkIPoint* loc) const override;
-
+ bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, SkBitmap* result,
+ SkIPoint* loc) const override;
bool onIsColorFilterNode(SkColorFilter**) const override;
bool affectsTransparentBlack() const override;
@@ -35,6 +31,8 @@ private:
SkColorFilterImageFilter(SkColorFilter* cf,
SkImageFilter* input,
const CropRect* cropRect);
+ virtual ~SkColorFilterImageFilter();
+
SkColorFilter* fColorFilter;
typedef SkImageFilter INHERITED;
diff --git a/include/effects/SkModeColorFilter.h b/include/effects/SkModeColorFilter.h
index 0c876aef0b..06eec43572 100644
--- a/include/effects/SkModeColorFilter.h
+++ b/include/effects/SkModeColorFilter.h
@@ -15,11 +15,9 @@
class SkModeColorFilter : public SkColorFilter {
public:
- SkModeColorFilter(SkColor color, SkXfermode::Mode mode) {
- fColor = color;
- fMode = mode;
- this->updateCache();
- };
+ static SkColorFilter* Create(SkColor color, SkXfermode::Mode mode) {
+ return new SkModeColorFilter(color, mode);
+ }
SkColor getColor() const { return fColor; }
SkXfermode::Mode getMode() const { return fMode; }
@@ -44,6 +42,12 @@ public:
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkModeColorFilter)
protected:
+ SkModeColorFilter(SkColor color, SkXfermode::Mode mode) {
+ fColor = color;
+ fMode = mode;
+ this->updateCache();
+ };
+
void flatten(SkWriteBuffer&) const override;
private:
diff --git a/src/effects/SkColorFilterImageFilter.cpp b/src/effects/SkColorFilterImageFilter.cpp
index e5f64ce2f9..46bad10ce3 100644
--- a/src/effects/SkColorFilterImageFilter.cpp
+++ b/src/effects/SkColorFilterImageFilter.cpp
@@ -15,8 +15,8 @@
#include "SkTableColorFilter.h"
#include "SkWriteBuffer.h"
-SkColorFilterImageFilter* SkColorFilterImageFilter::Create(SkColorFilter* cf,
- SkImageFilter* input, const CropRect* cropRect) {
+SkImageFilter* SkColorFilterImageFilter::Create(SkColorFilter* cf, SkImageFilter* input,
+ const CropRect* cropRect) {
if (nullptr == cf) {
return nullptr;
}
diff --git a/src/effects/SkColorFilters.cpp b/src/effects/SkColorFilters.cpp
index 1e34b1e5c3..4515c0d3fe 100644
--- a/src/effects/SkColorFilters.cpp
+++ b/src/effects/SkColorFilters.cpp
@@ -166,7 +166,7 @@ SkColorFilter* SkColorFilter::CreateModeFilter(SkColor color, SkXfermode::Mode m
case SkXfermode::kSrcOver_Mode:
return new SrcOver_SkModeColorFilter(color);
default:
- return new SkModeColorFilter(color, mode);
+ return SkModeColorFilter::Create(color, mode);
}
}
diff --git a/tests/ImageFilterTest.cpp b/tests/ImageFilterTest.cpp
index f83d315c4d..6b9064e3b4 100644
--- a/tests/ImageFilterTest.cpp
+++ b/tests/ImageFilterTest.cpp
@@ -904,7 +904,7 @@ DEF_TEST(ImageFilterEmptySaveLayer, reporter) {
SkAutoTUnref<SkColorFilter> green(
SkColorFilter::CreateModeFilter(SK_ColorGREEN, SkXfermode::kSrc_Mode));
- SkAutoTUnref<SkColorFilterImageFilter> imageFilter(
+ SkAutoTUnref<SkImageFilter> imageFilter(
SkColorFilterImageFilter::Create(green.get()));
SkPaint imageFilterPaint;
imageFilterPaint.setImageFilter(imageFilter.get());
@@ -1027,10 +1027,9 @@ static void test_xfermode_cropped_input(SkCanvas* canvas, skiatest::Reporter* re
SkAutoTUnref<SkColorFilter> green(
SkColorFilter::CreateModeFilter(SK_ColorGREEN, SkXfermode::kSrcIn_Mode));
- SkAutoTUnref<SkColorFilterImageFilter> greenFilter(
- SkColorFilterImageFilter::Create(green.get()));
+ SkAutoTUnref<SkImageFilter> greenFilter(SkColorFilterImageFilter::Create(green.get()));
SkImageFilter::CropRect cropRect(SkRect::MakeEmpty());
- SkAutoTUnref<SkColorFilterImageFilter> croppedOut(
+ SkAutoTUnref<SkImageFilter> croppedOut(
SkColorFilterImageFilter::Create(green.get(), nullptr, &cropRect));
// Check that an xfermode image filter whose input has been cropped out still draws the other