OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2015 Google Inc. | 2 * Copyright 2015 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
| 8 #include "SkBlendMode.h" |
8 #include "SkMaskFilter.h" | 9 #include "SkMaskFilter.h" |
9 #include "SkPaint.h" | 10 #include "SkPaint.h" |
10 #include "SkShader.h" | 11 #include "SkShader.h" |
11 | 12 |
12 #include "sk_paint.h" | 13 #include "sk_paint.h" |
13 #include "sk_types_priv.h" | 14 #include "sk_types_priv.h" |
14 | 15 |
15 #define MAKE_FROM_TO_NAME(FROM) g_ ## FROM ## _map | 16 #define MAKE_FROM_TO_NAME(FROM) g_ ## FROM ## _map |
16 | 17 |
17 const struct { | 18 const struct { |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
125 SkPaint::Join skjoin; | 126 SkPaint::Join skjoin; |
126 if (find_sk(cjoin, &skjoin)) { | 127 if (find_sk(cjoin, &skjoin)) { |
127 AsPaint(cpaint)->setStrokeJoin(skjoin); | 128 AsPaint(cpaint)->setStrokeJoin(skjoin); |
128 } else { | 129 } else { |
129 // unknown cjoin | 130 // unknown cjoin |
130 } | 131 } |
131 } | 132 } |
132 | 133 |
133 void sk_paint_set_xfermode_mode(sk_paint_t* paint, sk_xfermode_mode_t mode) { | 134 void sk_paint_set_xfermode_mode(sk_paint_t* paint, sk_xfermode_mode_t mode) { |
134 SkASSERT(paint); | 135 SkASSERT(paint); |
135 SkXfermode::Mode skmode; | 136 SkBlendMode skmode; |
136 switch (mode) { | 137 switch (mode) { |
137 #define MAP(X, Y) case (X): skmode = (Y); break | 138 #define MAP(X, Y) case (X): skmode = (Y); break |
138 MAP( CLEAR_SK_XFERMODE_MODE, SkXfermode::kClear_Mode ); | 139 MAP( CLEAR_SK_XFERMODE_MODE, SkBlendMode::kClear ); |
139 MAP( SRC_SK_XFERMODE_MODE, SkXfermode::kSrc_Mode ); | 140 MAP( SRC_SK_XFERMODE_MODE, SkBlendMode::kSrc ); |
140 MAP( DST_SK_XFERMODE_MODE, SkXfermode::kDst_Mode ); | 141 MAP( DST_SK_XFERMODE_MODE, SkBlendMode::kDst ); |
141 MAP( SRCOVER_SK_XFERMODE_MODE, SkXfermode::kSrcOver_Mode ); | 142 MAP( SRCOVER_SK_XFERMODE_MODE, SkBlendMode::kSrcOver ); |
142 MAP( DSTOVER_SK_XFERMODE_MODE, SkXfermode::kDstOver_Mode ); | 143 MAP( DSTOVER_SK_XFERMODE_MODE, SkBlendMode::kDstOver ); |
143 MAP( SRCIN_SK_XFERMODE_MODE, SkXfermode::kSrcIn_Mode ); | 144 MAP( SRCIN_SK_XFERMODE_MODE, SkBlendMode::kSrcIn ); |
144 MAP( DSTIN_SK_XFERMODE_MODE, SkXfermode::kDstIn_Mode ); | 145 MAP( DSTIN_SK_XFERMODE_MODE, SkBlendMode::kDstIn ); |
145 MAP( SRCOUT_SK_XFERMODE_MODE, SkXfermode::kSrcOut_Mode ); | 146 MAP( SRCOUT_SK_XFERMODE_MODE, SkBlendMode::kSrcOut ); |
146 MAP( DSTOUT_SK_XFERMODE_MODE, SkXfermode::kDstOut_Mode ); | 147 MAP( DSTOUT_SK_XFERMODE_MODE, SkBlendMode::kDstOut ); |
147 MAP( SRCATOP_SK_XFERMODE_MODE, SkXfermode::kSrcATop_Mode ); | 148 MAP( SRCATOP_SK_XFERMODE_MODE, SkBlendMode::kSrcATop ); |
148 MAP( DSTATOP_SK_XFERMODE_MODE, SkXfermode::kDstATop_Mode ); | 149 MAP( DSTATOP_SK_XFERMODE_MODE, SkBlendMode::kDstATop ); |
149 MAP( XOR_SK_XFERMODE_MODE, SkXfermode::kXor_Mode ); | 150 MAP( XOR_SK_XFERMODE_MODE, SkBlendMode::kXor ); |
150 MAP( PLUS_SK_XFERMODE_MODE, SkXfermode::kPlus_Mode ); | 151 MAP( PLUS_SK_XFERMODE_MODE, SkBlendMode::kPlus ); |
151 MAP( MODULATE_SK_XFERMODE_MODE, SkXfermode::kModulate_Mode ); | 152 MAP( MODULATE_SK_XFERMODE_MODE, SkBlendMode::kModulate ); |
152 MAP( SCREEN_SK_XFERMODE_MODE, SkXfermode::kScreen_Mode ); | 153 MAP( SCREEN_SK_XFERMODE_MODE, SkBlendMode::kScreen ); |
153 MAP( OVERLAY_SK_XFERMODE_MODE, SkXfermode::kOverlay_Mode ); | 154 MAP( OVERLAY_SK_XFERMODE_MODE, SkBlendMode::kOverlay ); |
154 MAP( DARKEN_SK_XFERMODE_MODE, SkXfermode::kDarken_Mode ); | 155 MAP( DARKEN_SK_XFERMODE_MODE, SkBlendMode::kDarken ); |
155 MAP( LIGHTEN_SK_XFERMODE_MODE, SkXfermode::kLighten_Mode ); | 156 MAP( LIGHTEN_SK_XFERMODE_MODE, SkBlendMode::kLighten ); |
156 MAP( COLORDODGE_SK_XFERMODE_MODE, SkXfermode::kColorDodge_Mode ); | 157 MAP( COLORDODGE_SK_XFERMODE_MODE, SkBlendMode::kColorDodge ); |
157 MAP( COLORBURN_SK_XFERMODE_MODE, SkXfermode::kColorBurn_Mode ); | 158 MAP( COLORBURN_SK_XFERMODE_MODE, SkBlendMode::kColorBurn ); |
158 MAP( HARDLIGHT_SK_XFERMODE_MODE, SkXfermode::kHardLight_Mode ); | 159 MAP( HARDLIGHT_SK_XFERMODE_MODE, SkBlendMode::kHardLight ); |
159 MAP( SOFTLIGHT_SK_XFERMODE_MODE, SkXfermode::kSoftLight_Mode ); | 160 MAP( SOFTLIGHT_SK_XFERMODE_MODE, SkBlendMode::kSoftLight ); |
160 MAP( DIFFERENCE_SK_XFERMODE_MODE, SkXfermode::kDifference_Mode ); | 161 MAP( DIFFERENCE_SK_XFERMODE_MODE, SkBlendMode::kDifference ); |
161 MAP( EXCLUSION_SK_XFERMODE_MODE, SkXfermode::kExclusion_Mode ); | 162 MAP( EXCLUSION_SK_XFERMODE_MODE, SkBlendMode::kExclusion ); |
162 MAP( MULTIPLY_SK_XFERMODE_MODE, SkXfermode::kMultiply_Mode ); | 163 MAP( MULTIPLY_SK_XFERMODE_MODE, SkBlendMode::kMultiply ); |
163 MAP( HUE_SK_XFERMODE_MODE, SkXfermode::kHue_Mode ); | 164 MAP( HUE_SK_XFERMODE_MODE, SkBlendMode::kHue ); |
164 MAP( SATURATION_SK_XFERMODE_MODE, SkXfermode::kSaturation_Mode ); | 165 MAP( SATURATION_SK_XFERMODE_MODE, SkBlendMode::kSaturation ); |
165 MAP( COLOR_SK_XFERMODE_MODE, SkXfermode::kColor_Mode ); | 166 MAP( COLOR_SK_XFERMODE_MODE, SkBlendMode::kColor ); |
166 MAP( LUMINOSITY_SK_XFERMODE_MODE, SkXfermode::kLuminosity_Mode ); | 167 MAP( LUMINOSITY_SK_XFERMODE_MODE, SkBlendMode::kLuminosity ); |
167 #undef MAP | 168 #undef MAP |
168 default: | 169 default: |
169 return; | 170 return; |
170 } | 171 } |
171 AsPaint(paint)->setXfermodeMode(skmode); | 172 AsPaint(paint)->setBlendMode(skmode); |
172 } | 173 } |
OLD | NEW |