12 if (background_ !=
nullptr) {
15 color::Transparent,
s.fill_mode(),
s.blending_mode());
31 if (interior.
empty()) {
43 s.out().fillRect(
s.blending_mode(),
50 s.out().fillRect(
s.blending_mode(),
63 s.out().fillRect(
s.blending_mode(),
70 s.out().fillRect(
s.blending_mode(),
Axis-aligned integer rectangle.
int16_t xMin() const
Minimum x (inclusive).
int16_t xMax() const
Maximum x (inclusive).
bool empty() const
Return whether the box is empty.
Box translate(int16_t x_offset, int16_t y_offset) const
Return a translated copy of this box.
int16_t yMax() const
Maximum y (inclusive).
static Box Intersect(const Box &a, const Box &b)
Return the intersection of two boxes (may be empty).
int16_t yMin() const
Minimum y (inclusive).
ARGB8888 color stored as a 32-bit unsigned integer.
Interface for objects that can be drawn to an output device.
Low-level handle used to draw to an underlying device.
const Box & interior() const
const Box & extents() const
void draw(const Surface &s, const Drawable &interior) const
void drawInternal(const Surface &s, const Drawable &interior) const
Box extents() const override
Return the bounding box encompassing all pixels that need to be drawn.
Defines 140 opaque HTML named colors.
Color AlphaBlend(Color bgc, Color fgc)
FillMode
Specifies whether a Drawable should fill its entire extents box, including fully transparent pixels.
@ kExtents
Fill the entire extents box (possibly with fully transparent pixels).