1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-28 20:07:35 +00:00

Userland: Port to automatic GML initializer where possible

This commit is contained in:
kleines Filmröllchen 2024-01-22 16:52:25 +01:00 committed by Andrew Kaster
parent dec066fa5c
commit adc845e0cb
41 changed files with 148 additions and 245 deletions

View file

@ -30,14 +30,7 @@ void CalendarSettingsWidget::reset_default_values()
m_default_view_combobox->set_text("Month");
}
ErrorOr<NonnullRefPtr<CalendarSettingsWidget>> CalendarSettingsWidget::create()
{
auto widget = TRY(try_create());
TRY(widget->setup());
return widget;
}
ErrorOr<void> CalendarSettingsWidget::setup()
ErrorOr<void> CalendarSettingsWidget::initialize()
{
m_first_day_of_week_combobox = *find_descendant_of_type_named<GUI::ComboBox>("first_day_of_week");
m_first_day_of_week_combobox->set_text(Config::read_string("Calendar"sv, "View"sv, "FirstDayOfWeek"sv, "Sunday"sv));

View file

@ -15,16 +15,15 @@ class CalendarSettingsWidget final : public GUI::SettingsWindow::Tab {
C_OBJECT_ABSTRACT(CalendarSettingsWidget)
public:
static ErrorOr<NonnullRefPtr<CalendarSettingsWidget>> create();
static ErrorOr<NonnullRefPtr<CalendarSettingsWidget>> try_create();
ErrorOr<void> initialize();
virtual void apply_settings() override;
virtual void reset_default_values() override;
private:
CalendarSettingsWidget() = default;
static ErrorOr<NonnullRefPtr<CalendarSettingsWidget>> try_create();
ErrorOr<void> setup();
static constexpr Array<StringView, 2> const m_view_modes = { "Month"sv, "Year"sv };
RefPtr<GUI::ComboBox> m_first_day_of_week_combobox;

View file

@ -33,7 +33,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
auto app_icon = GUI::Icon::default_icon("app-calendar"sv);
auto window = TRY(GUI::SettingsWindow::create("Calendar Settings", GUI::SettingsWindow::ShowDefaultsButton::Yes));
(void)TRY(window->add_tab(TRY(CalendarSettings::CalendarSettingsWidget::create()), "Calendar"_string, "Calendar"sv));
(void)TRY(window->add_tab<CalendarSettings::CalendarSettingsWidget>("Calendar"_string, "Calendar"sv));
window->set_icon(app_icon.bitmap_for_size(16));
window->set_active_tab(selected_tab);