Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(152)

Side by Side Diff: tools/debugger/SkDrawCommand.cpp

Issue 2396953002: Revert[8] "replace SkXfermode obj with SkBlendMode enum in paints" (Closed)
Patch Set: add tmp virtual to unroll legacy arithmodes Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « tools/debugger/SkDebugCanvas.cpp ('k') | tools/sk_tool_utils.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 Google Inc. 2 * Copyright 2012 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 "SkDrawCommand.h" 8 #include "SkDrawCommand.h"
9 9
10 #include "SkBlurMaskFilter.h" 10 #include "SkBlurMaskFilter.h"
(...skipping 1098 matching lines...) Expand 10 before | Expand all | Expand 10 after
1109 static void apply_paint_shader(const SkPaint& paint, Json::Value* target, 1109 static void apply_paint_shader(const SkPaint& paint, Json::Value* target,
1110 UrlDataManager& urlDataManager) { 1110 UrlDataManager& urlDataManager) {
1111 SkFlattenable* shader = paint.getShader(); 1111 SkFlattenable* shader = paint.getShader();
1112 if (shader != nullptr) { 1112 if (shader != nullptr) {
1113 Json::Value jsonShader; 1113 Json::Value jsonShader;
1114 SkDrawCommand::flatten(shader, &jsonShader, urlDataManager); 1114 SkDrawCommand::flatten(shader, &jsonShader, urlDataManager);
1115 (*target)[SKDEBUGCANVAS_ATTRIBUTE_SHADER] = jsonShader; 1115 (*target)[SKDEBUGCANVAS_ATTRIBUTE_SHADER] = jsonShader;
1116 } 1116 }
1117 } 1117 }
1118 1118
1119 static void apply_paint_xfermode(const SkPaint& paint, Json::Value* target,
1120 UrlDataManager& urlDataManager) {
1121 SkFlattenable* xfermode = paint.getXfermode();
1122 if (xfermode != nullptr) {
1123 Json::Value jsonXfermode;
1124 SkDrawCommand::flatten(xfermode, &jsonXfermode, urlDataManager);
1125 (*target)[SKDEBUGCANVAS_ATTRIBUTE_XFERMODE] = jsonXfermode;
1126 }
1127 }
1128
1129 static void apply_paint_imagefilter(const SkPaint& paint, Json::Value* target, 1119 static void apply_paint_imagefilter(const SkPaint& paint, Json::Value* target,
1130 UrlDataManager& urlDataManager) { 1120 UrlDataManager& urlDataManager) {
1131 SkFlattenable* imageFilter = paint.getImageFilter(); 1121 SkFlattenable* imageFilter = paint.getImageFilter();
1132 if (imageFilter != nullptr) { 1122 if (imageFilter != nullptr) {
1133 Json::Value jsonImageFilter; 1123 Json::Value jsonImageFilter;
1134 SkDrawCommand::flatten(imageFilter, &jsonImageFilter, urlDataManager); 1124 SkDrawCommand::flatten(imageFilter, &jsonImageFilter, urlDataManager);
1135 (*target)[SKDEBUGCANVAS_ATTRIBUTE_IMAGEFILTER] = jsonImageFilter; 1125 (*target)[SKDEBUGCANVAS_ATTRIBUTE_IMAGEFILTER] = jsonImageFilter;
1136 } 1126 }
1137 } 1127 }
1138 1128
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
1170 apply_paint_hinting(paint, &result); 1160 apply_paint_hinting(paint, &result);
1171 apply_paint_color(paint, &result); 1161 apply_paint_color(paint, &result);
1172 apply_paint_style(paint, &result); 1162 apply_paint_style(paint, &result);
1173 apply_paint_cap(paint, &result); 1163 apply_paint_cap(paint, &result);
1174 apply_paint_join(paint, &result); 1164 apply_paint_join(paint, &result);
1175 apply_paint_filterquality(paint, &result); 1165 apply_paint_filterquality(paint, &result);
1176 apply_paint_textalign(paint, &result); 1166 apply_paint_textalign(paint, &result);
1177 apply_paint_patheffect(paint, &result, urlDataManager); 1167 apply_paint_patheffect(paint, &result, urlDataManager);
1178 apply_paint_maskfilter(paint, &result, urlDataManager); 1168 apply_paint_maskfilter(paint, &result, urlDataManager);
1179 apply_paint_shader(paint, &result, urlDataManager); 1169 apply_paint_shader(paint, &result, urlDataManager);
1180 apply_paint_xfermode(paint, &result, urlDataManager);
1181 apply_paint_looper(paint, &result, urlDataManager); 1170 apply_paint_looper(paint, &result, urlDataManager);
1182 apply_paint_imagefilter(paint, &result, urlDataManager); 1171 apply_paint_imagefilter(paint, &result, urlDataManager);
1183 apply_paint_colorfilter(paint, &result, urlDataManager); 1172 apply_paint_colorfilter(paint, &result, urlDataManager);
1184 apply_paint_typeface(paint, &result, urlDataManager); 1173 apply_paint_typeface(paint, &result, urlDataManager);
1185 return result; 1174 return result;
1186 } 1175 }
1187 1176
1188 static SkPoint get_json_point(Json::Value point) { 1177 static SkPoint get_json_point(Json::Value point) {
1189 return SkPoint::Make(point[0].asFloat(), point[1].asFloat()); 1178 return SkPoint::Make(point[0].asFloat(), point[1].asFloat());
1190 } 1179 }
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
1239 if (jsonPaint.isMember(SKDEBUGCANVAS_ATTRIBUTE_COLORFILTER)) { 1228 if (jsonPaint.isMember(SKDEBUGCANVAS_ATTRIBUTE_COLORFILTER)) {
1240 Json::Value jsonColorFilter = jsonPaint[SKDEBUGCANVAS_ATTRIBUTE_COLORFIL TER]; 1229 Json::Value jsonColorFilter = jsonPaint[SKDEBUGCANVAS_ATTRIBUTE_COLORFIL TER];
1241 sk_sp<SkColorFilter> colorFilter((SkColorFilter*)load_flattenable(jsonCo lorFilter, 1230 sk_sp<SkColorFilter> colorFilter((SkColorFilter*)load_flattenable(jsonCo lorFilter,
1242 urlDat aManager)); 1231 urlDat aManager));
1243 if (colorFilter != nullptr) { 1232 if (colorFilter != nullptr) {
1244 target->setColorFilter(colorFilter); 1233 target->setColorFilter(colorFilter);
1245 } 1234 }
1246 } 1235 }
1247 } 1236 }
1248 1237
1249 static void extract_json_paint_xfermode(Json::Value& jsonPaint, UrlDataManager& urlDataManager,
1250 SkPaint* target) {
1251 if (jsonPaint.isMember(SKDEBUGCANVAS_ATTRIBUTE_XFERMODE)) {
1252 Json::Value jsonXfermode = jsonPaint[SKDEBUGCANVAS_ATTRIBUTE_XFERMODE];
1253 sk_sp<SkXfermode> xfermode((SkXfermode*) load_flattenable(jsonXfermode, urlDataManager));
1254 if (xfermode != nullptr) {
1255 target->setXfermode(xfermode);
1256 }
1257 }
1258 }
1259
1260 static void extract_json_paint_looper(Json::Value& jsonPaint, UrlDataManager& ur lDataManager, 1238 static void extract_json_paint_looper(Json::Value& jsonPaint, UrlDataManager& ur lDataManager,
1261 SkPaint* target) { 1239 SkPaint* target) {
1262 if (jsonPaint.isMember(SKDEBUGCANVAS_ATTRIBUTE_LOOPER)) { 1240 if (jsonPaint.isMember(SKDEBUGCANVAS_ATTRIBUTE_LOOPER)) {
1263 Json::Value jsonLooper = jsonPaint[SKDEBUGCANVAS_ATTRIBUTE_LOOPER]; 1241 Json::Value jsonLooper = jsonPaint[SKDEBUGCANVAS_ATTRIBUTE_LOOPER];
1264 sk_sp<SkDrawLooper> looper((SkDrawLooper*) load_flattenable(jsonLooper, urlDataManager)); 1242 sk_sp<SkDrawLooper> looper((SkDrawLooper*) load_flattenable(jsonLooper, urlDataManager));
1265 if (looper != nullptr) { 1243 if (looper != nullptr) {
1266 target->setLooper(std::move(looper)); 1244 target->setLooper(std::move(looper));
1267 } 1245 }
1268 } 1246 }
1269 } 1247 }
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
1496 } 1474 }
1497 1475
1498 static void extract_json_paint(Json::Value& paint, UrlDataManager& urlDataManage r, 1476 static void extract_json_paint(Json::Value& paint, UrlDataManager& urlDataManage r,
1499 SkPaint* result) { 1477 SkPaint* result) {
1500 extract_json_paint_hinting(paint, result); 1478 extract_json_paint_hinting(paint, result);
1501 extract_json_paint_color(paint, result); 1479 extract_json_paint_color(paint, result);
1502 extract_json_paint_shader(paint, urlDataManager, result); 1480 extract_json_paint_shader(paint, urlDataManager, result);
1503 extract_json_paint_patheffect(paint, urlDataManager, result); 1481 extract_json_paint_patheffect(paint, urlDataManager, result);
1504 extract_json_paint_maskfilter(paint, urlDataManager, result); 1482 extract_json_paint_maskfilter(paint, urlDataManager, result);
1505 extract_json_paint_colorfilter(paint, urlDataManager, result); 1483 extract_json_paint_colorfilter(paint, urlDataManager, result);
1506 extract_json_paint_xfermode(paint, urlDataManager, result);
1507 extract_json_paint_looper(paint, urlDataManager, result); 1484 extract_json_paint_looper(paint, urlDataManager, result);
1508 extract_json_paint_imagefilter(paint, urlDataManager, result); 1485 extract_json_paint_imagefilter(paint, urlDataManager, result);
1509 extract_json_paint_typeface(paint, urlDataManager, result); 1486 extract_json_paint_typeface(paint, urlDataManager, result);
1510 extract_json_paint_style(paint, result); 1487 extract_json_paint_style(paint, result);
1511 extract_json_paint_strokewidth(paint, result); 1488 extract_json_paint_strokewidth(paint, result);
1512 extract_json_paint_strokemiter(paint, result); 1489 extract_json_paint_strokemiter(paint, result);
1513 extract_json_paint_strokejoin(paint, result); 1490 extract_json_paint_strokejoin(paint, result);
1514 extract_json_paint_cap(paint, result); 1491 extract_json_paint_cap(paint, result);
1515 extract_json_paint_filterquality(paint, result); 1492 extract_json_paint_filterquality(paint, result);
1516 extract_json_paint_antialias(paint, result); 1493 extract_json_paint_antialias(paint, result);
(...skipping 2039 matching lines...) Expand 10 before | Expand all | Expand 10 after
3556 SkTranslateZCommand* SkTranslateZCommand::fromJSON(Json::Value& command, 3533 SkTranslateZCommand* SkTranslateZCommand::fromJSON(Json::Value& command,
3557 UrlDataManager& urlDataManager) { 3534 UrlDataManager& urlDataManager) {
3558 SkScalar z; 3535 SkScalar z;
3559 #ifdef SK_EXPERIMENTAL_SHADOWING 3536 #ifdef SK_EXPERIMENTAL_SHADOWING
3560 extract_json_scalar(command[SKDEBUGCANVAS_ATTRIBUTE_DRAWDEPTHTRANS], &z); 3537 extract_json_scalar(command[SKDEBUGCANVAS_ATTRIBUTE_DRAWDEPTHTRANS], &z);
3561 #else 3538 #else
3562 z = 0; 3539 z = 0;
3563 #endif 3540 #endif
3564 return new SkTranslateZCommand(z); 3541 return new SkTranslateZCommand(z);
3565 } 3542 }
OLDNEW
« no previous file with comments | « tools/debugger/SkDebugCanvas.cpp ('k') | tools/sk_tool_utils.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698