mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 11:27:35 +00:00
Userland: Use non-fallible EventReceiver::add()
where possible
This commit is contained in:
parent
707ca984bd
commit
b4e134cb52
54 changed files with 934 additions and 934 deletions
|
@ -132,13 +132,13 @@ ErrorOr<void> InputBox::build()
|
|||
main_widget->set_fill_with_background_color(true);
|
||||
|
||||
if (!m_prompt.is_empty()) {
|
||||
auto prompt_container = TRY(main_widget->try_add<Widget>());
|
||||
prompt_container->set_layout<HorizontalBoxLayout>(0, 8);
|
||||
auto& prompt_container = main_widget->add<Widget>();
|
||||
prompt_container.set_layout<HorizontalBoxLayout>(0, 8);
|
||||
if (m_icon) {
|
||||
auto image_widget = TRY(prompt_container->try_add<ImageWidget>());
|
||||
image_widget->set_bitmap(m_icon);
|
||||
auto& image_widget = prompt_container.add<ImageWidget>();
|
||||
image_widget.set_bitmap(m_icon);
|
||||
}
|
||||
m_prompt_label = TRY(prompt_container->try_add<Label>());
|
||||
m_prompt_label = prompt_container.add<Label>();
|
||||
m_prompt_label->set_autosize(true);
|
||||
m_prompt_label->set_text_wrapping(Gfx::TextWrapping::DontWrap);
|
||||
m_prompt_label->set_text(m_prompt);
|
||||
|
@ -147,21 +147,21 @@ ErrorOr<void> InputBox::build()
|
|||
switch (m_input_type) {
|
||||
case InputType::Text:
|
||||
case InputType::NonemptyText:
|
||||
m_text_editor = TRY(main_widget->try_add<TextBox>());
|
||||
m_text_editor = main_widget->add<TextBox>();
|
||||
break;
|
||||
case InputType::Password:
|
||||
m_text_editor = TRY(main_widget->try_add<PasswordBox>());
|
||||
m_text_editor = main_widget->add<PasswordBox>();
|
||||
break;
|
||||
case InputType::Numeric:
|
||||
m_spinbox = TRY(main_widget->try_add<SpinBox>());
|
||||
m_spinbox = main_widget->add<SpinBox>();
|
||||
break;
|
||||
}
|
||||
|
||||
auto button_container = TRY(main_widget->try_add<Widget>());
|
||||
button_container->set_layout<HorizontalBoxLayout>(0, 6);
|
||||
button_container->add_spacer();
|
||||
auto& button_container = main_widget->add<Widget>();
|
||||
button_container.set_layout<HorizontalBoxLayout>(0, 6);
|
||||
button_container.add_spacer();
|
||||
|
||||
m_ok_button = TRY(button_container->try_add<DialogButton>("OK"_string));
|
||||
m_ok_button = button_container.add<DialogButton>("OK"_string);
|
||||
m_ok_button->on_click = [this](auto) {
|
||||
if (m_spinbox)
|
||||
m_spinbox->set_value_from_current_text();
|
||||
|
@ -169,15 +169,15 @@ ErrorOr<void> InputBox::build()
|
|||
};
|
||||
m_ok_button->set_default(true);
|
||||
|
||||
m_cancel_button = TRY(button_container->try_add<DialogButton>("Cancel"_string));
|
||||
m_cancel_button = button_container.add<DialogButton>("Cancel"_string);
|
||||
m_cancel_button->on_click = [this](auto) { done(ExecResult::Cancel); };
|
||||
|
||||
auto guarantee_width = [this, button_container] {
|
||||
auto guarantee_width = [this, &button_container] {
|
||||
if (m_prompt.is_empty())
|
||||
return;
|
||||
auto width = button_container->calculated_min_size().value().width().as_int();
|
||||
auto width = button_container.calculated_min_size().value().width().as_int();
|
||||
auto constexpr golden_ratio = 1.618;
|
||||
button_container->set_min_width(width * golden_ratio);
|
||||
button_container.set_min_width(width * golden_ratio);
|
||||
};
|
||||
guarantee_width();
|
||||
on_font_change = [guarantee_width] { guarantee_width(); };
|
||||
|
|
|
@ -154,41 +154,41 @@ ErrorOr<void> MessageBox::build()
|
|||
main_widget->set_fill_with_background_color(true);
|
||||
main_widget->set_layout<VerticalBoxLayout>(8, 6);
|
||||
|
||||
auto message_container = TRY(main_widget->try_add<Widget>());
|
||||
auto& message_container = main_widget->add<Widget>();
|
||||
auto message_margins = Margins { 8, m_type != Type::None ? 8 : 0 };
|
||||
message_container->set_layout<HorizontalBoxLayout>(message_margins, 8);
|
||||
message_container.set_layout<HorizontalBoxLayout>(message_margins, 8);
|
||||
|
||||
if (auto icon = TRY(this->icon()); icon && m_type != Type::None) {
|
||||
auto image_widget = TRY(message_container->try_add<ImageWidget>());
|
||||
image_widget->set_bitmap(icon);
|
||||
auto& image_widget = message_container.add<ImageWidget>();
|
||||
image_widget.set_bitmap(icon);
|
||||
}
|
||||
|
||||
m_text_label = TRY(message_container->try_add<Label>());
|
||||
m_text_label = message_container.add<Label>();
|
||||
m_text_label->set_text_wrapping(Gfx::TextWrapping::DontWrap);
|
||||
m_text_label->set_autosize(true);
|
||||
if (m_type != Type::None)
|
||||
m_text_label->set_text_alignment(Gfx::TextAlignment::CenterLeft);
|
||||
|
||||
auto button_container = TRY(main_widget->try_add<Widget>());
|
||||
button_container->set_layout<HorizontalBoxLayout>(Margins {}, 8);
|
||||
auto& button_container = main_widget->add<Widget>();
|
||||
button_container.set_layout<HorizontalBoxLayout>(Margins {}, 8);
|
||||
|
||||
auto add_button = [&](String text, ExecResult result) -> ErrorOr<NonnullRefPtr<Button>> {
|
||||
auto button = TRY(button_container->try_add<DialogButton>());
|
||||
button->set_text(move(text));
|
||||
button->on_click = [this, result](auto) { done(result); };
|
||||
auto add_button = [&](String text, ExecResult result) -> NonnullRefPtr<Button> {
|
||||
auto& button = button_container.add<DialogButton>();
|
||||
button.set_text(move(text));
|
||||
button.on_click = [this, result](auto) { done(result); };
|
||||
return button;
|
||||
};
|
||||
|
||||
button_container->add_spacer();
|
||||
button_container.add_spacer();
|
||||
if (should_include_ok_button())
|
||||
m_ok_button = TRY(add_button("OK"_string, ExecResult::OK));
|
||||
m_ok_button = add_button("OK"_string, ExecResult::OK);
|
||||
if (should_include_yes_button())
|
||||
m_yes_button = TRY(add_button("Yes"_string, ExecResult::Yes));
|
||||
m_yes_button = add_button("Yes"_string, ExecResult::Yes);
|
||||
if (should_include_no_button())
|
||||
m_no_button = TRY(add_button("No"_string, ExecResult::No));
|
||||
m_no_button = add_button("No"_string, ExecResult::No);
|
||||
if (should_include_cancel_button())
|
||||
m_cancel_button = TRY(add_button("Cancel"_string, ExecResult::Cancel));
|
||||
button_container->add_spacer();
|
||||
m_cancel_button = add_button("Cancel"_string, ExecResult::Cancel);
|
||||
button_container.add_spacer();
|
||||
|
||||
return {};
|
||||
}
|
||||
|
|
|
@ -36,34 +36,34 @@ ErrorOr<NonnullRefPtr<SettingsWindow>> SettingsWindow::create(DeprecatedString t
|
|||
main_widget->set_fill_with_background_color(true);
|
||||
main_widget->set_layout<GUI::VerticalBoxLayout>(4, 6);
|
||||
|
||||
window->m_tab_widget = TRY(main_widget->try_add<GUI::TabWidget>());
|
||||
window->m_tab_widget = main_widget->add<GUI::TabWidget>();
|
||||
|
||||
auto button_container = TRY(main_widget->try_add<GUI::Widget>());
|
||||
button_container->set_preferred_size({ SpecialDimension::Grow, SpecialDimension::Fit });
|
||||
button_container->set_layout<GUI::HorizontalBoxLayout>(GUI::Margins {}, 6);
|
||||
auto& button_container = main_widget->add<GUI::Widget>();
|
||||
button_container.set_preferred_size({ SpecialDimension::Grow, SpecialDimension::Fit });
|
||||
button_container.set_layout<GUI::HorizontalBoxLayout>(GUI::Margins {}, 6);
|
||||
|
||||
if (show_defaults_button == ShowDefaultsButton::Yes) {
|
||||
window->m_reset_button = TRY(button_container->try_add<GUI::DialogButton>("Defaults"_string));
|
||||
window->m_reset_button = button_container.add<GUI::DialogButton>("Defaults"_string);
|
||||
window->m_reset_button->on_click = [window = window->make_weak_ptr<SettingsWindow>()](auto) {
|
||||
window->reset_default_values();
|
||||
};
|
||||
}
|
||||
|
||||
button_container->add_spacer();
|
||||
button_container.add_spacer();
|
||||
|
||||
window->m_ok_button = TRY(button_container->try_add<GUI::DialogButton>("OK"_string));
|
||||
window->m_ok_button = button_container.add<GUI::DialogButton>("OK"_string);
|
||||
window->m_ok_button->on_click = [window = window->make_weak_ptr<SettingsWindow>()](auto) {
|
||||
window->apply_settings();
|
||||
GUI::Application::the()->quit();
|
||||
};
|
||||
|
||||
window->m_cancel_button = TRY(button_container->try_add<GUI::DialogButton>("Cancel"_string));
|
||||
window->m_cancel_button = button_container.add<GUI::DialogButton>("Cancel"_string);
|
||||
window->m_cancel_button->on_click = [window = window->make_weak_ptr<SettingsWindow>()](auto) {
|
||||
window->cancel_settings();
|
||||
GUI::Application::the()->quit();
|
||||
};
|
||||
|
||||
window->m_apply_button = TRY(button_container->try_add<GUI::DialogButton>("Apply"_string));
|
||||
window->m_apply_button = button_container.add<GUI::DialogButton>("Apply"_string);
|
||||
window->m_apply_button->set_enabled(false);
|
||||
window->m_apply_button->on_click = [window = window->make_weak_ptr<SettingsWindow>()](auto) {
|
||||
window->apply_settings();
|
||||
|
|
|
@ -25,19 +25,19 @@ ErrorOr<void> CoverWizardPage::build(String title, String subtitle)
|
|||
set_fill_with_background_color(true);
|
||||
set_background_role(Gfx::ColorRole::Base);
|
||||
set_layout<HorizontalBoxLayout>();
|
||||
m_banner_image_widget = TRY(try_add<ImageWidget>());
|
||||
m_banner_image_widget = add<ImageWidget>();
|
||||
m_banner_image_widget->set_fixed_size(160, 315);
|
||||
m_banner_image_widget->load_from_file("/res/graphics/wizard-banner-simple.png"sv);
|
||||
|
||||
m_content_widget = TRY(try_add<Widget>());
|
||||
m_content_widget = add<Widget>();
|
||||
m_content_widget->set_layout<VerticalBoxLayout>(20);
|
||||
|
||||
m_header_label = TRY(m_content_widget->try_add<Label>(move(title)));
|
||||
m_header_label = m_content_widget->add<Label>(move(title));
|
||||
m_header_label->set_font(Gfx::FontDatabase::the().get("Pebbleton"_fly_string, 14, 700, Gfx::FontWidth::Normal, 0));
|
||||
m_header_label->set_text_alignment(Gfx::TextAlignment::TopLeft);
|
||||
m_header_label->set_fixed_height(48);
|
||||
|
||||
m_body_label = TRY(m_content_widget->try_add<Label>(move(subtitle)));
|
||||
m_body_label = m_content_widget->add<Label>(move(subtitle));
|
||||
m_body_label->set_text_alignment(Gfx::TextAlignment::TopLeft);
|
||||
|
||||
return {};
|
||||
|
|
|
@ -29,24 +29,24 @@ ErrorOr<void> WizardDialog::build()
|
|||
main_widget->set_fill_with_background_color(true);
|
||||
main_widget->set_layout<VerticalBoxLayout>(Margins {}, 0);
|
||||
|
||||
m_page_container_widget = TRY(main_widget->try_add<Widget>());
|
||||
m_page_container_widget = main_widget->add<Widget>();
|
||||
m_page_container_widget->set_fixed_size(500, 315);
|
||||
m_page_container_widget->set_layout<VerticalBoxLayout>();
|
||||
|
||||
auto separator = TRY(main_widget->try_add<SeparatorWidget>(Gfx::Orientation::Horizontal));
|
||||
separator->set_fixed_height(2);
|
||||
auto& separator = main_widget->add<SeparatorWidget>(Gfx::Orientation::Horizontal);
|
||||
separator.set_fixed_height(2);
|
||||
|
||||
auto nav_container_widget = TRY(main_widget->try_add<Widget>());
|
||||
nav_container_widget->set_layout<HorizontalBoxLayout>(Margins { 0, 10 }, 0);
|
||||
nav_container_widget->set_fixed_height(42);
|
||||
nav_container_widget->add_spacer();
|
||||
auto& nav_container_widget = main_widget->add<Widget>();
|
||||
nav_container_widget.set_layout<HorizontalBoxLayout>(Margins { 0, 10 }, 0);
|
||||
nav_container_widget.set_fixed_height(42);
|
||||
nav_container_widget.add_spacer();
|
||||
|
||||
m_back_button = TRY(nav_container_widget->try_add<DialogButton>("< Back"_string));
|
||||
m_back_button = nav_container_widget.add<DialogButton>("< Back"_string);
|
||||
m_back_button->on_click = [&](auto) {
|
||||
pop_page();
|
||||
};
|
||||
|
||||
m_next_button = TRY(nav_container_widget->try_add<DialogButton>("Next >"_string));
|
||||
m_next_button = nav_container_widget.add<DialogButton>("Next >"_string);
|
||||
m_next_button->on_click = [&](auto) {
|
||||
VERIFY(has_pages());
|
||||
|
||||
|
@ -60,10 +60,10 @@ ErrorOr<void> WizardDialog::build()
|
|||
push_page(*next_page);
|
||||
};
|
||||
|
||||
auto button_spacer = TRY(nav_container_widget->try_add<Widget>());
|
||||
button_spacer->set_fixed_width(10);
|
||||
auto& button_spacer = nav_container_widget.add<Widget>();
|
||||
button_spacer.set_fixed_width(10);
|
||||
|
||||
m_cancel_button = TRY(nav_container_widget->try_add<DialogButton>("Cancel"_string));
|
||||
m_cancel_button = nav_container_widget.add<DialogButton>("Cancel"_string);
|
||||
m_cancel_button->on_click = [&](auto) {
|
||||
handle_cancel();
|
||||
};
|
||||
|
|
|
@ -25,26 +25,26 @@ ErrorOr<void> WizardPage::build(String title, String subtitle)
|
|||
{
|
||||
set_layout<VerticalBoxLayout>(Margins {}, 0);
|
||||
|
||||
auto header_widget = TRY(try_add<Widget>());
|
||||
header_widget->set_fill_with_background_color(true);
|
||||
header_widget->set_background_role(Gfx::ColorRole::Base);
|
||||
header_widget->set_fixed_height(58);
|
||||
auto& header_widget = add<Widget>();
|
||||
header_widget.set_fill_with_background_color(true);
|
||||
header_widget.set_background_role(Gfx::ColorRole::Base);
|
||||
header_widget.set_fixed_height(58);
|
||||
|
||||
header_widget->set_layout<VerticalBoxLayout>(Margins { 15, 30, 0 });
|
||||
m_title_label = TRY(header_widget->try_add<Label>(move(title)));
|
||||
header_widget.set_layout<VerticalBoxLayout>(Margins { 15, 30, 0 });
|
||||
m_title_label = header_widget.add<Label>(move(title));
|
||||
m_title_label->set_font(Gfx::FontDatabase::default_font().bold_variant());
|
||||
m_title_label->set_fixed_height(m_title_label->font().pixel_size_rounded_up() + 2);
|
||||
m_title_label->set_text_alignment(Gfx::TextAlignment::TopLeft);
|
||||
|
||||
m_subtitle_label = TRY(header_widget->try_add<Label>(move(subtitle)));
|
||||
m_subtitle_label = header_widget.add<Label>(move(subtitle));
|
||||
m_subtitle_label->set_text_alignment(Gfx::TextAlignment::TopLeft);
|
||||
m_subtitle_label->set_fixed_height(m_subtitle_label->font().pixel_size_rounded_up());
|
||||
header_widget->add_spacer();
|
||||
header_widget.add_spacer();
|
||||
|
||||
auto separator = TRY(try_add<SeparatorWidget>(Gfx::Orientation::Horizontal));
|
||||
separator->set_fixed_height(2);
|
||||
auto& separator = add<SeparatorWidget>(Gfx::Orientation::Horizontal);
|
||||
separator.set_fixed_height(2);
|
||||
|
||||
m_body_widget = TRY(try_add<Widget>());
|
||||
m_body_widget = add<Widget>();
|
||||
m_body_widget->set_layout<VerticalBoxLayout>(20);
|
||||
|
||||
return {};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue