4
4
5
5
#include " flutter/display_list/display_list_flags.h"
6
6
#include " flutter/display_list/display_list_path_effect.h"
7
+
7
8
namespace flutter {
8
9
9
10
const DisplayListSpecialGeometryFlags DisplayListAttributeFlags::WithPathEffect (
@@ -27,165 +28,4 @@ const DisplayListSpecialGeometryFlags DisplayListAttributeFlags::WithPathEffect(
27
28
return special_flags_;
28
29
}
29
30
30
- // clang-format off
31
- // Flags common to all primitives that apply colors
32
- #define PAINT_FLAGS (kUsesDither_ | \
33
- kUsesColor_ | \
34
- kUsesAlpha_ | \
35
- kUsesBlend_ | \
36
- kUsesShader_ | \
37
- kUsesColorFilter_ | \
38
- kUsesImageFilter_ )
39
-
40
- // Flags common to all primitives that stroke or fill
41
- #define STROKE_OR_FILL_FLAGS (kIsDrawnGeometry_ | \
42
- kUsesAntiAlias_ | \
43
- kUsesMaskFilter_ | \
44
- kUsesPathEffect_ )
45
-
46
- // Flags common to primitives that stroke geometry
47
- #define STROKE_FLAGS (kIsStrokedGeometry_ | \
48
- kUsesAntiAlias_ | \
49
- kUsesMaskFilter_ | \
50
- kUsesPathEffect_ )
51
-
52
- // Flags common to primitives that render an image with paint attributes
53
- #define IMAGE_FLAGS_BASE (kIsNonGeometric_ | \
54
- kUsesAlpha_ | \
55
- kUsesDither_ | \
56
- kUsesBlend_ | \
57
- kUsesColorFilter_ | \
58
- kUsesImageFilter_ )
59
- // clang-format on
60
-
61
- const DisplayListAttributeFlags DisplayListOpFlags::kSaveLayerFlags =
62
- DisplayListAttributeFlags (kIgnoresPaint_ );
63
-
64
- const DisplayListAttributeFlags DisplayListOpFlags::kSaveLayerWithPaintFlags =
65
- DisplayListAttributeFlags (kIsNonGeometric_ | //
66
- kUsesAlpha_ | //
67
- kUsesBlend_ | //
68
- kUsesColorFilter_ | //
69
- kUsesImageFilter_ );
70
-
71
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawColorFlags =
72
- DisplayListAttributeFlags (kFloodsSurface_ | kIgnoresPaint_ );
73
-
74
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawPaintFlags =
75
- DisplayListAttributeFlags (PAINT_FLAGS | kFloodsSurface_ );
76
-
77
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawHVLineFlags =
78
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_FLAGS | kMayHaveCaps_ );
79
-
80
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawLineFlags =
81
- kDrawHVLineFlags .with(kMayHaveDiagonalCaps_ );
82
-
83
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawRectFlags =
84
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS |
85
- kMayHaveJoins_ );
86
-
87
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawOvalFlags =
88
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS);
89
-
90
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawCircleFlags =
91
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS);
92
-
93
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawRRectFlags =
94
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS);
95
-
96
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawDRRectFlags =
97
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS);
98
-
99
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawPathFlags =
100
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS |
101
- kMayHaveCaps_ | kMayHaveDiagonalCaps_ |
102
- kMayHaveJoins_ | kMayHaveAcuteJoins_ );
103
-
104
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawArcNoCenterFlags =
105
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS |
106
- kMayHaveCaps_ | kMayHaveDiagonalCaps_ );
107
-
108
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawArcWithCenterFlags =
109
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS |
110
- kMayHaveJoins_ | kMayHaveAcuteJoins_ );
111
-
112
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawPointsAsPointsFlags =
113
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_FLAGS | //
114
- kMayHaveCaps_ | kButtCapIsSquare_ );
115
-
116
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawPointsAsLinesFlags =
117
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_FLAGS | //
118
- kMayHaveCaps_ | kMayHaveDiagonalCaps_ );
119
-
120
- // Polygon mode just draws (count-1) separate lines, no joins
121
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawPointsAsPolygonFlags =
122
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_FLAGS | //
123
- kMayHaveCaps_ | kMayHaveDiagonalCaps_ );
124
-
125
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawVerticesFlags =
126
- DisplayListAttributeFlags (kIsNonGeometric_ | //
127
- kUsesDither_ | //
128
- kUsesAlpha_ | //
129
- kUsesShader_ | //
130
- kUsesBlend_ | //
131
- kUsesColorFilter_ | //
132
- kUsesImageFilter_ );
133
-
134
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawImageFlags =
135
- DisplayListAttributeFlags (kIgnoresPaint_ );
136
-
137
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawImageWithPaintFlags =
138
- DisplayListAttributeFlags (IMAGE_FLAGS_BASE | //
139
- kUsesAntiAlias_ | kUsesMaskFilter_ );
140
-
141
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawImageRectFlags =
142
- DisplayListAttributeFlags (kIgnoresPaint_ );
143
-
144
- const DisplayListAttributeFlags
145
- DisplayListOpFlags::kDrawImageRectWithPaintFlags =
146
- DisplayListAttributeFlags (IMAGE_FLAGS_BASE | //
147
- kUsesAntiAlias_ | kUsesMaskFilter_ );
148
-
149
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawImageNineFlags =
150
- DisplayListAttributeFlags (kIgnoresPaint_ );
151
-
152
- const DisplayListAttributeFlags
153
- DisplayListOpFlags::kDrawImageNineWithPaintFlags =
154
- DisplayListAttributeFlags (IMAGE_FLAGS_BASE);
155
-
156
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawImageLatticeFlags =
157
- DisplayListAttributeFlags (kIgnoresPaint_ );
158
-
159
- const DisplayListAttributeFlags
160
- DisplayListOpFlags::kDrawImageLatticeWithPaintFlags =
161
- DisplayListAttributeFlags (IMAGE_FLAGS_BASE);
162
-
163
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawAtlasFlags =
164
- DisplayListAttributeFlags (kIgnoresPaint_ );
165
-
166
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawAtlasWithPaintFlags =
167
- DisplayListAttributeFlags (IMAGE_FLAGS_BASE);
168
-
169
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawPictureFlags =
170
- DisplayListAttributeFlags (kIgnoresPaint_ );
171
-
172
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawPictureWithPaintFlags =
173
- kSaveLayerWithPaintFlags ;
174
-
175
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawDisplayListFlags =
176
- DisplayListAttributeFlags (kIgnoresPaint_ );
177
-
178
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawTextBlobFlags =
179
- DisplayListAttributeFlags (PAINT_FLAGS | STROKE_OR_FILL_FLAGS |
180
- kMayHaveJoins_ )
181
- .without(kUsesAntiAlias_ );
182
-
183
- const DisplayListAttributeFlags DisplayListOpFlags::kDrawShadowFlags =
184
- DisplayListAttributeFlags (kIgnoresPaint_ );
185
-
186
- #undef PAINT_FLAGS
187
- #undef STROKE_OR_FILL_FLAGS
188
- #undef STROKE_FLAGS
189
- #undef IMAGE_FLAGS_BASE
190
-
191
31
} // namespace flutter
0 commit comments