diff options
author | Mike Reed <reed@google.com> | 2016-10-04 21:35:32 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2016-10-04 21:35:56 +0000 |
commit | 3ed485f4249e17abb4b11f5018d03175fd1afb44 (patch) | |
tree | faf5a74449f02b51592e17641e48e2b9d2caf6f2 /gm/aaxfermodes.cpp | |
parent | 8174ebe30330f857bbf0ba700e1f03b8beb4ee71 (diff) |
Revert[5] "replace SkXfermode obj with SkBlendMode enum in paints"
This reverts commit I0fa5c58af428f3da8565465d1219a34ef8417d9a.
Reason for revert: failing to deserialize some of the 100K
Original change's description:
> Revert[4] "replace SkXfermode obj with SkBlendMode enum in paints"
>
> This reverts commit 2cbcd12281ee807214df094964c584c78932e10b.
>
> BUG=skia:
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2924
>
> Change-Id: I0fa5c58af428f3da8565465d1219a34ef8417d9a
> Reviewed-on: https://skia-review.googlesource.com/2924
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
>
TBR=reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: I1805a57eef5ebcac203da5989c8539345ecf806f
Reviewed-on: https://skia-review.googlesource.com/2962
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'gm/aaxfermodes.cpp')
-rw-r--r-- | gm/aaxfermodes.cpp | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/gm/aaxfermodes.cpp b/gm/aaxfermodes.cpp index 7106ce8174..678a8379e3 100644 --- a/gm/aaxfermodes.cpp +++ b/gm/aaxfermodes.cpp @@ -121,7 +121,7 @@ protected: if (firstMode + m > SkXfermode::kLastMode) { break; } - SkBlendMode mode = static_cast<SkBlendMode>(firstMode + m); + SkXfermode::Mode mode = static_cast<SkXfermode::Mode>(firstMode + m); canvas->save(); if (kShape_Pass == drawingPass) { @@ -144,7 +144,7 @@ protected: 10); } else { SkASSERT(kBackground_Pass == drawingPass); - canvas->drawColor(kBGColor, SkBlendMode::kSrc); + canvas->drawColor(kBGColor, SkXfermode::kSrc_Mode); } canvas->restore(); } else { @@ -190,17 +190,18 @@ protected: canvas->restore(); } - void drawModeName(SkCanvas* canvas, SkBlendMode mode) { - const char* modeName = SkXfermode::ModeName(mode); + void drawModeName(SkCanvas* canvas, SkXfermode::Mode mode) { + const char* modeName = mode <= SkXfermode::kLastMode ? SkXfermode::ModeName(mode) + : "Arithmetic"; fLabelPaint.setTextAlign(SkPaint::kRight_Align); canvas->drawText(modeName, strlen(modeName), kLabelSpacing - kShapeSize / 4, fLabelPaint.getTextSize() / 4, fLabelPaint); } - void setupShapePaint(SkCanvas* canvas, GrColor color, SkBlendMode mode, SkPaint* paint) { + void setupShapePaint(SkCanvas* canvas, GrColor color, SkXfermode::Mode mode, SkPaint* paint) { paint->setColor(color); - if (mode == SkBlendMode::kPlus) { + if (mode == SkXfermode::kPlus_Mode) { // Check for overflow, otherwise we might get confusing AA artifacts. int maxSum = SkTMax(SkTMax(SkColorGetA(kBGColor) + SkColorGetA(color), SkColorGetR(kBGColor) + SkColorGetR(color)), @@ -210,7 +211,7 @@ protected: if (maxSum > 255) { SkPaint dimPaint; dimPaint.setAntiAlias(false); - dimPaint.setBlendMode(SkBlendMode::kDstIn); + dimPaint.setXfermodeMode(SkXfermode::kDstIn_Mode); if (255 != paint->getAlpha()) { // Dim the src and dst colors. dimPaint.setARGB(255 * 255 / maxSum, 0, 0, 0); @@ -226,11 +227,11 @@ protected: } } - void drawShape(SkCanvas* canvas, Shape shape, const SkPaint& paint, SkBlendMode mode) { - SkASSERT(mode <= SkBlendMode::kLastMode); + void drawShape(SkCanvas* canvas, Shape shape, const SkPaint& paint, SkXfermode::Mode mode) { + SkASSERT(mode <= SkXfermode::kLastMode); SkPaint shapePaint(paint); shapePaint.setAntiAlias(kSquare_Shape != shape); - shapePaint.setBlendMode(mode); + shapePaint.setXfermodeMode(mode); switch (shape) { case kSquare_Shape: @@ -248,7 +249,7 @@ protected: case kOval_Shape: canvas->save(); - canvas->rotate(static_cast<SkScalar>((511 * (int)mode + 257) % 360)); + canvas->rotate(static_cast<SkScalar>((511 * mode + 257) % 360)); canvas->drawPath(fOval, shapePaint); canvas->restore(); break; |