From 3ed485f4249e17abb4b11f5018d03175fd1afb44 Mon Sep 17 00:00:00 2001 From: Mike Reed Date: Tue, 4 Oct 2016 21:35:32 +0000 Subject: 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 > Commit-Queue: Mike Reed > 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 Commit-Queue: Mike Reed --- gm/xfermodes.cpp | 73 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 37 insertions(+), 36 deletions(-) (limited to 'gm/xfermodes.cpp') diff --git a/gm/xfermodes.cpp b/gm/xfermodes.cpp index 604a767a4f..8fbbdbec6a 100644 --- a/gm/xfermodes.cpp +++ b/gm/xfermodes.cpp @@ -34,45 +34,45 @@ enum SrcType { }; const struct { - SkBlendMode fMode; - const char* fLabel; - int fSourceTypeMask; // The source types to use this + SkXfermode::Mode fMode; + const char* fLabel; + int fSourceTypeMask; // The source types to use this // mode with. See draw_mode for // an explanation of each type. // PDF has to play some tricks // to support the base modes, // test those more extensively. } gModes[] = { - { SkBlendMode::kClear, "Clear", kAll_SrcType }, - { SkBlendMode::kSrc, "Src", kAll_SrcType }, - { SkBlendMode::kDst, "Dst", kAll_SrcType }, - { SkBlendMode::kSrcOver, "SrcOver", kAll_SrcType }, - { SkBlendMode::kDstOver, "DstOver", kAll_SrcType }, - { SkBlendMode::kSrcIn, "SrcIn", kAll_SrcType }, - { SkBlendMode::kDstIn, "DstIn", kAll_SrcType }, - { SkBlendMode::kSrcOut, "SrcOut", kAll_SrcType }, - { SkBlendMode::kDstOut, "DstOut", kAll_SrcType }, - { SkBlendMode::kSrcATop, "SrcATop", kAll_SrcType }, - { SkBlendMode::kDstATop, "DstATop", kAll_SrcType }, - - { SkBlendMode::kXor, "Xor", kBasic_SrcType }, - { SkBlendMode::kPlus, "Plus", kBasic_SrcType }, - { SkBlendMode::kModulate, "Modulate", kAll_SrcType }, - { SkBlendMode::kScreen, "Screen", kBasic_SrcType }, - { SkBlendMode::kOverlay, "Overlay", kBasic_SrcType }, - { SkBlendMode::kDarken, "Darken", kBasic_SrcType }, - { SkBlendMode::kLighten, "Lighten", kBasic_SrcType }, - { SkBlendMode::kColorDodge, "ColorDodge", kBasic_SrcType }, - { SkBlendMode::kColorBurn, "ColorBurn", kBasic_SrcType }, - { SkBlendMode::kHardLight, "HardLight", kBasic_SrcType }, - { SkBlendMode::kSoftLight, "SoftLight", kBasic_SrcType }, - { SkBlendMode::kDifference, "Difference", kBasic_SrcType }, - { SkBlendMode::kExclusion, "Exclusion", kBasic_SrcType }, - { SkBlendMode::kMultiply, "Multiply", kAll_SrcType }, - { SkBlendMode::kHue, "Hue", kBasic_SrcType }, - { SkBlendMode::kSaturation, "Saturation", kBasic_SrcType }, - { SkBlendMode::kColor, "Color", kBasic_SrcType }, - { SkBlendMode::kLuminosity, "Luminosity", kBasic_SrcType }, + { SkXfermode::kClear_Mode, "Clear", kAll_SrcType }, + { SkXfermode::kSrc_Mode, "Src", kAll_SrcType }, + { SkXfermode::kDst_Mode, "Dst", kAll_SrcType }, + { SkXfermode::kSrcOver_Mode, "SrcOver", kAll_SrcType }, + { SkXfermode::kDstOver_Mode, "DstOver", kAll_SrcType }, + { SkXfermode::kSrcIn_Mode, "SrcIn", kAll_SrcType }, + { SkXfermode::kDstIn_Mode, "DstIn", kAll_SrcType }, + { SkXfermode::kSrcOut_Mode, "SrcOut", kAll_SrcType }, + { SkXfermode::kDstOut_Mode, "DstOut", kAll_SrcType }, + { SkXfermode::kSrcATop_Mode, "SrcATop", kAll_SrcType }, + { SkXfermode::kDstATop_Mode, "DstATop", kAll_SrcType }, + + { SkXfermode::kXor_Mode, "Xor", kBasic_SrcType }, + { SkXfermode::kPlus_Mode, "Plus", kBasic_SrcType }, + { SkXfermode::kModulate_Mode, "Modulate", kAll_SrcType }, + { SkXfermode::kScreen_Mode, "Screen", kBasic_SrcType }, + { SkXfermode::kOverlay_Mode, "Overlay", kBasic_SrcType }, + { SkXfermode::kDarken_Mode, "Darken", kBasic_SrcType }, + { SkXfermode::kLighten_Mode, "Lighten", kBasic_SrcType }, + { SkXfermode::kColorDodge_Mode, "ColorDodge", kBasic_SrcType }, + { SkXfermode::kColorBurn_Mode, "ColorBurn", kBasic_SrcType }, + { SkXfermode::kHardLight_Mode, "HardLight", kBasic_SrcType }, + { SkXfermode::kSoftLight_Mode, "SoftLight", kBasic_SrcType }, + { SkXfermode::kDifference_Mode, "Difference", kBasic_SrcType }, + { SkXfermode::kExclusion_Mode, "Exclusion", kBasic_SrcType }, + { SkXfermode::kMultiply_Mode, "Multiply", kAll_SrcType }, + { SkXfermode::kHue_Mode, "Hue", kBasic_SrcType }, + { SkXfermode::kSaturation_Mode, "Saturation", kBasic_SrcType }, + { SkXfermode::kColor_Mode, "Color", kBasic_SrcType }, + { SkXfermode::kLuminosity_Mode, "Luminosity", kBasic_SrcType }, }; static void make_bitmaps(int w, int h, SkBitmap* src, SkBitmap* dst, @@ -118,14 +118,15 @@ class XfermodesGM : public skiagm::GM { * uses the implied shape of the drawing command and these modes * demonstrate that. */ - void draw_mode(SkCanvas* canvas, SkBlendMode mode, SrcType srcType, SkScalar x, SkScalar y) { + void draw_mode(SkCanvas* canvas, SkXfermode::Mode mode, SrcType srcType, + SkScalar x, SkScalar y) { SkPaint p; SkMatrix m; bool restoreNeeded = false; m.setTranslate(x, y); canvas->drawBitmap(fSrcB, x, y, &p); - p.setBlendMode(mode); + p.setXfermodeMode(mode); switch (srcType) { case kSmallTransparentImage_SrcType: { m.postScale(SK_ScalarHalf, SK_ScalarHalf, x, y); @@ -140,7 +141,7 @@ class XfermodesGM : public skiagm::GM { SkIntToScalar(H)); canvas->saveLayer(&bounds, &p); restoreNeeded = true; - p.setBlendMode(SkBlendMode::kSrcOver); + p.setXfermodeMode(SkXfermode::kSrcOver_Mode); // Fall through. } case kQuarterClear_SrcType: { -- cgit v1.2.3