Explorar o código

LibGUI: Reduce menu-related header dependencies

Andreas Kling %!s(int64=5) %!d(string=hai) anos
pai
achega
b011ea9962

+ 1 - 0
Applications/Calculator/main.cpp

@@ -28,6 +28,7 @@
 #include <LibGUI/AboutDialog.h>
 #include <LibGUI/Action.h>
 #include <LibGUI/Application.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/Window.h>
 #include <LibGfx/Bitmap.h>

+ 1 - 0
Applications/ChanViewer/main.cpp

@@ -31,6 +31,7 @@
 #include <LibGUI/Application.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/ComboBox.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/StatusBar.h>
 #include <LibGUI/TableView.h>

+ 1 - 0
Applications/FileManager/main.cpp

@@ -42,6 +42,7 @@
 #include <LibGUI/FileSystemModel.h>
 #include <LibGUI/InputBox.h>
 #include <LibGUI/Label.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/MessageBox.h>
 #include <LibGUI/ProgressBar.h>

+ 1 - 0
Applications/FontEditor/main.cpp

@@ -28,6 +28,7 @@
 #include <LibGUI/AboutDialog.h>
 #include <LibGUI/Action.h>
 #include <LibGUI/Application.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/Window.h>
 #include <LibGfx/Bitmap.h>

+ 1 - 0
Applications/HexEditor/HexEditorWidget.cpp

@@ -35,6 +35,7 @@
 #include <LibGUI/FilePicker.h>
 #include <LibGUI/FontDatabase.h>
 #include <LibGUI/InputBox.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/MessageBox.h>
 #include <LibGUI/StatusBar.h>

+ 1 - 0
Applications/Piano/main.cpp

@@ -34,6 +34,7 @@
 #include <LibGUI/Action.h>
 #include <LibGUI/Application.h>
 #include <LibGUI/FilePicker.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/MessageBox.h>
 #include <LibGUI/Window.h>

+ 1 - 0
Applications/SystemMonitor/main.cpp

@@ -44,6 +44,7 @@
 #include <LibGUI/JsonArrayModel.h>
 #include <LibGUI/Label.h>
 #include <LibGUI/LazyWidget.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/Painter.h>
 #include <LibGUI/SortingProxyModel.h>

+ 1 - 0
Applications/Terminal/main.cpp

@@ -34,6 +34,7 @@
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/FontDatabase.h>
 #include <LibGUI/GroupBox.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/RadioButton.h>
 #include <LibGUI/Slider.h>

+ 1 - 0
Applications/TextEditor/TextEditorWidget.cpp

@@ -37,6 +37,7 @@
 #include <LibGUI/CppSyntaxHighlighter.h>
 #include <LibGUI/FilePicker.h>
 #include <LibGUI/FontDatabase.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/MessageBox.h>
 #include <LibGUI/StatusBar.h>

+ 1 - 0
DevTools/VisualBuilder/main.cpp

@@ -33,6 +33,7 @@
 #include <LibGUI/Application.h>
 #include <LibGUI/BoxLayout.h>
 #include <LibGUI/Button.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
 #include <LibGUI/TableView.h>
 #include <LibGUI/Widget.h>

+ 1 - 0
Libraries/LibGUI/Menu.cpp

@@ -29,6 +29,7 @@
 #include <LibGUI/Action.h>
 #include <LibGUI/ActionGroup.h>
 #include <LibGUI/Menu.h>
+#include <LibGUI/MenuItem.h>
 #include <LibGUI/WindowServerConnection.h>
 #include <LibGfx/Bitmap.h>
 

+ 1 - 1
Libraries/LibGUI/Menu.h

@@ -30,12 +30,12 @@
 #include <AK/NonnullOwnPtrVector.h>
 #include <AK/NonnullRefPtr.h>
 #include <LibCore/Object.h>
-#include <LibGUI/MenuItem.h>
 #include <LibGfx/Forward.h>
 
 namespace GUI {
 
 class Action;
+class MenuItem;
 
 class Menu final : public Core::Object {
     C_OBJECT(Menu)

+ 3 - 0
Libraries/LibGUI/MenuBar.cpp

@@ -24,7 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+#include <AK/Badge.h>
+#include <LibGUI/Menu.h>
 #include <LibGUI/MenuBar.h>
+#include <LibGUI/MenuItem.h>
 #include <LibGUI/WindowServerConnection.h>
 
 namespace GUI {

+ 3 - 3
Libraries/LibGUI/MenuBar.h

@@ -26,13 +26,13 @@
 
 #pragma once
 
-#include <AK/Badge.h>
-#include <AK/NonnullOwnPtrVector.h>
-#include <LibGUI/Menu.h>
+#include <AK/Forward.h>
+#include <AK/NonnullRefPtrVector.h>
 
 namespace GUI {
 
 class Application;
+class Menu;
 
 class MenuBar {
 public:

+ 10 - 0
Libraries/LibGUI/MenuItem.cpp

@@ -88,4 +88,14 @@ void MenuItem::update_window_server()
     WindowServerConnection::the().send_sync<Messages::WindowServer::UpdateMenuItem>(m_menu_id, m_identifier, -1, action.text(), action.is_enabled(), action.is_checkable(), action.is_checkable() ? action.is_checked() : false, shortcut_text);
 }
 
+void MenuItem::set_menu_id(Badge<Menu>, unsigned int menu_id)
+{
+    m_menu_id = menu_id;
+}
+
+void MenuItem::set_identifier(Badge<Menu>, unsigned identifier)
+{
+    m_identifier = identifier;
+}
+
 }

+ 4 - 6
Libraries/LibGUI/MenuItem.h

@@ -26,10 +26,8 @@
 
 #pragma once
 
-#include <AK/Badge.h>
-#include <AK/NonnullOwnPtr.h>
-#include <AK/OwnPtr.h>
-#include <AK/String.h>
+#include <AK/Forward.h>
+#include <AK/RefPtr.h>
 
 namespace GUI {
 
@@ -68,8 +66,8 @@ public:
     bool is_enabled() const { return m_enabled; }
     void set_enabled(bool);
 
-    void set_menu_id(Badge<Menu>, unsigned menu_id) { m_menu_id = menu_id; }
-    void set_identifier(Badge<Menu>, unsigned identifier) { m_identifier = identifier; }
+    void set_menu_id(Badge<Menu>, unsigned menu_id);
+    void set_identifier(Badge<Menu>, unsigned identifier);
 
 private:
     void update_window_server();