From e488928509a295e3af3c4109eda67d42b182c6ed Mon Sep 17 00:00:00 2001 From: Aryan Baburajan Date: Sat, 30 Mar 2024 13:25:56 +0530 Subject: [PATCH] FontPickerDialog: Port to GML compilation --- Userland/Libraries/LibGUI/CMakeLists.txt | 4 ++-- Userland/Libraries/LibGUI/FontPicker.cpp | 6 ++--- .../Libraries/LibGUI/FontPickerDialog.gml | 2 +- .../Libraries/LibGUI/FontPickerDialogWidget.h | 23 +++++++++++++++++++ 4 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 Userland/Libraries/LibGUI/FontPickerDialogWidget.h diff --git a/Userland/Libraries/LibGUI/CMakeLists.txt b/Userland/Libraries/LibGUI/CMakeLists.txt index 033925ea09b..5cd55f1ac43 100644 --- a/Userland/Libraries/LibGUI/CMakeLists.txt +++ b/Userland/Libraries/LibGUI/CMakeLists.txt @@ -3,7 +3,7 @@ compile_gml(DynamicWidgetContainerControls.gml DynamicWidgetContainerControls.cp compile_gml(AboutDialog.gml AboutDialogGML.cpp) stringify_gml(DatePickerDialog.gml DatePickerDialogGML.h date_picker_dialog_gml) stringify_gml(EmojiInputDialog.gml EmojiInputDialogGML.h emoji_input_dialog_gml) -stringify_gml(FontPickerDialog.gml FontPickerDialogGML.h font_picker_dialog_gml) +compile_gml(FontPickerDialog.gml FontPickerDialogGML.cpp) compile_gml(FilePickerDialog.gml FilePickerDialogGML.cpp) stringify_gml(IncrementalSearchBanner.gml IncrementalSearchBannerGML.h incremental_search_banner_gml) compile_gml(PasswordInputDialog.gml PasswordInputDialogGML.cpp) @@ -54,6 +54,7 @@ set(SOURCES FileSystemModel.cpp FilteringProxyModel.cpp FontPicker.cpp + FontPickerDialogGML.cpp Frame.cpp GitCommitLexer.cpp GitCommitSyntaxHighlighter.cpp @@ -151,7 +152,6 @@ set(GENERATED_SOURCES ../../Services/WindowServer/WindowServerEndpoint.h DatePickerDialogGML.h EmojiInputDialogGML.h - FontPickerDialogGML.h IncrementalSearchBannerGML.h ) diff --git a/Userland/Libraries/LibGUI/FontPicker.cpp b/Userland/Libraries/LibGUI/FontPicker.cpp index 0f64654724e..d76f9a81e46 100644 --- a/Userland/Libraries/LibGUI/FontPicker.cpp +++ b/Userland/Libraries/LibGUI/FontPicker.cpp @@ -8,7 +8,7 @@ #include #include #include -#include +#include #include #include #include @@ -26,8 +26,8 @@ FontPicker::FontPicker(Window* parent_window, Gfx::Font const* current_font, boo resize(430, 280); set_icon(Gfx::Bitmap::load_from_file("/res/icons/16x16/app-font-editor.png"sv).release_value_but_fixme_should_propagate_errors()); - auto widget = set_main_widget(); - widget->load_from_gml(font_picker_dialog_gml).release_value_but_fixme_should_propagate_errors(); + auto widget = FontPickerDialogWidget::try_create().release_value_but_fixme_should_propagate_errors(); + set_main_widget(widget); m_family_list_view = *widget->find_descendant_of_type_named("family_list_view"); m_family_list_view->set_model(ItemListModel::create(m_families)); diff --git a/Userland/Libraries/LibGUI/FontPickerDialog.gml b/Userland/Libraries/LibGUI/FontPickerDialog.gml index 854c5381c60..95ed6dc3a3b 100644 --- a/Userland/Libraries/LibGUI/FontPickerDialog.gml +++ b/Userland/Libraries/LibGUI/FontPickerDialog.gml @@ -1,4 +1,4 @@ -@GUI::Widget { +@GUI::FontPickerDialogWidget { fill_with_background_color: true layout: @GUI::VerticalBoxLayout { margins: [4, 4, 4, 4] diff --git a/Userland/Libraries/LibGUI/FontPickerDialogWidget.h b/Userland/Libraries/LibGUI/FontPickerDialogWidget.h new file mode 100644 index 00000000000..551d722d7d8 --- /dev/null +++ b/Userland/Libraries/LibGUI/FontPickerDialogWidget.h @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2024, Aryan Baburajan . + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once + +#include + +namespace GUI { + +class FontPickerDialogWidget : public GUI::Widget { + C_OBJECT_ABSTRACT(FontPickerDialogWidget) +public: + static ErrorOr> try_create(); + virtual ~FontPickerDialogWidget() override = default; + +private: + FontPickerDialogWidget() = default; +}; + +}