1 // Copyright 2019 Google LLC.
2 // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
3 #include "tools/fiddle/examples.h"
4 // HASH=319f6b124458dcc0f9ce4d7bbde65810
5 REG_FIDDLE(Path_ConvertToNonInverseFillType, 256, 256, true, 0) {
6 #define nameValue(fill) { SkPathFillType::fill, #fill }
7
draw(SkCanvas * canvas)8 void draw(SkCanvas* canvas) {
9 struct {
10 SkPathFillType fill;
11 const char* name;
12 } fills[] = {
13 nameValue(kWinding),
14 nameValue(kEvenOdd),
15 nameValue(kInverseWinding),
16 nameValue(kInverseEvenOdd),
17 };
18 for (unsigned i = 0; i < std::size(fills); ++i) {
19 if (fills[i].fill != (SkPathFillType) i) {
20 SkDebugf("fills array order does not match FillType enum order");
21 break;
22 }
23 SkDebugf("ConvertToNonInverseFillType(%s) == %s\n", fills[i].name,
24 fills[(int) SkPathFillType_ConvertToNonInverse(fills[i].fill)].name);
25 }
26 }
27 } // END FIDDLE
28