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

Side by Side Diff: tools/sk_tool_utils.cpp

Issue 1772463002: use Make instead of Create to return a shared shader (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: partial update of skia call-sites Created 4 years, 9 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
« src/core/SkPictureShader.cpp ('K') | « tools/sk_tool_utils.h ('k') | no next file » | 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 2014 Google Inc. 2 * Copyright 2014 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 "sk_tool_utils.h" 8 #include "sk_tool_utils.h"
9 #include "sk_tool_utils_flags.h" 9 #include "sk_tool_utils_flags.h"
10 10
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 void write_pixels(SkCanvas* canvas, const SkBitmap& bitmap, int x, int y, 171 void write_pixels(SkCanvas* canvas, const SkBitmap& bitmap, int x, int y,
172 SkColorType colorType, SkAlphaType alphaType) { 172 SkColorType colorType, SkAlphaType alphaType) {
173 SkBitmap tmp(bitmap); 173 SkBitmap tmp(bitmap);
174 tmp.lockPixels(); 174 tmp.lockPixels();
175 175
176 const SkImageInfo info = SkImageInfo::Make(tmp.width(), tmp.height(), colorT ype, alphaType); 176 const SkImageInfo info = SkImageInfo::Make(tmp.width(), tmp.height(), colorT ype, alphaType);
177 177
178 canvas->writePixels(info, tmp.getPixels(), tmp.rowBytes(), x, y); 178 canvas->writePixels(info, tmp.getPixels(), tmp.rowBytes(), x, y);
179 } 179 }
180 180
181 SkShader* create_checkerboard_shader(SkColor c1, SkColor c2, int size) { 181 sk_sp<SkShader> create_checkerboard_shader(SkColor c1, SkColor c2, int size) {
182 SkBitmap bm; 182 SkBitmap bm;
183 bm.allocN32Pixels(2 * size, 2 * size); 183 bm.allocN32Pixels(2 * size, 2 * size);
184 bm.eraseColor(c1); 184 bm.eraseColor(c1);
185 bm.eraseArea(SkIRect::MakeLTRB(0, 0, size, size), c2); 185 bm.eraseArea(SkIRect::MakeLTRB(0, 0, size, size), c2);
186 bm.eraseArea(SkIRect::MakeLTRB(size, size, 2 * size, 2 * size), c2); 186 bm.eraseArea(SkIRect::MakeLTRB(size, size, 2 * size, 2 * size), c2);
187 return SkShader::CreateBitmapShader( 187 return SkShader::MakeBitmapShader(
188 bm, SkShader::kRepeat_TileMode, SkShader::kRepeat_TileMode); 188 bm, SkShader::kRepeat_TileMode, SkShader::kRepeat_TileMode);
189 } 189 }
190 190
191 SkBitmap create_checkerboard_bitmap(int w, int h, SkColor c1, SkColor c2, int ch eckSize) { 191 SkBitmap create_checkerboard_bitmap(int w, int h, SkColor c1, SkColor c2, int ch eckSize) {
192 SkBitmap bitmap; 192 SkBitmap bitmap;
193 bitmap.allocN32Pixels(w, h); 193 bitmap.allocN32Pixels(w, h);
194 SkCanvas canvas(bitmap); 194 SkCanvas canvas(bitmap);
195 195
196 sk_tool_utils::draw_checkerboard(&canvas, c1, c2, checkSize); 196 sk_tool_utils::draw_checkerboard(&canvas, c1, c2, checkSize);
197 return bitmap; 197 return bitmap;
198 } 198 }
199 199
200 void draw_checkerboard(SkCanvas* canvas, SkColor c1, SkColor c2, int size) { 200 void draw_checkerboard(SkCanvas* canvas, SkColor c1, SkColor c2, int size) {
201 SkPaint paint; 201 SkPaint paint;
202 paint.setShader(create_checkerboard_shader(c1, c2, size))->unref(); 202 paint.setShader(create_checkerboard_shader(c1, c2, size));
203 paint.setXfermodeMode(SkXfermode::kSrc_Mode); 203 paint.setXfermodeMode(SkXfermode::kSrc_Mode);
204 canvas->drawPaint(paint); 204 canvas->drawPaint(paint);
205 } 205 }
206 206
207 SkBitmap create_string_bitmap(int w, int h, SkColor c, int x, int y, 207 SkBitmap create_string_bitmap(int w, int h, SkColor c, int x, int y,
208 int textSize, const char* str) { 208 int textSize, const char* str) {
209 SkBitmap bitmap; 209 SkBitmap bitmap;
210 bitmap.allocN32Pixels(w, h); 210 bitmap.allocN32Pixels(w, h);
211 SkCanvas canvas(bitmap); 211 SkCanvas canvas(bitmap);
212 212
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
437 for (int y = 0; y < src.height(); ++y) { 437 for (int y = 0; y < src.height(); ++y) {
438 for (int x = 0; x < src.width(); ++x) { 438 for (int x = 0; x < src.width(); ++x) {
439 *dst.getAddr32(x, y) = blur_pixel(src, x, y, kernel.get(), wh); 439 *dst.getAddr32(x, y) = blur_pixel(src, x, y, kernel.get(), wh);
440 } 440 }
441 } 441 }
442 442
443 return dst; 443 return dst;
444 } 444 }
445 445
446 } // namespace sk_tool_utils 446 } // namespace sk_tool_utils
OLDNEW
« src/core/SkPictureShader.cpp ('K') | « tools/sk_tool_utils.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698