diff --git a/Applications/Browser/InspectorWidget.h b/Applications/Browser/InspectorWidget.h index 1e8fe54ab3c..7296e36f01d 100644 --- a/Applications/Browser/InspectorWidget.h +++ b/Applications/Browser/InspectorWidget.h @@ -28,11 +28,6 @@ class Document; -namespace GUI { -class TableView; -class TreeView; -} - class InspectorWidget final : public GUI::Widget { C_OBJECT(InspectorWidget) public: diff --git a/Applications/Calculator/CalculatorWidget.h b/Applications/Calculator/CalculatorWidget.h index a1cc62584bc..099448632b1 100644 --- a/Applications/Calculator/CalculatorWidget.h +++ b/Applications/Calculator/CalculatorWidget.h @@ -31,12 +31,6 @@ #include #include -namespace GUI { -class Button; -class Label; -class TextBox; -} - class CalculatorWidget final : public GUI::Widget { C_OBJECT(CalculatorWidget) public: diff --git a/Applications/HexEditor/HexEditorWidget.h b/Applications/HexEditor/HexEditorWidget.h index e46353f0a3e..8661a92ccc9 100644 --- a/Applications/HexEditor/HexEditorWidget.h +++ b/Applications/HexEditor/HexEditorWidget.h @@ -34,10 +34,6 @@ #include #include -namespace GUI { -class StatusBar; -} - class HexEditor; class HexEditorWidget final : public GUI::Widget { diff --git a/Applications/IRCClient/IRCAppWindow.h b/Applications/IRCClient/IRCAppWindow.h index 7b85e8d8380..784fe9cbd11 100644 --- a/Applications/IRCClient/IRCAppWindow.h +++ b/Applications/IRCClient/IRCAppWindow.h @@ -31,11 +31,6 @@ #include #include -namespace GUI { -class StackWidget; -class TableView; -} - class IRCAppWindow : public GUI::Window { public: IRCAppWindow(); diff --git a/Applications/IRCClient/IRCWindow.h b/Applications/IRCClient/IRCWindow.h index c9e7e387649..31e4c7f3cb1 100644 --- a/Applications/IRCClient/IRCWindow.h +++ b/Applications/IRCClient/IRCWindow.h @@ -28,10 +28,6 @@ #include -namespace GUI { -class TextEditor; -} - class IRCChannel; class IRCClient; class IRCQuery; diff --git a/Applications/PaintBrush/EllipseTool.h b/Applications/PaintBrush/EllipseTool.h index 96dc3e15c0c..7443d6578ac 100644 --- a/Applications/PaintBrush/EllipseTool.h +++ b/Applications/PaintBrush/EllipseTool.h @@ -30,11 +30,6 @@ #include #include -namespace GUI { -class Menu; -class Painter; -} - class EllipseTool final : public Tool { public: EllipseTool(); diff --git a/Applications/PaintBrush/EraseTool.h b/Applications/PaintBrush/EraseTool.h index fafa506ffa4..1442aac7220 100644 --- a/Applications/PaintBrush/EraseTool.h +++ b/Applications/PaintBrush/EraseTool.h @@ -30,10 +30,6 @@ #include #include -namespace GUI { -class Menu; -} - class EraseTool final : public Tool { public: EraseTool(); diff --git a/Applications/PaintBrush/LineTool.h b/Applications/PaintBrush/LineTool.h index 132982314c4..06108aa18fe 100644 --- a/Applications/PaintBrush/LineTool.h +++ b/Applications/PaintBrush/LineTool.h @@ -30,10 +30,6 @@ #include #include -namespace GUI { -class Menu; -} - class LineTool final : public Tool { public: LineTool(); diff --git a/Applications/PaintBrush/PenTool.h b/Applications/PaintBrush/PenTool.h index a91ad08e7d5..6cf82d43562 100644 --- a/Applications/PaintBrush/PenTool.h +++ b/Applications/PaintBrush/PenTool.h @@ -30,10 +30,6 @@ #include #include -namespace GUI { -class Menu; -} - class PenTool final : public Tool { public: PenTool(); diff --git a/Applications/PaintBrush/RectangleTool.h b/Applications/PaintBrush/RectangleTool.h index 1782c592b00..c63c59c6fc0 100644 --- a/Applications/PaintBrush/RectangleTool.h +++ b/Applications/PaintBrush/RectangleTool.h @@ -29,11 +29,6 @@ #include "Tool.h" #include -namespace GUI { -class Menu; -class Painter; -} - class RectangleTool final : public Tool { public: RectangleTool(); diff --git a/Applications/PaintBrush/SprayTool.h b/Applications/PaintBrush/SprayTool.h index c9abee0fc8f..18d78f02504 100644 --- a/Applications/PaintBrush/SprayTool.h +++ b/Applications/PaintBrush/SprayTool.h @@ -31,10 +31,6 @@ #include #include -namespace GUI { -class Menu; -} - class SprayTool final : public Tool { public: SprayTool(); diff --git a/Applications/PaintBrush/main.cpp b/Applications/PaintBrush/main.cpp index cc02c916dd0..a4f6680df1b 100644 --- a/Applications/PaintBrush/main.cpp +++ b/Applications/PaintBrush/main.cpp @@ -36,6 +36,7 @@ #include #include #include +#include #include int main(int argc, char** argv) diff --git a/Applications/Piano/KnobsWidget.h b/Applications/Piano/KnobsWidget.h index 8ef3ed7d028..853039fed5e 100644 --- a/Applications/Piano/KnobsWidget.h +++ b/Applications/Piano/KnobsWidget.h @@ -29,11 +29,6 @@ #include -namespace GUI { -class Label; -class Slider; -} - class AudioEngine; class MainWidget; diff --git a/Applications/Piano/MainWidget.h b/Applications/Piano/MainWidget.h index ebd761ea928..6d1e80c4c1b 100644 --- a/Applications/Piano/MainWidget.h +++ b/Applications/Piano/MainWidget.h @@ -37,10 +37,6 @@ class SamplerWidget; class KeysWidget; class KnobsWidget; -namespace GUI { -class TabWidget; -} - class MainWidget final : public GUI::Widget { C_OBJECT(MainWidget) public: diff --git a/Applications/Piano/SamplerWidget.h b/Applications/Piano/SamplerWidget.h index 5fb8e19de6d..1db504dbd27 100644 --- a/Applications/Piano/SamplerWidget.h +++ b/Applications/Piano/SamplerWidget.h @@ -28,11 +28,6 @@ #include -namespace GUI { -class Label; -class Button; -} - class AudioEngine; class WaveEditor final : public GUI::Frame { diff --git a/Applications/Piano/main.cpp b/Applications/Piano/main.cpp index 22d12ec6acd..24e58a25224 100644 --- a/Applications/Piano/main.cpp +++ b/Applications/Piano/main.cpp @@ -29,6 +29,7 @@ #include "MainWidget.h" #include #include +#include #include #include #include @@ -38,6 +39,7 @@ #include #include #include +#include #include int main(int argc, char** argv) diff --git a/Applications/SystemMonitor/MemoryStatsWidget.h b/Applications/SystemMonitor/MemoryStatsWidget.h index 8673001e17c..5ad2c984c16 100644 --- a/Applications/SystemMonitor/MemoryStatsWidget.h +++ b/Applications/SystemMonitor/MemoryStatsWidget.h @@ -28,10 +28,6 @@ #include -namespace GUI { -class Label; -} - class GraphWidget; class MemoryStatsWidget final : public GUI::Widget { diff --git a/Applications/SystemMonitor/NetworkStatisticsWidget.h b/Applications/SystemMonitor/NetworkStatisticsWidget.h index 5ebd062e33f..f7bf1df99ad 100644 --- a/Applications/SystemMonitor/NetworkStatisticsWidget.h +++ b/Applications/SystemMonitor/NetworkStatisticsWidget.h @@ -29,10 +29,6 @@ #include #include -namespace GUI { -class TableView; -} - class NetworkStatisticsWidget final : public GUI::LazyWidget { C_OBJECT(NetworkStatisticsWidget) public: diff --git a/Applications/SystemMonitor/ProcessFileDescriptorMapWidget.h b/Applications/SystemMonitor/ProcessFileDescriptorMapWidget.h index 6f9b803ac85..2937fa4b0a8 100644 --- a/Applications/SystemMonitor/ProcessFileDescriptorMapWidget.h +++ b/Applications/SystemMonitor/ProcessFileDescriptorMapWidget.h @@ -28,10 +28,6 @@ #include -namespace GUI { -class TableView; -} - class ProcessFileDescriptorMapWidget final : public GUI::Widget { C_OBJECT(ProcessFileDescriptorMapWidget); public: diff --git a/Applications/SystemMonitor/ProcessMemoryMapWidget.h b/Applications/SystemMonitor/ProcessMemoryMapWidget.h index 31741a9b557..d8094f69f7b 100644 --- a/Applications/SystemMonitor/ProcessMemoryMapWidget.h +++ b/Applications/SystemMonitor/ProcessMemoryMapWidget.h @@ -28,11 +28,6 @@ #include -namespace GUI { -class JsonArrayModel; -class TableView; -} - class ProcessMemoryMapWidget final : public GUI::Widget { C_OBJECT(ProcessMemoryMapWidget); diff --git a/Applications/SystemMonitor/ProcessUnveiledPathsWidget.h b/Applications/SystemMonitor/ProcessUnveiledPathsWidget.h index 4d3af4ac5c6..bbc75361944 100644 --- a/Applications/SystemMonitor/ProcessUnveiledPathsWidget.h +++ b/Applications/SystemMonitor/ProcessUnveiledPathsWidget.h @@ -28,10 +28,6 @@ #include -namespace GUI { -class TableView; -} - class ProcessUnveiledPathsWidget final : public GUI::Widget { C_OBJECT(ProcessUnveiledPathsWidget); public: diff --git a/Applications/TextEditor/TextEditorWidget.cpp b/Applications/TextEditor/TextEditorWidget.cpp index b33717569da..7f400b9d82f 100644 --- a/Applications/TextEditor/TextEditorWidget.cpp +++ b/Applications/TextEditor/TextEditorWidget.cpp @@ -44,6 +44,7 @@ #include #include #include +#include TextEditorWidget::TextEditorWidget() { @@ -466,7 +467,7 @@ void TextEditorWidget::drop_event(GUI::DropEvent& event) if (event.mime_data().has_urls()) { auto urls = event.mime_data().urls(); - if (urls.is_empty() ) + if (urls.is_empty()) return; if (urls.size() > 1) { GUI::MessageBox::show("TextEditor can only open one file at a time!", "One at a time please!", GUI::MessageBox::Type::Error, GUI::MessageBox::InputType::OK, window()); diff --git a/Applications/TextEditor/TextEditorWidget.h b/Applications/TextEditor/TextEditorWidget.h index aea7c4fddf1..163065ad323 100644 --- a/Applications/TextEditor/TextEditorWidget.h +++ b/Applications/TextEditor/TextEditorWidget.h @@ -33,13 +33,6 @@ #include #include -namespace GUI { -class Button; -class StatusBar; -class TextBox; -class TextEditor; -} - class TextEditorWidget final : public GUI::Widget { C_OBJECT(TextEditorWidget) public: diff --git a/Applications/Welcome/TextWidget.cpp b/Applications/Welcome/TextWidget.cpp index c035ae2de60..42fc4897200 100644 --- a/Applications/Welcome/TextWidget.cpp +++ b/Applications/Welcome/TextWidget.cpp @@ -25,6 +25,7 @@ */ #include "TextWidget.h" +#include #include #include #include diff --git a/DevTools/HackStudio/CursorTool.h b/DevTools/HackStudio/CursorTool.h index 2980075a39b..36e6a97a2cf 100644 --- a/DevTools/HackStudio/CursorTool.h +++ b/DevTools/HackStudio/CursorTool.h @@ -28,12 +28,9 @@ #include "Tool.h" #include +#include #include -namespace GUI { -class Widget; -} - class CursorTool final : public Tool { public: explicit CursorTool(FormEditorWidget& editor) diff --git a/DevTools/HackStudio/EditorWrapper.h b/DevTools/HackStudio/EditorWrapper.h index 886ac117076..c7ea938f306 100644 --- a/DevTools/HackStudio/EditorWrapper.h +++ b/DevTools/HackStudio/EditorWrapper.h @@ -28,10 +28,6 @@ #include -namespace GUI { -class Label; -} - class Editor; class EditorWrapper : public GUI::Widget { diff --git a/DevTools/HackStudio/FindInFilesWidget.h b/DevTools/HackStudio/FindInFilesWidget.h index 5a2127d129d..bcf0a73c78e 100644 --- a/DevTools/HackStudio/FindInFilesWidget.h +++ b/DevTools/HackStudio/FindInFilesWidget.h @@ -28,12 +28,6 @@ #include -namespace GUI { -class Button; -class TableView; -class TextBox; -} - class FindInFilesWidget final : public GUI::Widget { C_OBJECT(FindInFilesWidget) public: diff --git a/DevTools/HackStudio/FormEditorWidget.h b/DevTools/HackStudio/FormEditorWidget.h index b74890eef73..69200b66cfe 100644 --- a/DevTools/HackStudio/FormEditorWidget.h +++ b/DevTools/HackStudio/FormEditorWidget.h @@ -26,6 +26,7 @@ #pragma once +#include #include class FormWidget; diff --git a/DevTools/HackStudio/Locator.h b/DevTools/HackStudio/Locator.h index bb1773c9b39..4b0307babb2 100644 --- a/DevTools/HackStudio/Locator.h +++ b/DevTools/HackStudio/Locator.h @@ -28,11 +28,6 @@ #include -namespace GUI { -class ModelIndex; -class TableView; -} - class LocatorTextBox; class Locator final : public GUI::Widget { diff --git a/DevTools/HackStudio/ProcessStateWidget.h b/DevTools/HackStudio/ProcessStateWidget.h index 97888371bf2..22f10c573ae 100644 --- a/DevTools/HackStudio/ProcessStateWidget.h +++ b/DevTools/HackStudio/ProcessStateWidget.h @@ -28,10 +28,6 @@ #include -namespace GUI { -class Label; -} - class ProcessStateWidget final : public GUI::Widget { C_OBJECT(ProcessStateWidget) public: diff --git a/DevTools/HackStudio/ProjectFile.cpp b/DevTools/HackStudio/ProjectFile.cpp index 646c4285513..0e9493f40f5 100644 --- a/DevTools/HackStudio/ProjectFile.cpp +++ b/DevTools/HackStudio/ProjectFile.cpp @@ -28,6 +28,11 @@ #include #include +ProjectFile::ProjectFile(const String& name) + : m_name(name) +{ +} + const GUI::TextDocument& ProjectFile::document() const { if (!m_document) { diff --git a/DevTools/HackStudio/ProjectFile.h b/DevTools/HackStudio/ProjectFile.h index 486895107b3..1019d83368d 100644 --- a/DevTools/HackStudio/ProjectFile.h +++ b/DevTools/HackStudio/ProjectFile.h @@ -44,10 +44,7 @@ public: const GUI::TextDocument& document() const; private: - explicit ProjectFile(const String& name) - : m_name(name) - { - } + explicit ProjectFile(const String& name); String m_name; mutable RefPtr m_document; diff --git a/DevTools/HackStudio/Tool.h b/DevTools/HackStudio/Tool.h index e181f43458a..7843ef08b2e 100644 --- a/DevTools/HackStudio/Tool.h +++ b/DevTools/HackStudio/Tool.h @@ -27,16 +27,10 @@ #pragma once #include +#include class FormEditorWidget; -namespace GUI { -class KeyEvent; -class MouseEvent; -class PaintEvent; -class Painter; -} - class Tool { AK_MAKE_NONCOPYABLE(Tool) AK_MAKE_NONMOVABLE(Tool) diff --git a/DevTools/ProfileViewer/Profile.h b/DevTools/ProfileViewer/Profile.h index 3988b720e36..b195b771b78 100644 --- a/DevTools/ProfileViewer/Profile.h +++ b/DevTools/ProfileViewer/Profile.h @@ -31,10 +31,7 @@ #include #include #include - -namespace GUI { -class Model; -} +#include class ProfileModel; diff --git a/DevTools/ProfileViewer/main.cpp b/DevTools/ProfileViewer/main.cpp index 07c2d8a8692..6e88a0c04cc 100644 --- a/DevTools/ProfileViewer/main.cpp +++ b/DevTools/ProfileViewer/main.cpp @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include diff --git a/DevTools/VisualBuilder/VBPropertiesWindow.h b/DevTools/VisualBuilder/VBPropertiesWindow.h index c060cbbd8fd..9900bb1dcd2 100644 --- a/DevTools/VisualBuilder/VBPropertiesWindow.h +++ b/DevTools/VisualBuilder/VBPropertiesWindow.h @@ -28,11 +28,6 @@ #include -namespace GUI { -class TableView; -class TextBox; -} - class VBPropertiesWindow final : public GUI::Window { C_OBJECT(VBPropertiesWindow) public: diff --git a/DevTools/VisualBuilder/VBProperty.h b/DevTools/VisualBuilder/VBProperty.h index 089908328ee..1d6e44f4e01 100644 --- a/DevTools/VisualBuilder/VBProperty.h +++ b/DevTools/VisualBuilder/VBProperty.h @@ -28,12 +28,9 @@ #include #include +#include #include -namespace GUI { -class Widget; -} - class VBWidget; class VBProperty { diff --git a/DevTools/VisualBuilder/VBWidget.h b/DevTools/VisualBuilder/VBWidget.h index 08c5be25979..7039b1a3c17 100644 --- a/DevTools/VisualBuilder/VBWidget.h +++ b/DevTools/VisualBuilder/VBWidget.h @@ -36,11 +36,6 @@ #include #include -namespace GUI { -class Painter; -class Variant; -} - class VBForm; class VBProperty; class VBWidgetPropertyModel; diff --git a/Games/Minesweeper/Field.h b/Games/Minesweeper/Field.h index 1dcebcb72dd..d31367c92c9 100644 --- a/Games/Minesweeper/Field.h +++ b/Games/Minesweeper/Field.h @@ -30,11 +30,6 @@ #include #include -namespace GUI { -class Button; -class Label; -} - class Field; class SquareButton; class SquareLabel; diff --git a/Libraries/LibGUI/AbstractButton.cpp b/Libraries/LibGUI/AbstractButton.cpp index fe22935c9b4..2a7d386e9cc 100644 --- a/Libraries/LibGUI/AbstractButton.cpp +++ b/Libraries/LibGUI/AbstractButton.cpp @@ -24,9 +24,10 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include +#include #include #include +#include namespace GUI { diff --git a/Libraries/LibGUI/AbstractButton.h b/Libraries/LibGUI/AbstractButton.h index 515c8e0bf10..b6bdf0ad0d8 100644 --- a/Libraries/LibGUI/AbstractButton.h +++ b/Libraries/LibGUI/AbstractButton.h @@ -26,14 +26,10 @@ #pragma once -#include -#include #include namespace GUI { -class Painter; - class AbstractButton : public Widget { C_OBJECT_ABSTRACT(GAbstractButton) public: diff --git a/Libraries/LibGUI/AbstractTableView.cpp b/Libraries/LibGUI/AbstractTableView.cpp index cb180241ce1..9bf3395708e 100644 --- a/Libraries/LibGUI/AbstractTableView.cpp +++ b/Libraries/LibGUI/AbstractTableView.cpp @@ -25,9 +25,11 @@ */ #include +#include #include #include #include +#include #include #include #include diff --git a/Libraries/LibGUI/AbstractTableView.h b/Libraries/LibGUI/AbstractTableView.h index 6dea47aeacd..e6320abf8d5 100644 --- a/Libraries/LibGUI/AbstractTableView.h +++ b/Libraries/LibGUI/AbstractTableView.h @@ -30,9 +30,6 @@ namespace GUI { -class Painter; - -// FIXME: Rename this to something without "table cell" in the name. class TableCellPaintingDelegate { public: virtual ~TableCellPaintingDelegate() {} diff --git a/Libraries/LibGUI/AbstractView.cpp b/Libraries/LibGUI/AbstractView.cpp index ba770efaa3e..c8411142b04 100644 --- a/Libraries/LibGUI/AbstractView.cpp +++ b/Libraries/LibGUI/AbstractView.cpp @@ -25,6 +25,7 @@ */ #include +#include #include #include #include diff --git a/Libraries/LibGUI/AbstractView.h b/Libraries/LibGUI/AbstractView.h index 8e9b52d71e4..3c4a87e5860 100644 --- a/Libraries/LibGUI/AbstractView.h +++ b/Libraries/LibGUI/AbstractView.h @@ -27,14 +27,11 @@ #pragma once #include -#include #include #include namespace GUI { -class ModelEditingDelegate; - class AbstractView : public ScrollableWidget { C_OBJECT_ABSTRACT(AbstractView) friend class Model; diff --git a/Libraries/LibGUI/Action.h b/Libraries/LibGUI/Action.h index 2d3f899ece8..5064d74d00c 100644 --- a/Libraries/LibGUI/Action.h +++ b/Libraries/LibGUI/Action.h @@ -35,16 +35,12 @@ #include #include #include +#include #include #include namespace GUI { -class Action; -class ActionGroup; -class Button; -class MenuItem; - namespace CommonActions { NonnullRefPtr make_open_action(Function, Core::Object* parent = nullptr); NonnullRefPtr make_undo_action(Function, Core::Object* parent = nullptr); diff --git a/Libraries/LibGUI/ActionGroup.h b/Libraries/LibGUI/ActionGroup.h index 9816e0db30e..0d538a4ea1b 100644 --- a/Libraries/LibGUI/ActionGroup.h +++ b/Libraries/LibGUI/ActionGroup.h @@ -28,11 +28,10 @@ #include #include +#include namespace GUI { -class Action; - class ActionGroup : public Weakable { public: ActionGroup() {} diff --git a/Libraries/LibGUI/Application.cpp b/Libraries/LibGUI/Application.cpp index 3f1ef5c5cb4..3e75168eb81 100644 --- a/Libraries/LibGUI/Application.cpp +++ b/Libraries/LibGUI/Application.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include #include #include diff --git a/Libraries/LibGUI/Application.h b/Libraries/LibGUI/Application.h index f19a3dc551d..400ed6fb5ee 100644 --- a/Libraries/LibGUI/Application.h +++ b/Libraries/LibGUI/Application.h @@ -28,15 +28,13 @@ #include #include +#include #include +#include #include #include namespace GUI { -class Action; -class KeyEvent; -class MenuBar; -class Window; class Application { public: diff --git a/Libraries/LibGUI/BoxLayout.cpp b/Libraries/LibGUI/BoxLayout.cpp index d2947b9e5ee..86a8ee98fbb 100644 --- a/Libraries/LibGUI/BoxLayout.cpp +++ b/Libraries/LibGUI/BoxLayout.cpp @@ -25,6 +25,8 @@ */ #include +#include +#include #include //#define GBOXLAYOUT_DEBUG diff --git a/Libraries/LibGUI/BoxLayout.h b/Libraries/LibGUI/BoxLayout.h index 5f517adb55f..5f0c85ee651 100644 --- a/Libraries/LibGUI/BoxLayout.h +++ b/Libraries/LibGUI/BoxLayout.h @@ -26,28 +26,29 @@ #pragma once +#include #include -#include +#include namespace GUI { class BoxLayout : public Layout { public: - explicit BoxLayout(Orientation); + explicit BoxLayout(Gfx::Orientation); virtual ~BoxLayout() override {} - Orientation orientation() const { return m_orientation; } + Gfx::Orientation orientation() const { return m_orientation; } virtual void run(Widget&) override; private: - Orientation m_orientation; + Gfx::Orientation m_orientation; }; class VerticalBoxLayout final : public BoxLayout { public: explicit VerticalBoxLayout() - : BoxLayout(Orientation::Vertical) + : BoxLayout(Gfx::Orientation::Vertical) { } virtual ~VerticalBoxLayout() override {} @@ -56,7 +57,7 @@ public: class HorizontalBoxLayout final : public BoxLayout { public: explicit HorizontalBoxLayout() - : BoxLayout(Orientation::Horizontal) + : BoxLayout(Gfx::Orientation::Horizontal) { } virtual ~HorizontalBoxLayout() override {} diff --git a/Libraries/LibGUI/Button.h b/Libraries/LibGUI/Button.h index d6a0eb415ad..d11cecd9c68 100644 --- a/Libraries/LibGUI/Button.h +++ b/Libraries/LibGUI/Button.h @@ -35,8 +35,6 @@ namespace GUI { -class Action; - class Button : public AbstractButton { C_OBJECT(Button) public: diff --git a/Libraries/LibGUI/CheckBox.h b/Libraries/LibGUI/CheckBox.h index 0c395097f1e..35ff654445b 100644 --- a/Libraries/LibGUI/CheckBox.h +++ b/Libraries/LibGUI/CheckBox.h @@ -26,8 +26,6 @@ #pragma once -#include -#include #include namespace GUI { diff --git a/Libraries/LibGUI/Clipboard.cpp b/Libraries/LibGUI/Clipboard.cpp index fb931557954..4266fa022c4 100644 --- a/Libraries/LibGUI/Clipboard.cpp +++ b/Libraries/LibGUI/Clipboard.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include #include #include diff --git a/Libraries/LibGUI/Clipboard.h b/Libraries/LibGUI/Clipboard.h index 832ef0e3344..5504d91d881 100644 --- a/Libraries/LibGUI/Clipboard.h +++ b/Libraries/LibGUI/Clipboard.h @@ -26,14 +26,12 @@ #pragma once -#include #include #include +#include namespace GUI { -class WindowServerConnection; - class Clipboard { public: static Clipboard& the(); diff --git a/Libraries/LibGUI/ColorPicker.h b/Libraries/LibGUI/ColorPicker.h index d45350db304..d4d3548f1e9 100644 --- a/Libraries/LibGUI/ColorPicker.h +++ b/Libraries/LibGUI/ColorPicker.h @@ -30,8 +30,6 @@ namespace GUI { -class Frame; - class ColorPicker final : public Dialog { C_OBJECT(ColorPicker) public: diff --git a/Libraries/LibGUI/ColumnsView.cpp b/Libraries/LibGUI/ColumnsView.cpp index 7f95469449f..62a86e422a8 100644 --- a/Libraries/LibGUI/ColumnsView.cpp +++ b/Libraries/LibGUI/ColumnsView.cpp @@ -25,6 +25,7 @@ */ #include +#include #include #include #include diff --git a/Libraries/LibGUI/ComboBox.cpp b/Libraries/LibGUI/ComboBox.cpp index db8161d6499..d791774f70a 100644 --- a/Libraries/LibGUI/ComboBox.cpp +++ b/Libraries/LibGUI/ComboBox.cpp @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include diff --git a/Libraries/LibGUI/ComboBox.h b/Libraries/LibGUI/ComboBox.h index d5f3ae45f16..9aff51066de 100644 --- a/Libraries/LibGUI/ComboBox.h +++ b/Libraries/LibGUI/ComboBox.h @@ -31,9 +31,6 @@ namespace GUI { -class Button; -class TextEditor; - class ComboBox : public Widget { C_OBJECT(ComboBox) public: diff --git a/Libraries/LibGUI/Desktop.cpp b/Libraries/LibGUI/Desktop.cpp index 65f24798398..88f00cbb201 100644 --- a/Libraries/LibGUI/Desktop.cpp +++ b/Libraries/LibGUI/Desktop.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include #include #include diff --git a/Libraries/LibGUI/Desktop.h b/Libraries/LibGUI/Desktop.h index 4105609e820..fd2dd586647 100644 --- a/Libraries/LibGUI/Desktop.h +++ b/Libraries/LibGUI/Desktop.h @@ -26,15 +26,13 @@ #pragma once -#include #include #include +#include #include namespace GUI { -class WindowServerConnection; - class Desktop { public: static Desktop& the(); diff --git a/Libraries/LibGUI/Dialog.cpp b/Libraries/LibGUI/Dialog.cpp index 68db140a187..9c4468b1122 100644 --- a/Libraries/LibGUI/Dialog.cpp +++ b/Libraries/LibGUI/Dialog.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include #include #include diff --git a/Libraries/LibGUI/Dialog.h b/Libraries/LibGUI/Dialog.h index 2f7753be0c4..c9092679328 100644 --- a/Libraries/LibGUI/Dialog.h +++ b/Libraries/LibGUI/Dialog.h @@ -26,7 +26,6 @@ #pragma once -#include #include namespace GUI { diff --git a/Libraries/LibGUI/DragOperation.cpp b/Libraries/LibGUI/DragOperation.cpp index bd856291261..d67d1abd846 100644 --- a/Libraries/LibGUI/DragOperation.cpp +++ b/Libraries/LibGUI/DragOperation.cpp @@ -26,6 +26,7 @@ #include #include +#include #include #include #include diff --git a/Libraries/LibGUI/DragOperation.h b/Libraries/LibGUI/DragOperation.h index 17f45cce6f2..ffaf366598a 100644 --- a/Libraries/LibGUI/DragOperation.h +++ b/Libraries/LibGUI/DragOperation.h @@ -27,14 +27,12 @@ #pragma once #include -#include #include +#include #include namespace GUI { -class WindowServerConnection; - class DragOperation : public Core::Object { C_OBJECT(DragOperation) public: diff --git a/Libraries/LibGUI/FilePicker.h b/Libraries/LibGUI/FilePicker.h index 910202ac54c..7e3329d5f0a 100644 --- a/Libraries/LibGUI/FilePicker.h +++ b/Libraries/LibGUI/FilePicker.h @@ -32,10 +32,6 @@ namespace GUI { -class FileSystemModel; -class Label; -class TextBox; - class FilePicker final : public Dialog { C_OBJECT(FilePicker) public: diff --git a/Libraries/LibGUI/Forward.h b/Libraries/LibGUI/Forward.h new file mode 100644 index 00000000000..97c6977c4fa --- /dev/null +++ b/Libraries/LibGUI/Forward.h @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2020, Andreas Kling + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +namespace GUI { + +class AbstractButton; +class AbstractTableView; +class AbstractView; +class Action; +class ActionGroup; +class Application; +class BoxLayout; +class Button; +class Command; +class FileSystemModel; +class Frame; +class HorizontalBoxLayout; +class ItemView; +class JsonArrayModel; +class KeyEvent; +class Label; +class Layout; +class Menu; +class MenuBar; +class MenuItem; +class Model; +class ModelEditingDelegate; +class ModelIndex; +class MouseEvent; +class PaintEvent; +class Painter; +class ResizeCorner; +class ScrollBar; +class Slider; +class Splitter; +class StackWidget; +class StatusBar; +class SyntaxHighlighter; +class TabWidget; +class TableView; +class TextBox; +class TextDocument; +class TextDocumentLine; +class TextDocumentUndoCommand; +class TextEditor; +class TreeView; +class Variant; +class VerticalBoxLayout; +class WMEvent; +class Widget; +class Window; +class WindowServerConnection; + +} diff --git a/Libraries/LibGUI/Icon.cpp b/Libraries/LibGUI/Icon.cpp index 2a145f55003..cd605521557 100644 --- a/Libraries/LibGUI/Icon.cpp +++ b/Libraries/LibGUI/Icon.cpp @@ -26,6 +26,7 @@ #include #include +#include GIcon::GIcon() : m_impl(GIconImpl::create()) diff --git a/Libraries/LibGUI/Icon.h b/Libraries/LibGUI/Icon.h index 63e772c75b7..ac188cfd0f0 100644 --- a/Libraries/LibGUI/Icon.h +++ b/Libraries/LibGUI/Icon.h @@ -27,7 +27,9 @@ #pragma once #include -#include +#include +#include +#include class GIconImpl : public RefCounted { public: diff --git a/Libraries/LibGUI/InputBox.h b/Libraries/LibGUI/InputBox.h index a65263b05d9..1d0bd47e245 100644 --- a/Libraries/LibGUI/InputBox.h +++ b/Libraries/LibGUI/InputBox.h @@ -30,9 +30,6 @@ namespace GUI { -class Button; -class TextEditor; - class InputBox : public Dialog { C_OBJECT(InputBox) public: diff --git a/Libraries/LibGUI/ItemView.h b/Libraries/LibGUI/ItemView.h index d5eafe31acc..e67f23635be 100644 --- a/Libraries/LibGUI/ItemView.h +++ b/Libraries/LibGUI/ItemView.h @@ -26,16 +26,11 @@ #pragma once -#include -#include #include -#include +#include namespace GUI { -class ScrollBar; -class Painter; - class ItemView : public AbstractView { C_OBJECT(ItemView) public: diff --git a/Libraries/LibGUI/Layout.cpp b/Libraries/LibGUI/Layout.cpp index 98dde762f4a..e5a6e57a531 100644 --- a/Libraries/LibGUI/Layout.cpp +++ b/Libraries/LibGUI/Layout.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include #include diff --git a/Libraries/LibGUI/Layout.h b/Libraries/LibGUI/Layout.h index 645836e9194..f10555182a6 100644 --- a/Libraries/LibGUI/Layout.h +++ b/Libraries/LibGUI/Layout.h @@ -26,16 +26,14 @@ #pragma once -#include #include #include #include +#include #include namespace GUI { -class Widget; - class Layout { public: Layout(); diff --git a/Libraries/LibGUI/ListView.cpp b/Libraries/LibGUI/ListView.cpp index c50e8d3b26e..bdc1c5248a1 100644 --- a/Libraries/LibGUI/ListView.cpp +++ b/Libraries/LibGUI/ListView.cpp @@ -25,10 +25,11 @@ */ #include -#include #include +#include #include #include +#include namespace GUI { diff --git a/Libraries/LibGUI/ListView.h b/Libraries/LibGUI/ListView.h index d1dffc4f91b..1d866401e7e 100644 --- a/Libraries/LibGUI/ListView.h +++ b/Libraries/LibGUI/ListView.h @@ -26,16 +26,10 @@ #pragma once -#include -#include #include -#include namespace GUI { -class ScrollBar; -class Painter; - class ListView : public AbstractView { C_OBJECT(ListView) public: diff --git a/Libraries/LibGUI/Makefile b/Libraries/LibGUI/Makefile index 931cb409066..9ad544d6ffc 100644 --- a/Libraries/LibGUI/Makefile +++ b/Libraries/LibGUI/Makefile @@ -38,6 +38,7 @@ OBJS = \ MenuItem.o \ MessageBox.o \ Model.o \ + ModelIndex.o \ ModelSelection.o \ Painter.o \ ProgressBar.o \ diff --git a/Libraries/LibGUI/Menu.h b/Libraries/LibGUI/Menu.h index 9d7c537e3d2..aa9956c8868 100644 --- a/Libraries/LibGUI/Menu.h +++ b/Libraries/LibGUI/Menu.h @@ -26,17 +26,13 @@ #pragma once -#include #include -#include #include +#include #include namespace GUI { -class Action; -class MenuItem; - class Menu final : public Core::Object { C_OBJECT(Menu) public: @@ -56,8 +52,6 @@ public: void popup(const Gfx::Point& screen_position); void dismiss(); - Function on_item_activation; - private: friend class MenuBar; diff --git a/Libraries/LibGUI/MenuBar.h b/Libraries/LibGUI/MenuBar.h index 751903f15d0..f68c7929f43 100644 --- a/Libraries/LibGUI/MenuBar.h +++ b/Libraries/LibGUI/MenuBar.h @@ -28,12 +28,10 @@ #include #include +#include namespace GUI { -class Application; -class Menu; - class MenuBar { public: MenuBar(); diff --git a/Libraries/LibGUI/MenuItem.h b/Libraries/LibGUI/MenuItem.h index f8c7a439aeb..a55d60fdccb 100644 --- a/Libraries/LibGUI/MenuItem.h +++ b/Libraries/LibGUI/MenuItem.h @@ -28,12 +28,10 @@ #include #include +#include namespace GUI { -class Action; -class Menu; - class MenuItem { public: enum class Type { diff --git a/Libraries/LibGUI/Model.h b/Libraries/LibGUI/Model.h index da09a1bac92..bc074440c85 100644 --- a/Libraries/LibGUI/Model.h +++ b/Libraries/LibGUI/Model.h @@ -38,8 +38,6 @@ namespace GUI { -class AbstractView; - enum class SortOrder { None, Ascending, diff --git a/Libraries/LibGUI/ModelIndex.cpp b/Libraries/LibGUI/ModelIndex.cpp new file mode 100644 index 00000000000..78c396a7672 --- /dev/null +++ b/Libraries/LibGUI/ModelIndex.cpp @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2018-2020, Andreas Kling + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include + +namespace GUI { + +const LogStream& operator<<(const LogStream& stream, const ModelIndex& value) +{ + if (value.internal_data()) + return stream << String::format("ModelIndex(%d,%d,%p)", value.row(), value.column(), value.internal_data()); + return stream << String::format("ModelIndex(%d,%d)", value.row(), value.column()); +} + +} diff --git a/Libraries/LibGUI/ModelIndex.h b/Libraries/LibGUI/ModelIndex.h index 2b2481fbc1d..c1c94d081e9 100644 --- a/Libraries/LibGUI/ModelIndex.h +++ b/Libraries/LibGUI/ModelIndex.h @@ -26,13 +26,11 @@ #pragma once -#include -#include +#include +#include namespace GUI { -class Model; - class ModelIndex { friend class Model; @@ -72,12 +70,7 @@ private: void* m_internal_data { nullptr }; }; -inline const LogStream& operator<<(const LogStream& stream, const ModelIndex& value) -{ - if (value.internal_data()) - return stream << String::format("ModelIndex(%d,%d,%p)", value.row(), value.column(), value.internal_data()); - return stream << String::format("ModelIndex(%d,%d)", value.row(), value.column()); -} +const LogStream& operator<<(const LogStream&, const ModelIndex&); } diff --git a/Libraries/LibGUI/ModelSelection.cpp b/Libraries/LibGUI/ModelSelection.cpp index df7689323c9..7bcec232cfa 100644 --- a/Libraries/LibGUI/ModelSelection.cpp +++ b/Libraries/LibGUI/ModelSelection.cpp @@ -24,7 +24,9 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include +#include #include namespace GUI { diff --git a/Libraries/LibGUI/ModelSelection.h b/Libraries/LibGUI/ModelSelection.h index b6452a35bd6..c16ed825355 100644 --- a/Libraries/LibGUI/ModelSelection.h +++ b/Libraries/LibGUI/ModelSelection.h @@ -27,12 +27,11 @@ #pragma once #include +#include #include namespace GUI { -class AbstractView; - class ModelSelection { public: ModelSelection(AbstractView& view) diff --git a/Libraries/LibGUI/Painter.h b/Libraries/LibGUI/Painter.h index a243e01cf44..ca302445057 100644 --- a/Libraries/LibGUI/Painter.h +++ b/Libraries/LibGUI/Painter.h @@ -26,12 +26,11 @@ #pragma once +#include #include namespace GUI { -class Widget; - class Painter : public Gfx::Painter { public: explicit Painter(Widget&); diff --git a/Libraries/LibGUI/ScrollBar.cpp b/Libraries/LibGUI/ScrollBar.cpp index 615077e945b..fb8baf4ee14 100644 --- a/Libraries/LibGUI/ScrollBar.cpp +++ b/Libraries/LibGUI/ScrollBar.cpp @@ -24,11 +24,9 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include -#include +#include #include #include -#include #include #include #include diff --git a/Libraries/LibGUI/ScrollBar.h b/Libraries/LibGUI/ScrollBar.h index 8283ef3f760..d65d4f61860 100644 --- a/Libraries/LibGUI/ScrollBar.h +++ b/Libraries/LibGUI/ScrollBar.h @@ -27,7 +27,6 @@ #pragma once #include -#include #include namespace GUI { @@ -37,7 +36,7 @@ class ScrollBar final : public Widget { public: virtual ~ScrollBar() override; - Orientation orientation() const { return m_orientation; } + Gfx::Orientation orientation() const { return m_orientation; } bool is_scrollable() const { return max() != min(); } @@ -101,7 +100,7 @@ private: int m_scrub_start_value { 0 }; Gfx::Point m_scrub_origin; - Orientation m_orientation { Orientation::Vertical }; + Gfx::Orientation m_orientation { Gfx::Orientation::Vertical }; Component m_hovered_component { Component::Invalid }; bool m_scrubber_in_use { false }; diff --git a/Libraries/LibGUI/ScrollableWidget.h b/Libraries/LibGUI/ScrollableWidget.h index 78278579dfb..012fc12ed8f 100644 --- a/Libraries/LibGUI/ScrollableWidget.h +++ b/Libraries/LibGUI/ScrollableWidget.h @@ -30,8 +30,6 @@ namespace GUI { -class ScrollBar; - class ScrollableWidget : public Frame { C_OBJECT(ScrollableWidget) public: diff --git a/Libraries/LibGUI/Shortcut.cpp b/Libraries/LibGUI/Shortcut.cpp index cc76d78a759..ab7d758b6a9 100644 --- a/Libraries/LibGUI/Shortcut.cpp +++ b/Libraries/LibGUI/Shortcut.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include #include #include diff --git a/Libraries/LibGUI/Shortcut.h b/Libraries/LibGUI/Shortcut.h index 6497451fd00..ad19c6398a8 100644 --- a/Libraries/LibGUI/Shortcut.h +++ b/Libraries/LibGUI/Shortcut.h @@ -26,7 +26,6 @@ #pragma once -#include #include #include diff --git a/Libraries/LibGUI/SpinBox.h b/Libraries/LibGUI/SpinBox.h index c4485674f09..e86d87948ce 100644 --- a/Libraries/LibGUI/SpinBox.h +++ b/Libraries/LibGUI/SpinBox.h @@ -30,9 +30,6 @@ namespace GUI { -class Button; -class TextEditor; - class SpinBox : public Widget { C_OBJECT(SpinBox) public: diff --git a/Libraries/LibGUI/Splitter.h b/Libraries/LibGUI/Splitter.h index 9d7a59dff8a..7f05f0b5107 100644 --- a/Libraries/LibGUI/Splitter.h +++ b/Libraries/LibGUI/Splitter.h @@ -36,7 +36,7 @@ public: virtual ~Splitter() override; protected: - Splitter(Orientation, Widget* parent); + Splitter(Gfx::Orientation, Widget* parent); virtual void paint_event(PaintEvent&) override; virtual void resize_event(ResizeEvent&) override; @@ -52,7 +52,7 @@ private: void recompute_grabbable_rect(const Widget&, const Widget&); bool get_resize_candidates_at(const Gfx::Point&, Widget*&, Widget*&); - Orientation m_orientation; + Gfx::Orientation m_orientation; bool m_resizing { false }; Gfx::Point m_resize_origin; WeakPtr m_first_resizee; @@ -69,7 +69,7 @@ public: private: explicit VerticalSplitter(Widget* parent) - : Splitter(Orientation::Vertical, parent) + : Splitter(Gfx::Orientation::Vertical, parent) { } }; @@ -81,7 +81,7 @@ public: private: explicit HorizontalSplitter(Widget* parent) - : Splitter(Orientation::Horizontal, parent) + : Splitter(Gfx::Orientation::Horizontal, parent) { } }; diff --git a/Libraries/LibGUI/StatusBar.h b/Libraries/LibGUI/StatusBar.h index d2d80cd9bdb..eced08550ae 100644 --- a/Libraries/LibGUI/StatusBar.h +++ b/Libraries/LibGUI/StatusBar.h @@ -30,9 +30,6 @@ namespace GUI { -class Label; -class ResizeCorner; - class StatusBar : public Widget { C_OBJECT(StatusBar) public: diff --git a/Libraries/LibGUI/SyntaxHighlighter.h b/Libraries/LibGUI/SyntaxHighlighter.h index c7aa3dc9278..f4a31ca6e79 100644 --- a/Libraries/LibGUI/SyntaxHighlighter.h +++ b/Libraries/LibGUI/SyntaxHighlighter.h @@ -6,8 +6,6 @@ namespace GUI { -class TextEditor; - class SyntaxHighlighter { AK_MAKE_NONCOPYABLE(SyntaxHighlighter); AK_MAKE_NONMOVABLE(SyntaxHighlighter); diff --git a/Libraries/LibGUI/TableView.h b/Libraries/LibGUI/TableView.h index a21e6f93758..b13be77b451 100644 --- a/Libraries/LibGUI/TableView.h +++ b/Libraries/LibGUI/TableView.h @@ -26,10 +26,7 @@ #pragma once -#include -#include #include -#include namespace GUI { diff --git a/Libraries/LibGUI/TextBox.h b/Libraries/LibGUI/TextBox.h index 1989ad9825a..2d66658d5bb 100644 --- a/Libraries/LibGUI/TextBox.h +++ b/Libraries/LibGUI/TextBox.h @@ -26,7 +26,6 @@ #pragma once -#include #include namespace GUI { diff --git a/Libraries/LibGUI/TextDocument.cpp b/Libraries/LibGUI/TextDocument.cpp index fd3d74afdf5..3834419b02e 100644 --- a/Libraries/LibGUI/TextDocument.cpp +++ b/Libraries/LibGUI/TextDocument.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include #include #include @@ -32,6 +33,11 @@ namespace GUI { +NonnullRefPtr TextDocument::create(Client* client) +{ + return adopt(*new TextDocument(client)); +} + TextDocument::TextDocument(Client* client) { if (client) @@ -45,6 +51,10 @@ TextDocument::TextDocument(Client* client) }); } +TextDocument::~TextDocument() +{ +} + void TextDocument::set_text(const StringView& text) { m_client_notifications_enabled = false; diff --git a/Libraries/LibGUI/TextDocument.h b/Libraries/LibGUI/TextDocument.h index 10416937b20..51234450b77 100644 --- a/Libraries/LibGUI/TextDocument.h +++ b/Libraries/LibGUI/TextDocument.h @@ -26,13 +26,14 @@ #pragma once -#include #include #include #include #include #include -#include +#include +#include +#include #include #include #include @@ -40,11 +41,6 @@ namespace GUI { -class TextDocument; -class TextDocumentLine; -class TextDocumentUndoCommand; -class TextEditor; - struct TextDocumentSpan { TextRange range; Color color; @@ -76,10 +72,8 @@ public: virtual int soft_tab_width() const = 0; }; - static NonnullRefPtr create(Client* client = nullptr) - { - return adopt(*new TextDocument(client)); - } + static NonnullRefPtr create(Client* client = nullptr); + ~TextDocument(); size_t line_count() const { return (size_t)m_lines.size(); } const TextDocumentLine& line(size_t line_index) const { return m_lines[(int)line_index]; } diff --git a/Libraries/LibGUI/TextEditor.h b/Libraries/LibGUI/TextEditor.h index d84c485dd12..1a58833ce78 100644 --- a/Libraries/LibGUI/TextEditor.h +++ b/Libraries/LibGUI/TextEditor.h @@ -27,11 +27,9 @@ #pragma once #include -#include #include #include #include -#include #include #include #include @@ -39,12 +37,6 @@ namespace GUI { -class Action; -class Menu; -class Painter; -class ScrollBar; -class SyntaxHighlighter; - class TextEditor : public ScrollableWidget , public TextDocument::Client { diff --git a/Libraries/LibGUI/ToolBar.h b/Libraries/LibGUI/ToolBar.h index 575207299ea..09e655f2d73 100644 --- a/Libraries/LibGUI/ToolBar.h +++ b/Libraries/LibGUI/ToolBar.h @@ -31,8 +31,6 @@ namespace GUI { -class Action; - class ToolBar : public Widget { C_OBJECT(ToolBar) public: diff --git a/Libraries/LibGUI/TreeView.cpp b/Libraries/LibGUI/TreeView.cpp index 220df877b9b..b2fd56d6cbe 100644 --- a/Libraries/LibGUI/TreeView.cpp +++ b/Libraries/LibGUI/TreeView.cpp @@ -24,10 +24,12 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include +#include #include #include #include +#include +#include //#define DEBUG_ITEM_RECTS diff --git a/Libraries/LibGUI/TreeView.h b/Libraries/LibGUI/TreeView.h index cc47b2bcddb..05a5b600d2f 100644 --- a/Libraries/LibGUI/TreeView.h +++ b/Libraries/LibGUI/TreeView.h @@ -26,6 +26,7 @@ #pragma once +#include #include namespace GUI { @@ -35,7 +36,7 @@ class TreeView : public AbstractTableView { public: virtual ~TreeView() override; - virtual void scroll_into_view(const ModelIndex&, Orientation); + virtual void scroll_into_view(const ModelIndex&, Gfx::Orientation); virtual int item_count() const override; diff --git a/Libraries/LibGUI/UndoStack.cpp b/Libraries/LibGUI/UndoStack.cpp index 76c38eaca91..61999e6d071 100644 --- a/Libraries/LibGUI/UndoStack.cpp +++ b/Libraries/LibGUI/UndoStack.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include namespace GUI { diff --git a/Libraries/LibGUI/UndoStack.h b/Libraries/LibGUI/UndoStack.h index 1893ad5ec16..2abc278d21d 100644 --- a/Libraries/LibGUI/UndoStack.h +++ b/Libraries/LibGUI/UndoStack.h @@ -27,12 +27,10 @@ #pragma once #include -#include +#include namespace GUI { -class Command; - class UndoStack { public: UndoStack(); diff --git a/Libraries/LibGUI/Widget.h b/Libraries/LibGUI/Widget.h index 536d5544246..4cd76ef0fdd 100644 --- a/Libraries/LibGUI/Widget.h +++ b/Libraries/LibGUI/Widget.h @@ -26,11 +26,10 @@ #pragma once -#include -#include #include #include #include +#include #include #include #include @@ -40,10 +39,6 @@ extern WidgetClassRegistration registration_##class_name; \ WidgetClassRegistration registration_##class_name(#class_name, [](Widget* parent) { return class_name::construct(parent); }); -namespace GUI { -class Widget; -} - template<> inline bool Core::is(const Core::Object& object) { @@ -52,11 +47,6 @@ inline bool Core::is(const Core::Object& object) namespace GUI { -class Action; -class Layout; -class Menu; -class Window; - enum class SizePolicy { Fixed, Fill @@ -81,8 +71,6 @@ enum class VerticalDirection { Down }; -class Widget; - class WidgetClassRegistration { AK_MAKE_NONCOPYABLE(WidgetClassRegistration) AK_MAKE_NONMOVABLE(WidgetClassRegistration) diff --git a/Libraries/LibGUI/Window.cpp b/Libraries/LibGUI/Window.cpp index 4222de9ea16..3386f9a86cf 100644 --- a/Libraries/LibGUI/Window.cpp +++ b/Libraries/LibGUI/Window.cpp @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include diff --git a/Libraries/LibGUI/Window.h b/Libraries/LibGUI/Window.h index 55b28567628..7c2478242db 100644 --- a/Libraries/LibGUI/Window.h +++ b/Libraries/LibGUI/Window.h @@ -27,10 +27,10 @@ #pragma once #include -#include #include #include #include +#include #include #include #include @@ -38,12 +38,6 @@ namespace GUI { -class Action; -class KeyEvent; -class WMEvent; -class Widget; -class WindowServerConnection; - enum class StandardCursor { None = 0, Arrow, diff --git a/Libraries/LibGUI/WindowServerConnection.cpp b/Libraries/LibGUI/WindowServerConnection.cpp index df0dab8df9b..5b756cbd7d2 100644 --- a/Libraries/LibGUI/WindowServerConnection.cpp +++ b/Libraries/LibGUI/WindowServerConnection.cpp @@ -25,6 +25,7 @@ */ #include +#include #include #include #include diff --git a/Libraries/LibGfx/Forward.h b/Libraries/LibGfx/Forward.h index 325ec0c3576..2c03bc303de 100644 --- a/Libraries/LibGfx/Forward.h +++ b/Libraries/LibGfx/Forward.h @@ -51,6 +51,7 @@ class Triangle; enum class BitmapFormat; enum class ColorRole; +enum class TextAlignment; } diff --git a/Libraries/LibGfx/Palette.h b/Libraries/LibGfx/Palette.h index 2c2dbce7497..ecd647e15ed 100644 --- a/Libraries/LibGfx/Palette.h +++ b/Libraries/LibGfx/Palette.h @@ -30,12 +30,9 @@ #include #include #include +#include #include -namespace GUI { -class Application; -} - namespace Gfx { class PaletteImpl : public RefCounted { diff --git a/Libraries/LibHTML/Layout/LayoutWidget.h b/Libraries/LibHTML/Layout/LayoutWidget.h index 15c73f6417e..1cb78316550 100644 --- a/Libraries/LibHTML/Layout/LayoutWidget.h +++ b/Libraries/LibHTML/Layout/LayoutWidget.h @@ -28,10 +28,6 @@ #include -namespace GUI { -class Widget; -} - class LayoutWidget : public LayoutReplaced { public: LayoutWidget(const Element&, GUI::Widget&); diff --git a/Libraries/LibHTML/RenderingContext.h b/Libraries/LibHTML/RenderingContext.h index 028555fd2ac..8880f205aa4 100644 --- a/Libraries/LibHTML/RenderingContext.h +++ b/Libraries/LibHTML/RenderingContext.h @@ -28,10 +28,7 @@ #include #include - -namespace GUI { -class Painter; -} +#include class RenderingContext { public: diff --git a/Libraries/LibIPC/ServerConnection.h b/Libraries/LibIPC/ServerConnection.h index 8b74400dd90..04dc09641f4 100644 --- a/Libraries/LibIPC/ServerConnection.h +++ b/Libraries/LibIPC/ServerConnection.h @@ -29,7 +29,6 @@ #include #include #include -#include #include #include #include diff --git a/Libraries/LibVT/TerminalWidget.h b/Libraries/LibVT/TerminalWidget.h index 7e465828c43..f518a21eb19 100644 --- a/Libraries/LibVT/TerminalWidget.h +++ b/Libraries/LibVT/TerminalWidget.h @@ -36,10 +36,6 @@ #include #include -namespace GUI { -class ScrollBar; -} - class TerminalWidget final : public GUI::Frame , public VT::TerminalClient { C_OBJECT(TerminalWidget) diff --git a/Userland/avol.cpp b/Userland/avol.cpp index 9e2362c51d1..4c16bbd7ed4 100644 --- a/Userland/avol.cpp +++ b/Userland/avol.cpp @@ -26,6 +26,7 @@ #include #include +#include #include int main(int argc, char** argv)