Skip to content

Commit

Permalink
LibGfx: Add painting transparency grids to StylePainter
Browse files Browse the repository at this point in the history
  • Loading branch information
xTibor authored and awesomekling committed Sep 25, 2020
1 parent 7d83665 commit 7ab04ea
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 0 deletions.
5 changes: 5 additions & 0 deletions Libraries/LibGfx/ClassicStylePainter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -380,4 +380,9 @@ void ClassicStylePainter::paint_check_box(Painter& painter, const IntRect& rect,
}
}

void ClassicStylePainter::paint_transparency_grid(Painter& painter, const IntRect& rect, const Palette& palette)
{
painter.fill_rect_with_checkerboard(rect, { 8, 8 }, palette.base().darkened(0.9), palette.base());
}

}
1 change: 1 addition & 0 deletions Libraries/LibGfx/ClassicStylePainter.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ class ClassicStylePainter : public BaseStylePainter {
void paint_progress_bar(Painter&, const IntRect&, const Palette&, int min, int max, int value, const StringView& text) override;
void paint_radio_button(Painter&, const IntRect&, const Palette&, bool is_checked, bool is_being_pressed) override;
void paint_check_box(Painter&, const IntRect&, const Palette&, bool is_enabled, bool is_checked, bool is_being_pressed) override;
void paint_transparency_grid(Painter&, const IntRect&, const Palette&) override;
};

}
5 changes: 5 additions & 0 deletions Libraries/LibGfx/StylePainter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -78,4 +78,9 @@ void StylePainter::paint_check_box(Painter& painter, const IntRect& rect, const
current().paint_check_box(painter, rect, palette, is_enabled, is_checked, is_being_pressed);
}

void StylePainter::paint_transparency_grid(Painter& painter, const IntRect& rect, const Palette& palette)
{
current().paint_transparency_grid(painter, rect, palette);
}

}
2 changes: 2 additions & 0 deletions Libraries/LibGfx/StylePainter.h
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ class BaseStylePainter {
virtual void paint_progress_bar(Painter&, const IntRect&, const Palette&, int min, int max, int value, const StringView& text) = 0;
virtual void paint_radio_button(Painter&, const IntRect&, const Palette&, bool is_checked, bool is_being_pressed) = 0;
virtual void paint_check_box(Painter&, const IntRect&, const Palette&, bool is_enabled, bool is_checked, bool is_being_pressed) = 0;
virtual void paint_transparency_grid(Painter&, const IntRect&, const Palette&) = 0;

protected:
BaseStylePainter() { }
Expand All @@ -80,6 +81,7 @@ class StylePainter {
static void paint_progress_bar(Painter&, const IntRect&, const Palette&, int min, int max, int value, const StringView& text);
static void paint_radio_button(Painter&, const IntRect&, const Palette&, bool is_checked, bool is_being_pressed);
static void paint_check_box(Painter&, const IntRect&, const Palette&, bool is_enabled, bool is_checked, bool is_being_pressed);
static void paint_transparency_grid(Painter&, const IntRect&, const Palette&);
};

}

0 comments on commit 7ab04ea

Please sign in to comment.