diff options
author | Andreas Kling <awesomekling@gmail.com> | 2019-12-24 20:57:54 +0100 |
---|---|---|
committer | Andreas Kling <awesomekling@gmail.com> | 2019-12-24 21:27:16 +0100 |
commit | a79bac428b7857b9db2d0641daf3b7f2e3deb91f (patch) | |
tree | 7fee3f0764147238e218b79aa1f526c36deeecb0 /Applications/FontEditor | |
parent | cb4e51a7a58d1c536d51484f83239d8cd9009616 (diff) | |
download | serenity-a79bac428b7857b9db2d0641daf3b7f2e3deb91f.zip |
LibGUI+LibDraw: Add "Palette" concept for scoped color theming
GApplication now has a palette. This palette contains all the system
theme colors by default, and is inherited by a new top-level GWidget.
New child widgets inherit their parents palette.
It is possible to override the GApplication palette, and the palette
of any GWidget.
The Palette object contains a bunch of colors, each corresponding to
a ColorRole. Each role has a convenience getter as well.
Each GWidget now has a background_role() and foreground_role(), which
are then looked up in their current palette when painting. This means
that you no longer alter the background color of a widget by setting
it directly, rather you alter either its background role, or the
widget's palette.
Diffstat (limited to 'Applications/FontEditor')
-rw-r--r-- | Applications/FontEditor/GlyphMapWidget.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Applications/FontEditor/GlyphMapWidget.cpp b/Applications/FontEditor/GlyphMapWidget.cpp index e8b88ae62d..1e65cf8d77 100644 --- a/Applications/FontEditor/GlyphMapWidget.cpp +++ b/Applications/FontEditor/GlyphMapWidget.cpp @@ -1,4 +1,5 @@ #include "GlyphMapWidget.h" +#include <LibDraw/Palette.h> #include <LibGUI/GPainter.h> GlyphMapWidget::GlyphMapWidget(Font& mutable_font, GWidget* parent) @@ -74,7 +75,7 @@ void GlyphMapWidget::paint_event(GPaintEvent& event) font().max_glyph_width(), font().glyph_height()); if (glyph == m_selected_glyph) { - painter.fill_rect(outer_rect, SystemColor::Selection); + painter.fill_rect(outer_rect, palette().selection()); painter.draw_glyph(inner_rect.location(), glyph, Color::White); } else { painter.draw_glyph(inner_rect.location(), glyph, Color::Black); |