mirror of
https://github.com/RGBCube/serenity
synced 2025-07-28 15:37:46 +00:00
LibGUI+Everywhere: Use fallible Window::set_main_widget() everywhere :^)
Rip that bandaid off! This does the following, in one big, awkward jump: - Replace all uses of `set_main_widget<Foo>()` with the `try` version. - Remove `set_main_widget<Foo>()`. - Rename the `try` version to just be `set_main_widget` because it's now the only one. The majority of places that call `set_main_widget<Foo>()` are inside constructors, so this unfortunately gives us a big batch of new `release_value_but_fixme_should_propagate_errors()` calls.
This commit is contained in:
parent
d223477bc6
commit
0c24522635
121 changed files with 441 additions and 449 deletions
|
@ -45,14 +45,14 @@ CellTypeDialog::CellTypeDialog(Vector<Position> const& positions, Sheet& sheet,
|
|||
set_icon(parent->icon());
|
||||
resize(285, 360);
|
||||
|
||||
auto& main_widget = set_main_widget<GUI::Widget>();
|
||||
main_widget.set_layout<GUI::VerticalBoxLayout>().set_margins(4);
|
||||
main_widget.set_fill_with_background_color(true);
|
||||
auto main_widget = set_main_widget<GUI::Widget>().release_value_but_fixme_should_propagate_errors();
|
||||
main_widget->set_layout<GUI::VerticalBoxLayout>().set_margins(4);
|
||||
main_widget->set_fill_with_background_color(true);
|
||||
|
||||
auto& tab_widget = main_widget.add<GUI::TabWidget>();
|
||||
auto& tab_widget = main_widget->add<GUI::TabWidget>();
|
||||
setup_tabs(tab_widget, positions, sheet);
|
||||
|
||||
auto& buttonbox = main_widget.add<GUI::Widget>();
|
||||
auto& buttonbox = main_widget->add<GUI::Widget>();
|
||||
buttonbox.set_shrink_to_fit(true);
|
||||
auto& button_layout = buttonbox.set_layout<GUI::HorizontalBoxLayout>();
|
||||
button_layout.set_spacing(10);
|
||||
|
|
|
@ -67,11 +67,11 @@ HelpWindow::HelpWindow(GUI::Window* parent)
|
|||
set_title("Spreadsheet Functions Help");
|
||||
set_icon(Gfx::Bitmap::try_load_from_file("/res/icons/16x16/app-help.png"sv).release_value_but_fixme_should_propagate_errors());
|
||||
|
||||
auto& widget = set_main_widget<GUI::Widget>();
|
||||
widget.set_layout<GUI::VerticalBoxLayout>();
|
||||
widget.set_fill_with_background_color(true);
|
||||
auto widget = set_main_widget<GUI::Widget>().release_value_but_fixme_should_propagate_errors();
|
||||
widget->set_layout<GUI::VerticalBoxLayout>();
|
||||
widget->set_fill_with_background_color(true);
|
||||
|
||||
auto& splitter = widget.add<GUI::HorizontalSplitter>();
|
||||
auto& splitter = widget->add<GUI::HorizontalSplitter>();
|
||||
auto& left_frame = splitter.add<GUI::Frame>();
|
||||
left_frame.set_layout<GUI::VerticalBoxLayout>();
|
||||
// FIXME: Get rid of the magic number, dynamically calculate initial size based on left frame contents
|
||||
|
@ -112,14 +112,14 @@ HelpWindow::HelpWindow(GUI::Window* parent)
|
|||
window->set_title(DeprecatedString::formatted("Spreadsheet Help - Example {} for {}", name, entry));
|
||||
window->on_close = [window = window.ptr()] { window->remove_from_parent(); };
|
||||
|
||||
auto& widget = window->set_main_widget<SpreadsheetWidget>(window, NonnullRefPtrVector<Sheet> {}, false);
|
||||
auto sheet = Sheet::from_json(value.as_object(), widget.workbook());
|
||||
auto widget = window->set_main_widget<SpreadsheetWidget>(window, NonnullRefPtrVector<Sheet> {}, false).release_value_but_fixme_should_propagate_errors();
|
||||
auto sheet = Sheet::from_json(value.as_object(), widget->workbook());
|
||||
if (!sheet) {
|
||||
GUI::MessageBox::show_error(this, DeprecatedString::formatted("Corrupted example '{}' in '{}'", name, url.path()));
|
||||
return;
|
||||
}
|
||||
|
||||
widget.add_sheet(sheet.release_nonnull());
|
||||
widget->add_sheet(sheet.release_nonnull());
|
||||
window->show();
|
||||
} else if (url.host() == "doc") {
|
||||
auto entry = LexicalPath::basename(url.path());
|
||||
|
|
|
@ -81,11 +81,11 @@ SpreadsheetWidget::SpreadsheetWidget(GUI::Window& parent_window, NonnullRefPtrVe
|
|||
m_inline_documentation_window->set_rect(m_cell_value_editor->rect().translated(0, m_cell_value_editor->height() + 7).inflated(6, 6));
|
||||
m_inline_documentation_window->set_window_type(GUI::WindowType::Tooltip);
|
||||
m_inline_documentation_window->set_resizable(false);
|
||||
auto& inline_widget = m_inline_documentation_window->set_main_widget<GUI::Frame>();
|
||||
inline_widget.set_fill_with_background_color(true);
|
||||
inline_widget.set_layout<GUI::VerticalBoxLayout>().set_margins(4);
|
||||
inline_widget.set_frame_shape(Gfx::FrameShape::Box);
|
||||
m_inline_documentation_label = inline_widget.add<GUI::Label>();
|
||||
auto inline_widget = m_inline_documentation_window->set_main_widget<GUI::Frame>().release_value_but_fixme_should_propagate_errors();
|
||||
inline_widget->set_fill_with_background_color(true);
|
||||
inline_widget->set_layout<GUI::VerticalBoxLayout>().set_margins(4);
|
||||
inline_widget->set_frame_shape(Gfx::FrameShape::Box);
|
||||
m_inline_documentation_label = inline_widget->add<GUI::Label>();
|
||||
m_inline_documentation_label->set_fill_with_background_color(true);
|
||||
m_inline_documentation_label->set_autosize(false);
|
||||
m_inline_documentation_label->set_text_alignment(Gfx::TextAlignment::CenterLeft);
|
||||
|
|
|
@ -58,13 +58,13 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
window->resize(640, 480);
|
||||
window->set_icon(app_icon.bitmap_for_size(16));
|
||||
|
||||
auto& spreadsheet_widget = window->set_main_widget<Spreadsheet::SpreadsheetWidget>(*window, NonnullRefPtrVector<Spreadsheet::Sheet> {}, filename == nullptr);
|
||||
auto spreadsheet_widget = TRY(window->set_main_widget<Spreadsheet::SpreadsheetWidget>(*window, NonnullRefPtrVector<Spreadsheet::Sheet> {}, filename == nullptr));
|
||||
|
||||
spreadsheet_widget.initialize_menubar(*window);
|
||||
spreadsheet_widget.update_window_title();
|
||||
spreadsheet_widget->initialize_menubar(*window);
|
||||
spreadsheet_widget->update_window_title();
|
||||
|
||||
window->on_close_request = [&]() -> GUI::Window::CloseRequestDecision {
|
||||
if (spreadsheet_widget.request_close())
|
||||
if (spreadsheet_widget->request_close())
|
||||
return GUI::Window::CloseRequestDecision::Close;
|
||||
return GUI::Window::CloseRequestDecision::StayOpen;
|
||||
};
|
||||
|
@ -73,7 +73,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
|
||||
if (filename) {
|
||||
auto file = TRY(FileSystemAccessClient::Client::the().try_request_file_read_only_approved(window, filename));
|
||||
spreadsheet_widget.load_file(file);
|
||||
spreadsheet_widget->load_file(file);
|
||||
}
|
||||
|
||||
return app->exec();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue