Переглянути джерело

LibGUI: Remove some header dependencies from Widget.h

Andreas Kling 5 роки тому
батько
коміт
34c7322d77
36 змінених файлів з 84 додано та 33 видалено
  1. 2 1
      Applications/About/main.cpp
  2. 1 0
      Applications/FontEditor/GlyphEditorWidget.cpp
  3. 2 1
      Applications/FontEditor/GlyphMapWidget.cpp
  4. 1 0
      Applications/FontEditor/main.cpp
  5. 1 0
      Applications/HexEditor/HexEditor.h
  6. 1 0
      Applications/PaintBrush/PaletteWidget.cpp
  7. 1 0
      Applications/SystemMonitor/GraphWidget.cpp
  8. 2 1
      Applications/SystemMonitor/MemoryStatsWidget.cpp
  9. 1 0
      Applications/Terminal/main.cpp
  10. 2 1
      Applications/Welcome/TextWidget.cpp
  11. 1 0
      Applications/Welcome/main.cpp
  12. 1 0
      DevTools/HackStudio/CursorTool.cpp
  13. 1 0
      DevTools/HackStudio/ProcessStateWidget.cpp
  14. 1 0
      Games/Snake/SnakeGame.cpp
  15. 1 0
      Libraries/LibGUI/AboutDialog.cpp
  16. 1 1
      Libraries/LibGUI/AbstractTableView.h
  17. 2 1
      Libraries/LibGUI/Application.cpp
  18. 3 1
      Libraries/LibGUI/Button.cpp
  19. 3 2
      Libraries/LibGUI/CheckBox.cpp
  20. 1 0
      Libraries/LibGUI/ColorPicker.cpp
  21. 2 1
      Libraries/LibGUI/ColumnsView.cpp
  22. 2 1
      Libraries/LibGUI/Frame.cpp
  23. 3 2
      Libraries/LibGUI/GroupBox.cpp
  24. 3 2
      Libraries/LibGUI/Label.cpp
  25. 1 0
      Libraries/LibGUI/MessageBox.cpp
  26. 1 0
      Libraries/LibGUI/ProgressBar.cpp
  27. 4 2
      Libraries/LibGUI/RadioButton.cpp
  28. 1 0
      Libraries/LibGUI/Slider.cpp
  29. 2 1
      Libraries/LibGUI/StatusBar.cpp
  30. 3 2
      Libraries/LibGUI/TabWidget.cpp
  31. 17 0
      Libraries/LibGUI/Widget.cpp
  32. 11 13
      Libraries/LibGUI/Widget.h
  33. 2 0
      Libraries/LibGfx/Forward.h
  34. 1 0
      MenuApplets/Audio/main.cpp
  35. 1 0
      MenuApplets/Clock/main.cpp
  36. 1 0
      MenuApplets/UserName/main.cpp

+ 2 - 1
Applications/About/main.cpp

@@ -30,8 +30,9 @@
 #include <LibGUI/Desktop.h>
 #include <LibGUI/Desktop.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/Window.h>
-#include <sys/utsname.h>
+#include <LibGfx/Font.h>
 #include <stdio.h>
 #include <stdio.h>
