5#ifndef FLUTTER_DISPLAY_LIST_DL_OP_FLAGS_H_
6#define FLUTTER_DISPLAY_LIST_DL_OP_FLAGS_H_
8#include "flutter/display_list/dl_paint.h"
9#include "flutter/fml/logging.h"
114 return (
flags_ & qFlags) == qFlags;
156 const DisplayListSpecialGeometryFlags with(
int extra)
const {
157 return extra == 0 ? *this : DisplayListSpecialGeometryFlags(
flags_ | extra);
166 return special_flags_;
218 return flags_ == other.flags_;
235 constexpr DisplayListAttributeFlags operator+(
int extra)
const {
236 return extra == 0 ? *this : DisplayListAttributeFlags(
flags_ | extra);
239 constexpr DisplayListAttributeFlags operator-(
int remove)
const {
244 const DisplayListSpecialGeometryFlags special_flags_;
252 static constexpr int kBasePaintFlags = (
kUsesColor |
307 kBaseStrokeOrFillFlags |
312 kBaseStrokeOrFillFlags
316 kBaseStrokeOrFillFlags
320 kBaseStrokeOrFillFlags
324 kBaseStrokeOrFillFlags
328 kBaseStrokeOrFillFlags |
336 kBaseStrokeOrFillFlags |
342 kBaseStrokeOrFillFlags |
406 kBaseStrokeOrFillFlags |
constexpr bool applies_color() const
constexpr bool is_stroked(DlDrawStyle style=DlDrawStyle::kStroke) const
constexpr bool applies_alpha() const
constexpr bool applies_color_filter() const
constexpr bool ignores_paint() const
constexpr bool is_geometric() const
constexpr bool applies_alpha_or_color() const
constexpr bool applies_image_filter() const
constexpr bool applies_shader() const
const DisplayListSpecialGeometryFlags GeometryFlags(bool is_stroked) const
constexpr bool applies_anti_alias() const
constexpr bool always_stroked() const
constexpr bool operator==(DisplayListAttributeFlags const &other) const
constexpr bool applies_mask_filter() const
constexpr bool applies_blend() const
The primitive honors the DlBlendMode.
constexpr bool applies_style() const
constexpr bool is_flood() const
constexpr DisplayListFlagsBase(int flags)
constexpr bool has_none(int qFlags) const
constexpr bool has_any(int qFlags) const
constexpr bool has_all(int qFlags) const
static constexpr int kUsesShader
static constexpr int kIsStrokedGeometry
static constexpr int kUsesAlpha
static constexpr int kUsesColorFilter
static constexpr int kAnyAttributeMask
static constexpr int kMayHaveDiagonalCaps
static constexpr int kIsFilledGeometry
static constexpr int kMayHaveAcuteJoins
static constexpr int kMayHaveCaps
static constexpr int kButtCapIsSquare
static constexpr int kIsDrawnGeometry
static constexpr int kIsAnyGeometryMask
static constexpr int kAnySpecialGeometryMask
static constexpr int kMayHaveJoins
static constexpr int kIsNonGeometric
static constexpr int kFloodsSurface
static constexpr int kUsesMaskFilter
static constexpr int kUsesColor
static constexpr int kUsesBlend
static constexpr int kUsesImageFilter
static constexpr int kIgnoresPaint
static constexpr int kUsesAntiAlias
static constexpr DisplayListAttributeFlags kDrawAtlasFlags
static constexpr DisplayListAttributeFlags kDrawVerticesFlags
static constexpr DisplayListAttributeFlags kDrawArcWithCenterFlags
static constexpr DisplayListAttributeFlags kDrawPaintFlags
static constexpr DisplayListAttributeFlags kDrawArcNoCenterFlags
static constexpr DisplayListAttributeFlags kDrawImageRectWithPaintFlags
static constexpr DisplayListAttributeFlags kSaveLayerFlags
static constexpr DisplayListAttributeFlags kDrawOvalFlags
static constexpr DisplayListAttributeFlags kDrawTextBlobFlags
static constexpr DisplayListAttributeFlags kDrawPointsAsLinesFlags
static constexpr DisplayListAttributeFlags kDrawPointsAsPolygonFlags
static constexpr DisplayListAttributeFlags kDrawImageRectFlags
static constexpr DisplayListAttributeFlags kDrawCircleFlags
static constexpr DisplayListAttributeFlags kDrawDisplayListFlags
static constexpr DisplayListAttributeFlags kDrawPathFlags
static constexpr DisplayListAttributeFlags kDrawAtlasWithPaintFlags
static constexpr DisplayListAttributeFlags kDrawImageNineFlags
static constexpr DisplayListAttributeFlags kDrawLineFlags
static constexpr DisplayListAttributeFlags kSaveLayerWithPaintFlags
static constexpr DisplayListAttributeFlags kDrawPointsAsPointsFlags
static constexpr DisplayListAttributeFlags kDrawColorFlags
static constexpr DisplayListAttributeFlags kDrawImageWithPaintFlags
static constexpr DisplayListAttributeFlags kDrawImageNineWithPaintFlags
static constexpr DisplayListAttributeFlags kDrawShadowFlags
static constexpr DisplayListAttributeFlags kDrawImageFlags
static constexpr DisplayListAttributeFlags kDrawHVLineFlags
static constexpr DisplayListAttributeFlags kDrawRRectFlags
static constexpr DisplayListAttributeFlags kDrawDRRectFlags
static constexpr DisplayListAttributeFlags kDrawRectFlags
constexpr bool may_have_diagonal_caps() const
constexpr bool may_have_joins() const
The geometry may have segments connect non-continuously.
constexpr bool may_have_end_caps() const
The geometry may have segments that end without closing the path.
constexpr bool may_have_acute_joins() const
constexpr bool butt_cap_becomes_square() const
Mainly for drawPoints(PointMode) where Butt caps are rendered as squares.
FlutterSemanticsFlag flags
#define FML_DCHECK(condition)
@ kStroke
strokes boundary of shapes
@ kFill
fills interior of shapes