+#include <sys/utsname.h>
 
 
 int main(int argc, char** argv)
 int main(int argc, char** argv)
 {
 {

+ 1 - 0
Applications/FontEditor/GlyphEditorWidget.cpp

@@ -26,6 +26,7 @@
 
 
 #include "GlyphEditorWidget.h"
 #include "GlyphEditorWidget.h"
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Font.h>
 
 
 GlyphEditorWidget::GlyphEditorWidget(Gfx::Font& mutable_font, GUI::Widget* parent)
 GlyphEditorWidget::GlyphEditorWidget(Gfx::Font& mutable_font, GUI::Widget* parent)
     : GUI::Frame(parent)
     : GUI::Frame(parent)

+ 2 - 1
Applications/FontEditor/GlyphMapWidget.cpp

@@ -25,8 +25,9 @@
  */
  */
 
 
 #include "GlyphMapWidget.h"
 #include "GlyphMapWidget.h"
-#include <LibGfx/Palette.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/Palette.h>
 
 
 GlyphMapWidget::GlyphMapWidget(Gfx::Font& mutable_font, GUI::Widget* parent)
 GlyphMapWidget::GlyphMapWidget(Gfx::Font& mutable_font, GUI::Widget* parent)
     : GUI::Frame(parent)
     : GUI::Frame(parent)

+ 1 - 0
Applications/FontEditor/main.cpp

@@ -31,6 +31,7 @@
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/Window.h>
 #include <LibGfx/Bitmap.h>
 #include <LibGfx/Bitmap.h>
+#include <LibGfx/Font.h>
 #include <stdio.h>
 #include <stdio.h>
 
 
 int main(int argc, char** argv)
 int main(int argc, char** argv)

+ 1 - 0
Applications/HexEditor/HexEditor.h

@@ -33,6 +33,7 @@
 #include <AK/NonnullRefPtrVector.h>
 #include <AK/NonnullRefPtrVector.h>
 #include <AK/StdLibExtras.h>
 #include <AK/StdLibExtras.h>
 #include <LibGUI/ScrollableWidget.h>
 #include <LibGUI/ScrollableWidget.h>
+#include <LibGfx/Font.h>
 #include <LibGfx/TextAlignment.h>
 #include <LibGfx/TextAlignment.h>
 
 
 class HexEditor : public GUI::ScrollableWidget {
 class HexEditor : public GUI::ScrollableWidget {

+ 1 - 0
Applications/PaintBrush/PaletteWidget.cpp

@@ -28,6 +28,7 @@
 #include "PaintableWidget.h"
 #include "PaintableWidget.h"
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/ColorPicker.h>
 #include <LibGUI/ColorPicker.h>
+#include <LibGfx/Palette.h>
 
 
 class ColorWidget : public GUI::Frame {
 class ColorWidget : public GUI::Frame {
     C_OBJECT(ColorWidget)
     C_OBJECT(ColorWidget)

+ 1 - 0
Applications/SystemMonitor/GraphWidget.cpp

@@ -26,6 +26,7 @@
 
 
 #include "GraphWidget.h"
 #include "GraphWidget.h"
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Font.h>
 
 
 GraphWidget::GraphWidget(GUI::Widget* parent)
 GraphWidget::GraphWidget(GUI::Widget* parent)
     : GUI::Frame(parent)
     : GUI::Frame(parent)

+ 2 - 1
Applications/SystemMonitor/MemoryStatsWidget.cpp

@@ -28,10 +28,11 @@
 #include "GraphWidget.h"
 #include "GraphWidget.h"
 #include <AK/JsonObject.h>
 #include <AK/JsonObject.h>
 #include <LibCore/File.h>
 #include <LibCore/File.h>
-#include <LibGfx/StylePainter.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/StylePainter.h>
 #include <stdio.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdlib.h>
 
 

+ 1 - 0
Applications/Terminal/main.cpp

@@ -39,6 +39,7 @@
 #include <LibGUI/Slider.h>
 #include <LibGUI/Slider.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/Window.h>
+#include <LibGfx/Font.h>
 #include <LibVT/TerminalWidget.h>
 #include <LibVT/TerminalWidget.h>
 #include <assert.h>
 #include <assert.h>
 #include <errno.h>
 #include <errno.h>

+ 2 - 1
Applications/Welcome/TextWidget.cpp

@@ -28,8 +28,9 @@
 #include <AK/String.h>
 #include <AK/String.h>
 #include <AK/StringBuilder.h>
 #include <AK/StringBuilder.h>
 #include <AK/Vector.h>
 #include <AK/Vector.h>
-#include <LibGfx/Palette.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/Palette.h>
 
 
 TextWidget::TextWidget(GUI::Widget* parent)
 TextWidget::TextWidget(GUI::Widget* parent)
     : GUI::Frame(parent)
     : GUI::Frame(parent)

+ 1 - 0
Applications/Welcome/main.cpp

@@ -33,6 +33,7 @@
 #include <LibGUI/Label.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/StackWidget.h>
 #include <LibGUI/StackWidget.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/Window.h>
+#include <LibGfx/Font.h>
 #include <LibGfx/PNGLoader.h>
 #include <LibGfx/PNGLoader.h>
 
 
 #include "TextWidget.h"
 #include "TextWidget.h"

+ 1 - 0
DevTools/HackStudio/CursorTool.cpp

@@ -29,6 +29,7 @@
 #include "FormWidget.h"
 #include "FormWidget.h"
 #include "WidgetTreeModel.h"
 #include "WidgetTreeModel.h"
 #include <AK/LogStream.h>
 #include <AK/LogStream.h>
+#include <LibGfx/Palette.h>
 
 
 void CursorTool::on_mousedown(GUI::MouseEvent& event)
 void CursorTool::on_mousedown(GUI::MouseEvent& event)
 {
 {

+ 1 - 0
DevTools/HackStudio/ProcessStateWidget.cpp

@@ -29,6 +29,7 @@
 #include <LibCore/Timer.h>
 #include <LibCore/Timer.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Label.h>
+#include <LibGfx/Font.h>
 #include <unistd.h>
 #include <unistd.h>
 
 
 ProcessStateWidget::ProcessStateWidget(GUI::Widget* parent)
 ProcessStateWidget::ProcessStateWidget(GUI::Widget* parent)

+ 1 - 0
Games/Snake/SnakeGame.cpp

@@ -28,6 +28,7 @@
 #include <LibGUI/FontDatabase.h>
 #include <LibGUI/FontDatabase.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGfx/Bitmap.h>
 #include <LibGfx/Bitmap.h>
+#include <LibGfx/Font.h>
 #include <stdlib.h>
 #include <stdlib.h>
 #include <time.h>
 #include <time.h>
 
 

+ 1 - 0
Libraries/LibGUI/AboutDialog.cpp

@@ -29,6 +29,7 @@
 #include <LibGUI/Button.h>
 #include <LibGUI/Button.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Widget.h>
+#include <LibGfx/Font.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 1 - 1
Libraries/LibGUI/AbstractTableView.h

@@ -37,7 +37,7 @@ class TableCellPaintingDelegate {
 public:
 public:
     virtual ~TableCellPaintingDelegate() {}
     virtual ~TableCellPaintingDelegate() {}
 
 
-    virtual void paint(Painter&, const Gfx::Rect&, const Palette&, const Model&, const ModelIndex&) = 0;
+    virtual void paint(Painter&, const Gfx::Rect&, const Gfx::Palette&, const Model&, const ModelIndex&) = 0;
 };
 };
 
 
 class AbstractTableView : public AbstractView {
 class AbstractTableView : public AbstractView {

+ 2 - 1
Libraries/LibGUI/Application.cpp

@@ -24,7 +24,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  */
 
 
-#include <LibGfx/Palette.h>
 #include <LibGUI/Action.h>
 #include <LibGUI/Action.h>
 #include <LibGUI/Application.h>
 #include <LibGUI/Application.h>
 #include <LibGUI/Desktop.h>
 #include <LibGUI/Desktop.h>
@@ -33,6 +32,8 @@
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/WindowServerConnection.h>
 #include <LibGUI/WindowServerConnection.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/Palette.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 3 - 1
Libraries/LibGUI/Button.cpp

@@ -26,11 +26,13 @@
 
 
 #include <AK/StringBuilder.h>
 #include <AK/StringBuilder.h>
 #include <Kernel/KeyCode.h>
 #include <Kernel/KeyCode.h>
-#include <LibGfx/StylePainter.h>
 #include <LibGUI/Action.h>
 #include <LibGUI/Action.h>
 #include <LibGUI/ActionGroup.h>
 #include <LibGUI/ActionGroup.h>
 #include <LibGUI/Button.h>
 #include <LibGUI/Button.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/Palette.h>
+#include <LibGfx/StylePainter.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 3 - 2
Libraries/LibGUI/CheckBox.cpp

@@ -25,11 +25,12 @@
  */
  */
 
 
 #include <Kernel/KeyCode.h>
 #include <Kernel/KeyCode.h>
+#include <LibGUI/CheckBox.h>
+#include <LibGUI/Painter.h>
 #include <LibGfx/CharacterBitmap.h>
 #include <LibGfx/CharacterBitmap.h>
+#include <LibGfx/Font.h>
 #include <LibGfx/Palette.h>
 #include <LibGfx/Palette.h>
 #include <LibGfx/StylePainter.h>
 #include <LibGfx/StylePainter.h>
-#include <LibGUI/CheckBox.h>
-#include <LibGUI/Painter.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 1 - 0
Libraries/LibGUI/ColorPicker.cpp

@@ -30,6 +30,7 @@
 #include <LibGUI/Frame.h>
 #include <LibGUI/Frame.h>
 #include <LibGUI/SpinBox.h>
 #include <LibGUI/SpinBox.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Widget.h>
+#include <LibGfx/Palette.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 2 - 1
Libraries/LibGUI/ColumnsView.cpp

@@ -24,10 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  */
 
 
-#include <LibGfx/CharacterBitmap.h>
 #include <LibGUI/ColumnsView.h>
 #include <LibGUI/ColumnsView.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/ScrollBar.h>
 #include <LibGUI/ScrollBar.h>
+#include <LibGfx/CharacterBitmap.h>
+#include <LibGfx/Palette.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 2 - 1
Libraries/LibGUI/Frame.cpp

@@ -24,9 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  */
 
 
-#include <LibGfx/StylePainter.h>
 #include <LibGUI/Frame.h>
 #include <LibGUI/Frame.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Palette.h>
+#include <LibGfx/StylePainter.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 3 - 2
Libraries/LibGUI/GroupBox.cpp

@@ -24,10 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  */
 
 
-#include <LibGfx/Palette.h>
-#include <LibGfx/StylePainter.h>
 #include <LibGUI/GroupBox.h>
 #include <LibGUI/GroupBox.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/Palette.h>
+#include <LibGfx/StylePainter.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 3 - 2
Libraries/LibGUI/Label.cpp

@@ -24,10 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  */
 
 
-#include <LibGfx/Bitmap.h>
-#include <LibGfx/Palette.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
+#include <LibGfx/Bitmap.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/Palette.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 1 - 0
Libraries/LibGUI/MessageBox.cpp

@@ -28,6 +28,7 @@
 #include <LibGUI/Button.h>
 #include <LibGUI/Button.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/MessageBox.h>
 #include <LibGUI/MessageBox.h>
+#include <LibGfx/Font.h>
 #include <stdio.h>
 #include <stdio.h>
 
 
 namespace GUI {
 namespace GUI {

+ 1 - 0
Libraries/LibGUI/ProgressBar.cpp

@@ -28,6 +28,7 @@
 #include <AK/StringBuilder.h>
 #include <AK/StringBuilder.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/ProgressBar.h>
 #include <LibGUI/ProgressBar.h>
+#include <LibGfx/Palette.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 4 - 2
Libraries/LibGUI/RadioButton.cpp

@@ -24,10 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  */
 
 
-#include <LibGfx/Bitmap.h>
-#include <LibGfx/StylePainter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/RadioButton.h>
 #include <LibGUI/RadioButton.h>
+#include <LibGfx/Bitmap.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/Palette.h>
+#include <LibGfx/StylePainter.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 1 - 0
Libraries/LibGUI/Slider.cpp

@@ -28,6 +28,7 @@
 #include <AK/StdLibExtras.h>
 #include <AK/StdLibExtras.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Slider.h>
 #include <LibGUI/Slider.h>
+#include <LibGfx/Palette.h>
 #include <LibGfx/StylePainter.h>
 #include <LibGfx/StylePainter.h>
 
 
 namespace GUI {
 namespace GUI {

+ 2 - 1
Libraries/LibGUI/StatusBar.cpp

@@ -24,12 +24,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  */
 
 
-#include <LibGfx/StylePainter.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/ResizeCorner.h>
 #include <LibGUI/ResizeCorner.h>
 #include <LibGUI/StatusBar.h>
 #include <LibGUI/StatusBar.h>
+#include <LibGfx/Palette.h>
+#include <LibGfx/StylePainter.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 3 - 2
Libraries/LibGUI/TabWidget.cpp

@@ -24,11 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  */
 
 
-#include <LibGfx/Palette.h>
-#include <LibGfx/StylePainter.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/TabWidget.h>
 #include <LibGUI/TabWidget.h>
+#include <LibGfx/Font.h>
+#include <LibGfx/Palette.h>
+#include <LibGfx/StylePainter.h>
 
 
 namespace GUI {
 namespace GUI {
 
 

+ 17 - 0
Libraries/LibGUI/Widget.cpp

@@ -94,6 +94,8 @@ const WidgetClassRegistration* WidgetClassRegistration::find(const String& class
 
 
 Widget::Widget(Widget* parent)
 Widget::Widget(Widget* parent)
     : Core::Object(parent, true)
     : Core::Object(parent, true)
+    , m_background_role(Gfx::ColorRole::Window)
+    , m_foreground_role(Gfx::ColorRole::WindowText)
     , m_font(Gfx::Font::default_font())
     , m_font(Gfx::Font::default_font())
     , m_palette(Application::the().palette().impl())
     , m_palette(Application::the().palette().impl())
 {
 {
@@ -731,4 +733,19 @@ void Widget::set_palette(const Palette& palette)
     m_palette = palette.impl();
     m_palette = palette.impl();
 }
 }
 
 
+void Widget::set_background_role(ColorRole role)
+{
+    m_background_role = role;
+}
+
+void Widget::set_foreground_role(ColorRole role)
+{
+    m_foreground_role = role;
+}
+
+Gfx::Palette Widget::palette() const
+{
+    return Gfx::Palette(*m_palette);
+}
+
 }
 }

+ 11 - 13
Libraries/LibGUI/Widget.h

@@ -31,14 +31,12 @@
 #include <AK/String.h>
 #include <AK/String.h>
 #include <LibCore/ElapsedTimer.h>
 #include <LibCore/ElapsedTimer.h>
 #include <LibCore/Object.h>
 #include <LibCore/Object.h>
+#include <LibGUI/Event.h>
+#include <LibGUI/Shortcut.h>
 #include <LibGfx/Color.h>
 #include <LibGfx/Color.h>
-#include <LibGfx/Font.h>
+#include <LibGfx/Forward.h>
 #include <LibGfx/Orientation.h>
 #include <LibGfx/Orientation.h>
-#include <LibGfx/Palette.h>
 #include <LibGfx/Rect.h>
 #include <LibGfx/Rect.h>
-#include <LibGfx/SystemTheme.h>
-#include <LibGUI/Event.h>
-#include <LibGUI/Shortcut.h>
 
 
 #define REGISTER_GWIDGET(class_name)                          \
 #define REGISTER_GWIDGET(class_name)                          \
     extern WidgetClassRegistration registration_##class_name; \
     extern WidgetClassRegistration registration_##class_name; \
@@ -191,11 +189,11 @@ public:
     void move_by(int x, int y) { move_by({ x, y }); }
     void move_by(int x, int y) { move_by({ x, y }); }
     void move_by(const Gfx::Point& delta) { set_relative_rect({ relative_position().translated(delta), size() }); }
     void move_by(const Gfx::Point& delta) { set_relative_rect({ relative_position().translated(delta), size() }); }
 
 
-    ColorRole background_role() const { return m_background_role; }
-    void set_background_role(ColorRole role) { m_background_role = role; }
+    Gfx::ColorRole background_role() const { return m_background_role; }
+    void set_background_role(Gfx::ColorRole);
 
 
-    ColorRole foreground_role() const { return m_foreground_role; }
-    void set_foreground_role(ColorRole role) { m_foreground_role = role; }
+    Gfx::ColorRole foreground_role() const { return m_foreground_role; }
+    void set_foreground_role(Gfx::ColorRole);
 
 
     Color background_color() const { return m_background_color; }
     Color background_color() const { return m_background_color; }
     Color foreground_color() const { return m_foreground_color; }
     Color foreground_color() const { return m_foreground_color; }
@@ -275,8 +273,8 @@ public:
 
 
     void do_layout();
     void do_layout();
 
 
-    Palette palette() const { return Palette(*m_palette); }
-    void set_palette(const Palette&);
+    Gfx::Palette palette() const;
+    void set_palette(const Gfx::Palette&);
 
 
 protected:
 protected:
     explicit Widget(Widget* parent = nullptr);
     explicit Widget(Widget* parent = nullptr);
@@ -321,8 +319,8 @@ private:
     OwnPtr<Layout> m_layout;
     OwnPtr<Layout> m_layout;
 
 
     Gfx::Rect m_relative_rect;
     Gfx::Rect m_relative_rect;
-    ColorRole m_background_role { ColorRole::Window };
-    ColorRole m_foreground_role { ColorRole::WindowText };
+    Gfx::ColorRole m_background_role;
+    Gfx::ColorRole m_foreground_role;
     Color m_background_color;
     Color m_background_color;
     Color m_foreground_color;
     Color m_foreground_color;
     NonnullRefPtr<Gfx::Font> m_font;
     NonnullRefPtr<Gfx::Font> m_font;

+ 2 - 0
Libraries/LibGfx/Forward.h

@@ -41,6 +41,7 @@ class GlyphBitmap;
 class ImageDecoder;
 class ImageDecoder;
 class Painter;
 class Painter;
 class Palette;
 class Palette;
+class PaletteImpl;
 class Point;
 class Point;
 class Rect;
 class Rect;
 class Size;
 class Size;
@@ -49,6 +50,7 @@ class SystemTheme;
 class Triangle;
 class Triangle;
 
 
 enum class BitmapFormat;
 enum class BitmapFormat;
+enum class ColorRole;
 
 
 }
 }
 
 

+ 1 - 0
MenuApplets/Audio/main.cpp

@@ -30,6 +30,7 @@
 #include <LibGUI/Widget.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/Window.h>
 #include <LibGfx/Bitmap.h>
 #include <LibGfx/Bitmap.h>
+#include <LibGfx/Font.h>
 
 
 class AudioWidget final : public GUI::Widget {
 class AudioWidget final : public GUI::Widget {
     C_OBJECT(AudioWidget)
     C_OBJECT(AudioWidget)

+ 1 - 0
MenuApplets/Clock/main.cpp

@@ -29,6 +29,7 @@
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/Window.h>
+#include <LibGfx/Font.h>
 #include <LibGfx/Palette.h>
 #include <LibGfx/Palette.h>
 #include <stdio.h>
 #include <stdio.h>
 #include <time.h>
 #include <time.h>

+ 1 - 0
MenuApplets/UserName/main.cpp

@@ -28,6 +28,7 @@
 #include <LibGUI/Painter.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Widget.h>
 #include <LibGUI/Window.h>
 #include <LibGUI/Window.h>
+#include <LibGfx/Font.h>
 #include <LibGfx/Palette.h>
 #include <LibGfx/Palette.h>
 #include <stdio.h>
 #include <stdio.h>