From e39adc4772dbc575fc8209130129270ceea24229 Mon Sep 17 00:00:00 2001 From: Karol Kosek Date: Sat, 11 Feb 2023 20:51:04 +0100 Subject: [PATCH] Userland: Set Button text using the new String class --- Userland/Applets/Audio/main.cpp | 4 ++-- Userland/Applications/Assistant/main.cpp | 2 +- .../Browser/BookmarksBarWidget.cpp | 2 +- .../Applications/Browser/DownloadWidget.cpp | 8 +++---- .../Calculator/RoundingDialog.cpp | 4 ++-- .../Applications/Calendar/AddEventDialog.cpp | 2 +- .../FileManager/PropertiesWindow.cpp | 8 +++---- .../FileManager/PropertiesWindow.h | 2 +- .../Applications/HexEditor/FindDialog.cpp | 2 +- .../KeyboardMapper/KeyboardMapperWidget.cpp | 18 +++++++-------- .../KeyboardMapper/KeyboardMapperWidget.h | 2 +- .../PDFViewer/PDFViewerWidget.cpp | 4 ++-- .../PixelPaint/CreateNewImageDialog.cpp | 6 ++--- .../PixelPaint/CreateNewLayerDialog.cpp | 4 ++-- .../Applications/PixelPaint/FilterParams.h | 6 ++--- .../PixelPaint/Filters/FastBoxBlur.cpp | 6 ++--- .../PixelPaint/LayerPropertiesWidget.cpp | 2 +- .../PixelPaint/Tools/EllipseTool.cpp | 6 ++--- .../PixelPaint/Tools/EraseTool.cpp | 6 ++--- .../PixelPaint/Tools/GradientTool.cpp | 2 +- .../PixelPaint/Tools/LineTool.cpp | 2 +- .../PixelPaint/Tools/MoveTool.cpp | 4 ++-- .../PixelPaint/Tools/PickerTool.cpp | 2 +- .../PixelPaint/Tools/RectangleTool.cpp | 10 ++++---- .../PixelPaint/Tools/TextTool.cpp | 2 +- .../Spreadsheet/CellTypeDialog.cpp | 6 ++--- Userland/Applications/Terminal/main.cpp | 4 ++-- .../Applications/ThemeEditor/MainWidget.cpp | 2 +- .../DevTools/HackStudio/FindInFilesWidget.cpp | 2 +- Userland/DevTools/Inspector/main.cpp | 2 +- Userland/DevTools/Profiler/main.cpp | 4 ++-- Userland/Games/Hearts/Game.cpp | 12 +++++----- Userland/Games/Hearts/SettingsDialog.cpp | 4 ++-- Userland/Libraries/LibGUI/Action.cpp | 2 +- Userland/Libraries/LibGUI/Breadcrumbbar.cpp | 2 +- Userland/Libraries/LibGUI/ColorPicker.cpp | 6 ++--- Userland/Libraries/LibGUI/FilePicker.cpp | 4 ++-- Userland/Libraries/LibGUI/FilePicker.h | 8 +++---- .../LibGUI/IncrementalSearchBanner.cpp | 2 +- Userland/Libraries/LibGUI/InputBox.cpp | 4 ++-- Userland/Libraries/LibGUI/MessageBox.cpp | 23 +++++++++++-------- Userland/Libraries/LibGUI/ProcessChooser.cpp | 6 ++--- Userland/Libraries/LibGUI/ProcessChooser.h | 5 ++-- Userland/Libraries/LibGUI/SettingsWindow.cpp | 8 +++---- Userland/Libraries/LibGUI/Toolbar.cpp | 6 ++--- .../Libraries/LibGUI/Wizards/WizardDialog.cpp | 13 +++++++---- Userland/Services/Taskbar/ShutdownDialog.cpp | 6 ++--- Userland/Services/Taskbar/TaskbarButton.cpp | 10 ++++---- Userland/Services/Taskbar/TaskbarWindow.cpp | 4 ++-- 49 files changed, 134 insertions(+), 127 deletions(-) diff --git a/Userland/Applets/Audio/main.cpp b/Userland/Applets/Audio/main.cpp index a7607a9bdd..01135dd17d 100644 --- a/Userland/Applets/Audio/main.cpp +++ b/Userland/Applets/Audio/main.cpp @@ -87,7 +87,7 @@ private: m_root_container->layout()->set_spacing(0); m_root_container->set_frame_shape(Gfx::FrameShape::Window); - m_percent_box = m_root_container->add("\xE2\x84\xB9"); + m_percent_box = m_root_container->add(String::from_utf8_short_string("\xE2\x84\xB9"sv)); m_percent_box->set_tooltip(m_show_percent ? "Hide percent" : "Show percent"); m_percent_box->set_checked(m_show_percent); m_percent_box->on_checked = [&](bool show_percent) { @@ -112,7 +112,7 @@ private: update(); }; - m_mute_box = m_root_container->add("\xE2\x9D\x8C"); + m_mute_box = m_root_container->add(String::from_utf8_short_string("\xE2\x9D\x8C"sv)); m_mute_box->set_checked(m_audio_muted); m_mute_box->set_tooltip(m_audio_muted ? "Unmute" : "Mute"); m_mute_box->on_checked = [&](bool is_muted) { diff --git a/Userland/Applications/Assistant/main.cpp b/Userland/Applications/Assistant/main.cpp index 55e04052da..8a3da7be54 100644 --- a/Userland/Applications/Assistant/main.cpp +++ b/Userland/Applications/Assistant/main.cpp @@ -256,7 +256,7 @@ ErrorOr serenity_main(Main::Arguments arguments) auto& result = app_state.results[i]; auto& match = results_container.add(); match.set_icon(result.bitmap()); - match.set_text_deprecated(move(result.title())); + match.set_text(String::from_deprecated_string(result.title()).release_value_but_fixme_should_propagate_errors()); match.set_tooltip(move(result.tooltip())); match.on_click = [&result](auto) { result.activate(); diff --git a/Userland/Applications/Browser/BookmarksBarWidget.cpp b/Userland/Applications/Browser/BookmarksBarWidget.cpp index 069de668fc..9166057b48 100644 --- a/Userland/Applications/Browser/BookmarksBarWidget.cpp +++ b/Userland/Applications/Browser/BookmarksBarWidget.cpp @@ -205,7 +205,7 @@ void BookmarksBarWidget::model_did_update(unsigned) m_bookmarks.append(button); button.set_button_style(Gfx::ButtonStyle::Coolbar); - button.set_text_deprecated(title); + button.set_text(String::from_deprecated_string(title).release_value_but_fixme_should_propagate_errors()); button.set_icon(g_icon_bag.filetype_html); button.set_fixed_size(font().width(title) + 32, 20); button.set_relative_rect(rect); diff --git a/Userland/Applications/Browser/DownloadWidget.cpp b/Userland/Applications/Browser/DownloadWidget.cpp index 19a679b148..db3a1fab8d 100644 --- a/Userland/Applications/Browser/DownloadWidget.cpp +++ b/Userland/Applications/Browser/DownloadWidget.cpp @@ -86,7 +86,7 @@ DownloadWidget::DownloadWidget(const URL& url) destination_label.set_text_alignment(Gfx::TextAlignment::CenterLeft); destination_label.set_fixed_height(16); - m_close_on_finish_checkbox = add("Close when finished"); + m_close_on_finish_checkbox = add(String::from_utf8("Close when finished"sv).release_value_but_fixme_should_propagate_errors()); m_close_on_finish_checkbox->set_checked(close_on_finish); m_close_on_finish_checkbox->on_checked = [&](bool checked) { @@ -96,7 +96,7 @@ DownloadWidget::DownloadWidget(const URL& url) auto& button_container = add(); auto& button_container_layout = button_container.set_layout(); button_container_layout.add_spacer(); - m_cancel_button = button_container.add("Cancel"); + m_cancel_button = button_container.add(String::from_utf8_short_string("Cancel"sv)); m_cancel_button->set_fixed_size(100, 22); m_cancel_button->on_click = [this](auto) { bool success = m_download->stop(); @@ -104,7 +104,7 @@ DownloadWidget::DownloadWidget(const URL& url) window()->close(); }; - m_close_button = button_container.add("OK"); + m_close_button = button_container.add(String::from_utf8_short_string("OK"sv)); m_close_button->set_enabled(false); m_close_button->set_fixed_size(100, 22); m_close_button->on_click = [this](auto) { @@ -153,7 +153,7 @@ void DownloadWidget::did_finish(bool success) m_browser_image->load_from_file("/res/graphics/download-finished.gif"sv); window()->set_title("Download finished!"); m_close_button->set_enabled(true); - m_cancel_button->set_text_deprecated("Open in Folder"); + m_cancel_button->set_text(String::from_utf8("Open in Folder"sv).release_value_but_fixme_should_propagate_errors()); m_cancel_button->on_click = [this](auto) { Desktop::Launcher::open(URL::create_with_file_scheme(Core::StandardPaths::downloads_directory(), m_url.basename())); window()->close(); diff --git a/Userland/Applications/Calculator/RoundingDialog.cpp b/Userland/Applications/Calculator/RoundingDialog.cpp index 3e2e0c3e50..8bda2d898f 100644 --- a/Userland/Applications/Calculator/RoundingDialog.cpp +++ b/Userland/Applications/Calculator/RoundingDialog.cpp @@ -46,8 +46,8 @@ RoundingDialog::RoundingDialog(GUI::Window* parent_window, StringView title) m_rounding_spinbox = GUI::SpinBox::construct(); m_buttons_container = GUI::Widget::construct(); - m_ok_button = GUI::DialogButton::construct("OK"); - m_cancel_button = GUI::DialogButton::construct("Cancel"); + m_ok_button = GUI::DialogButton::construct(String::from_utf8_short_string("OK"sv)); + m_cancel_button = GUI::DialogButton::construct(String::from_utf8_short_string("Cancel"sv)); main_widget->add_child(*m_rounding_spinbox); main_widget->add_child(*m_buttons_container); diff --git a/Userland/Applications/Calendar/AddEventDialog.cpp b/Userland/Applications/Calendar/AddEventDialog.cpp index 058bd52cdd..945ad8760f 100644 --- a/Userland/Applications/Calendar/AddEventDialog.cpp +++ b/Userland/Applications/Calendar/AddEventDialog.cpp @@ -93,7 +93,7 @@ AddEventDialog::AddEventDialog(Core::DateTime date_time, Window* parent_window) button_container.set_fixed_height(20); button_container.set_layout(); button_container.layout()->add_spacer(); - auto& ok_button = button_container.add("OK"); + auto& ok_button = button_container.add(String::from_utf8_short_string("OK"sv)); ok_button.set_fixed_size(80, 20); ok_button.on_click = [this](auto) { dbgln("TODO: Add event icon on specific tile"); diff --git a/Userland/Applications/FileManager/PropertiesWindow.cpp b/Userland/Applications/FileManager/PropertiesWindow.cpp index 310f218137..75632ab82d 100644 --- a/Userland/Applications/FileManager/PropertiesWindow.cpp +++ b/Userland/Applications/FileManager/PropertiesWindow.cpp @@ -156,17 +156,17 @@ ErrorOr PropertiesWindow::create_widgets(bool disable_rename) button_widget->layout()->add_spacer(); - auto ok_button = TRY(make_button("OK", button_widget)); + auto ok_button = TRY(make_button(String::from_utf8_short_string("OK"sv), button_widget)); ok_button->on_click = [this](auto) { if (apply_changes()) close(); }; - auto cancel_button = TRY(make_button("Cancel", button_widget)); + auto cancel_button = TRY(make_button(String::from_utf8_short_string("Cancel"sv), button_widget)); cancel_button->on_click = [this](auto) { close(); }; - m_apply_button = TRY(make_button("Apply", button_widget)); + m_apply_button = TRY(make_button(String::from_utf8_short_string("Apply"sv), button_widget)); m_apply_button->on_click = [this](auto) { apply_changes(); }; m_apply_button->set_enabled(false); @@ -268,7 +268,7 @@ ErrorOr PropertiesWindow::setup_permission_checkboxes(GUI::CheckBox& box_r return {}; } -ErrorOr> PropertiesWindow::make_button(DeprecatedString text, GUI::Widget& parent) +ErrorOr> PropertiesWindow::make_button(String text, GUI::Widget& parent) { auto button = TRY(parent.try_add(text)); button->set_fixed_size(70, 22); diff --git a/Userland/Applications/FileManager/PropertiesWindow.h b/Userland/Applications/FileManager/PropertiesWindow.h index ae6ab20819..030342d074 100644 --- a/Userland/Applications/FileManager/PropertiesWindow.h +++ b/Userland/Applications/FileManager/PropertiesWindow.h @@ -79,7 +79,7 @@ private: return "Unknown"; } - static ErrorOr> make_button(DeprecatedString, GUI::Widget& parent); + static ErrorOr> make_button(String, GUI::Widget& parent); ErrorOr setup_permission_checkboxes(GUI::CheckBox& box_read, GUI::CheckBox& box_write, GUI::CheckBox& box_execute, PermissionMasks masks, mode_t mode); void permission_changed(mode_t mask, bool set); bool apply_changes(); diff --git a/Userland/Applications/HexEditor/FindDialog.cpp b/Userland/Applications/HexEditor/FindDialog.cpp index 739a31dbe2..fb3098010c 100644 --- a/Userland/Applications/HexEditor/FindDialog.cpp +++ b/Userland/Applications/HexEditor/FindDialog.cpp @@ -112,7 +112,7 @@ FindDialog::FindDialog() auto action = options[i]; auto& radio = radio_container.add(); radio.set_enabled(action.enabled); - radio.set_text_deprecated(action.title); + radio.set_text(String::from_deprecated_string(action.title).release_value_but_fixme_should_propagate_errors()); radio.on_checked = [this, i](auto) { m_selected_option = options[i].opt; diff --git a/Userland/Applications/KeyboardMapper/KeyboardMapperWidget.cpp b/Userland/Applications/KeyboardMapper/KeyboardMapperWidget.cpp index 85bc04b8ce..a602dbaf10 100644 --- a/Userland/Applications/KeyboardMapper/KeyboardMapperWidget.cpp +++ b/Userland/Applications/KeyboardMapper/KeyboardMapperWidget.cpp @@ -52,7 +52,7 @@ void KeyboardMapperWidget::create_frame() auto& tmp_button = main_widget.add(); tmp_button.set_relative_rect(rect); - tmp_button.set_text_deprecated(keys[i].name); + tmp_button.set_text(String::from_deprecated_string(keys[i].name).release_value_but_fixme_should_propagate_errors()); tmp_button.set_enabled(keys[i].enabled); tmp_button.on_click = [this, &tmp_button]() { @@ -64,7 +64,7 @@ void KeyboardMapperWidget::create_frame() auto index = keys[i].map_index; VERIFY(index > 0); - tmp_button.set_text_deprecated(value); + tmp_button.set_text(String::from_deprecated_string(value).release_value_but_fixme_should_propagate_errors()); u32* map = map_from_name(m_current_map_name); if (value.length() == 0) @@ -89,16 +89,16 @@ void KeyboardMapperWidget::create_frame() m_map_group->set_layout(); m_map_group->set_fixed_width(450); - add_map_radio_button("map"sv, "Default"sv); - add_map_radio_button("shift_map"sv, "Shift"sv); - add_map_radio_button("altgr_map"sv, "AltGr"sv); - add_map_radio_button("alt_map"sv, "Alt"sv); - add_map_radio_button("shift_altgr_map"sv, "Shift+AltGr"sv); + add_map_radio_button("map"sv, String::from_utf8_short_string("Default"sv)); + add_map_radio_button("shift_map"sv, String::from_utf8_short_string("Shift"sv)); + add_map_radio_button("altgr_map"sv, String::from_utf8_short_string("AltGr"sv)); + add_map_radio_button("alt_map"sv, String::from_utf8_short_string("Alt"sv)); + add_map_radio_button("shift_altgr_map"sv, String::from_utf8("Shift+AltGr"sv).release_value_but_fixme_should_propagate_errors()); bottom_widget.layout()->add_spacer(); } -void KeyboardMapperWidget::add_map_radio_button(const StringView map_name, const StringView button_text) +void KeyboardMapperWidget::add_map_radio_button(const StringView map_name, String button_text) { auto& map_radio_button = m_map_group->add(button_text); map_radio_button.set_name(map_name); @@ -248,7 +248,7 @@ void KeyboardMapperWidget::set_current_map(const DeprecatedString current_map) StringBuilder sb; sb.append_code_point(map[index]); - m_keys.at(k)->set_text_deprecated(sb.to_deprecated_string()); + m_keys.at(k)->set_text(sb.to_string().release_value_but_fixme_should_propagate_errors()); } this->update(); diff --git a/Userland/Applications/KeyboardMapper/KeyboardMapperWidget.h b/Userland/Applications/KeyboardMapper/KeyboardMapperWidget.h index 5ada870a38..fcd14be56e 100644 --- a/Userland/Applications/KeyboardMapper/KeyboardMapperWidget.h +++ b/Userland/Applications/KeyboardMapper/KeyboardMapperWidget.h @@ -39,7 +39,7 @@ private: Vector m_keys; RefPtr m_map_group; - void add_map_radio_button(const StringView map_name, const StringView button_text); + void add_map_radio_button(const StringView map_name, String button_text); u32* map_from_name(const StringView map_name); void update_modifier_radio_buttons(GUI::KeyEvent&); diff --git a/Userland/Applications/PDFViewer/PDFViewerWidget.cpp b/Userland/Applications/PDFViewer/PDFViewerWidget.cpp index a0b72ebbbb..1f4d91b376 100644 --- a/Userland/Applications/PDFViewer/PDFViewerWidget.cpp +++ b/Userland/Applications/PDFViewer/PDFViewerWidget.cpp @@ -340,11 +340,11 @@ void PDFViewerWidget::initialize_toolbar(GUI::Toolbar& toolbar) toolbar.add_separator(); m_show_clipping_paths = toolbar.add(); - m_show_clipping_paths->set_text_deprecated("Show clipping paths"); + m_show_clipping_paths->set_text(String::from_utf8("Show clipping paths"sv).release_value_but_fixme_should_propagate_errors()); m_show_clipping_paths->set_checked(m_viewer->show_clipping_paths(), GUI::AllowCallback::No); m_show_clipping_paths->on_checked = [&](auto checked) { m_viewer->set_show_clipping_paths(checked); }; m_show_images = toolbar.add(); - m_show_images->set_text_deprecated("Show images"); + m_show_images->set_text(String::from_utf8("Show images"sv).release_value_but_fixme_should_propagate_errors()); m_show_images->set_checked(m_viewer->show_images(), GUI::AllowCallback::No); m_show_images->on_checked = [&](auto checked) { m_viewer->set_show_images(checked); }; } diff --git a/Userland/Applications/PixelPaint/CreateNewImageDialog.cpp b/Userland/Applications/PixelPaint/CreateNewImageDialog.cpp index 9fc5d1ae8a..51999deca5 100644 --- a/Userland/Applications/PixelPaint/CreateNewImageDialog.cpp +++ b/Userland/Applications/PixelPaint/CreateNewImageDialog.cpp @@ -111,12 +111,12 @@ CreateNewImageDialog::CreateNewImageDialog(GUI::Window* parent_window) }; auto& set_defaults_checkbox = main_widget->add(); - set_defaults_checkbox.set_text_deprecated("Use these settings as default"); + set_defaults_checkbox.set_text(String::from_utf8("Use these settings as default"sv).release_value_but_fixme_should_propagate_errors()); auto& button_container = main_widget->add(); button_container.set_layout(); - auto& ok_button = button_container.add("OK"); + auto& ok_button = button_container.add(String::from_utf8_short_string("OK"sv)); ok_button.on_click = [&](auto) { if (set_defaults_checkbox.is_checked()) { Config::write_string("PixelPaint"sv, "NewImage"sv, "Name"sv, m_image_name); @@ -129,7 +129,7 @@ CreateNewImageDialog::CreateNewImageDialog(GUI::Window* parent_window) }; ok_button.set_default(true); - auto& cancel_button = button_container.add("Cancel"); + auto& cancel_button = button_container.add(String::from_utf8_short_string("Cancel"sv)); cancel_button.on_click = [this](auto) { done(ExecResult::Cancel); }; diff --git a/Userland/Applications/PixelPaint/CreateNewLayerDialog.cpp b/Userland/Applications/PixelPaint/CreateNewLayerDialog.cpp index f8fd22806f..f22569127a 100644 --- a/Userland/Applications/PixelPaint/CreateNewLayerDialog.cpp +++ b/Userland/Applications/PixelPaint/CreateNewLayerDialog.cpp @@ -49,13 +49,13 @@ CreateNewLayerDialog::CreateNewLayerDialog(Gfx::IntSize suggested_size, GUI::Win auto& button_container = main_widget->add(); button_container.set_layout(); - auto& ok_button = button_container.add("OK"); + auto& ok_button = button_container.add(String::from_utf8_short_string("OK"sv)); ok_button.on_click = [this](auto) { done(ExecResult::OK); }; ok_button.set_default(true); - auto& cancel_button = button_container.add("Cancel"); + auto& cancel_button = button_container.add(String::from_utf8_short_string("Cancel"sv)); cancel_button.on_click = [this](auto) { done(ExecResult::Cancel); }; diff --git a/Userland/Applications/PixelPaint/FilterParams.h b/Userland/Applications/PixelPaint/FilterParams.h index 58568ccf26..30c14168aa 100644 --- a/Userland/Applications/PixelPaint/FilterParams.h +++ b/Userland/Applications/PixelPaint/FilterParams.h @@ -81,13 +81,13 @@ private: } } - auto& norm_checkbox = main_widget->template add("Normalize"); + auto& norm_checkbox = main_widget->template add(String::from_utf8("Normalize"sv).release_value_but_fixme_should_propagate_errors()); norm_checkbox.set_checked(false); - auto& wrap_checkbox = main_widget->template add("Wrap"); + auto& wrap_checkbox = main_widget->template add(String::from_utf8_short_string("Wrap"sv)); wrap_checkbox.set_checked(m_should_wrap); - auto& button = main_widget->template add("Done"); + auto& button = main_widget->template add(String::from_utf8_short_string("Done"sv)); button.on_click = [&](auto) { m_should_wrap = wrap_checkbox.is_checked(); if (norm_checkbox.is_checked()) diff --git a/Userland/Applications/PixelPaint/Filters/FastBoxBlur.cpp b/Userland/Applications/PixelPaint/Filters/FastBoxBlur.cpp index a5279c223c..7574b984ce 100644 --- a/Userland/Applications/PixelPaint/Filters/FastBoxBlur.cpp +++ b/Userland/Applications/PixelPaint/Filters/FastBoxBlur.cpp @@ -47,7 +47,7 @@ RefPtr FastBoxBlur::get_settings_widget() name_label.set_text_alignment(Gfx::TextAlignment::CenterLeft); name_label.set_fixed_height(10); - auto& asymmetric_checkbox = m_settings_widget->add("Use Asymmetric Radii"); + auto& asymmetric_checkbox = m_settings_widget->add(String::from_utf8("Use Asymmetric Radii"sv).release_value_but_fixme_should_propagate_errors()); asymmetric_checkbox.set_checked(false); asymmetric_checkbox.set_fixed_height(15); asymmetric_checkbox.on_checked = [&](bool checked) { @@ -68,7 +68,7 @@ RefPtr FastBoxBlur::get_settings_widget() update_preview(); }; - m_vector_checkbox = m_settings_widget->add("Use Direction and magnitude"); + m_vector_checkbox = m_settings_widget->add(String::from_utf8("Use Direction and magnitude"sv).release_value_but_fixme_should_propagate_errors()); m_vector_checkbox->set_checked(false); m_vector_checkbox->set_visible(false); m_vector_checkbox->set_fixed_height(15); @@ -182,7 +182,7 @@ RefPtr FastBoxBlur::get_settings_widget() gaussian_container.set_layout(); gaussian_container.layout()->set_margins({ 4, 0, 4, 0 }); - m_gaussian_checkbox = gaussian_container.add("Approximate Gaussian Blur"); + m_gaussian_checkbox = gaussian_container.add(String::from_utf8("Approximate Gaussian Blur"sv).release_value_but_fixme_should_propagate_errors()); m_gaussian_checkbox->set_checked(m_approximate_gauss); m_gaussian_checkbox->set_tooltip("A real gaussian blur can be approximated by running the box blur multiple times with different weights."); m_gaussian_checkbox->on_checked = [this](bool checked) { diff --git a/Userland/Applications/PixelPaint/LayerPropertiesWidget.cpp b/Userland/Applications/PixelPaint/LayerPropertiesWidget.cpp index c0addb4d96..96ec8d72da 100644 --- a/Userland/Applications/PixelPaint/LayerPropertiesWidget.cpp +++ b/Userland/Applications/PixelPaint/LayerPropertiesWidget.cpp @@ -58,7 +58,7 @@ LayerPropertiesWidget::LayerPropertiesWidget() m_layer->set_opacity_percent(value); }; - m_visibility_checkbox = group_box.add("Visible"); + m_visibility_checkbox = group_box.add(String::from_utf8_short_string("Visible"sv)); m_visibility_checkbox->set_fixed_height(20); m_visibility_checkbox->on_checked = [this](bool checked) { if (m_layer) diff --git a/Userland/Applications/PixelPaint/Tools/EllipseTool.cpp b/Userland/Applications/PixelPaint/Tools/EllipseTool.cpp index 893005277c..d349ae0705 100644 --- a/Userland/Applications/PixelPaint/Tools/EllipseTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/EllipseTool.cpp @@ -157,9 +157,9 @@ GUI::Widget* EllipseTool::get_properties_widget() auto& mode_radio_container = mode_container.add(); mode_radio_container.set_layout(); - auto& outline_mode_radio = mode_radio_container.add("Outline"); - auto& fill_mode_radio = mode_radio_container.add("Fill"); - auto& aa_enable_checkbox = mode_radio_container.add("Anti-alias"); + auto& outline_mode_radio = mode_radio_container.add(String::from_utf8_short_string("Outline"sv)); + auto& fill_mode_radio = mode_radio_container.add(String::from_utf8_short_string("Fill"sv)); + auto& aa_enable_checkbox = mode_radio_container.add(String::from_utf8("Anti-alias"sv).release_value_but_fixme_should_propagate_errors()); aa_enable_checkbox.on_checked = [&](bool checked) { m_antialias_enabled = checked; diff --git a/Userland/Applications/PixelPaint/Tools/EraseTool.cpp b/Userland/Applications/PixelPaint/Tools/EraseTool.cpp index 0b83e5dd30..8d22fa4836 100644 --- a/Userland/Applications/PixelPaint/Tools/EraseTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/EraseTool.cpp @@ -100,7 +100,7 @@ GUI::Widget* EraseTool::get_properties_widget() auto& use_secondary_color_checkbox = secondary_color_container.add(); use_secondary_color_checkbox.set_checked(m_use_secondary_color); - use_secondary_color_checkbox.set_text_deprecated("Use secondary color"); + use_secondary_color_checkbox.set_text(String::from_utf8("Use secondary color"sv).release_value_but_fixme_should_propagate_errors()); use_secondary_color_checkbox.on_checked = [&](bool checked) { m_use_secondary_color = checked; }; @@ -114,8 +114,8 @@ GUI::Widget* EraseTool::get_properties_widget() auto& mode_radio_container = mode_container.add(); mode_radio_container.set_layout(); - auto& pencil_mode_radio = mode_radio_container.add("Pencil"); - auto& brush_mode_radio = mode_radio_container.add("Brush"); + auto& pencil_mode_radio = mode_radio_container.add(String::from_utf8_short_string("Pencil"sv)); + auto& brush_mode_radio = mode_radio_container.add(String::from_utf8_short_string("Brush"sv)); pencil_mode_radio.on_checked = [&](bool) { m_draw_mode = DrawMode::Pencil; diff --git a/Userland/Applications/PixelPaint/Tools/GradientTool.cpp b/Userland/Applications/PixelPaint/Tools/GradientTool.cpp index cfe591dac8..9d035f00ae 100644 --- a/Userland/Applications/PixelPaint/Tools/GradientTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/GradientTool.cpp @@ -203,7 +203,7 @@ GUI::Widget* GradientTool::get_properties_widget() auto& button_container_layout = button_container.set_layout(); button_container_layout.add_spacer(); - auto& apply_button = button_container.add("Apply"); + auto& apply_button = button_container.add(String::from_utf8_short_string("Apply"sv)); apply_button.on_click = [this](auto) { rasterize_gradient(); }; diff --git a/Userland/Applications/PixelPaint/Tools/LineTool.cpp b/Userland/Applications/PixelPaint/Tools/LineTool.cpp index 0d08b4bd3e..da7fd8db3c 100644 --- a/Userland/Applications/PixelPaint/Tools/LineTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/LineTool.cpp @@ -150,7 +150,7 @@ GUI::Widget* LineTool::get_properties_widget() mode_label.set_text_alignment(Gfx::TextAlignment::CenterLeft); mode_label.set_fixed_size(80, 20); - auto& aa_enable_checkbox = mode_container.add("Anti-alias"); + auto& aa_enable_checkbox = mode_container.add(String::from_utf8("Anti-alias"sv).release_value_but_fixme_should_propagate_errors()); aa_enable_checkbox.on_checked = [&](bool checked) { m_antialias_enabled = checked; }; diff --git a/Userland/Applications/PixelPaint/Tools/MoveTool.cpp b/Userland/Applications/PixelPaint/Tools/MoveTool.cpp index acbe1d8618..0816e3939d 100644 --- a/Userland/Applications/PixelPaint/Tools/MoveTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/MoveTool.cpp @@ -304,9 +304,9 @@ GUI::Widget* MoveTool::get_properties_widget() auto& mode_radio_container = selection_mode_container.add(); mode_radio_container.set_layout(); - m_selection_mode_foreground = mode_radio_container.add("Foreground"); + m_selection_mode_foreground = mode_radio_container.add(String::from_utf8("Foreground"sv).release_value_but_fixme_should_propagate_errors()); - m_selection_mode_active = mode_radio_container.add("Active Layer"); + m_selection_mode_active = mode_radio_container.add(String::from_utf8("Active Layer"sv).release_value_but_fixme_should_propagate_errors()); m_selection_mode_foreground->on_checked = [&](bool) { m_layer_selection_mode = LayerSelectionMode::ForegroundLayer; diff --git a/Userland/Applications/PixelPaint/Tools/PickerTool.cpp b/Userland/Applications/PixelPaint/Tools/PickerTool.cpp index 6c986efbf2..e78bc6852e 100644 --- a/Userland/Applications/PixelPaint/Tools/PickerTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/PickerTool.cpp @@ -46,7 +46,7 @@ GUI::Widget* PickerTool::get_properties_widget() m_properties_widget = GUI::Widget::construct(); m_properties_widget->set_layout(); - auto& sample_checkbox = m_properties_widget->add("Sample all layers"); + auto& sample_checkbox = m_properties_widget->add(String::from_utf8("Sample all layers"sv).release_value_but_fixme_should_propagate_errors()); sample_checkbox.set_checked(m_sample_all_layers); sample_checkbox.on_checked = [&](bool value) { m_sample_all_layers = value; diff --git a/Userland/Applications/PixelPaint/Tools/RectangleTool.cpp b/Userland/Applications/PixelPaint/Tools/RectangleTool.cpp index f49f169ea5..7c08ff7273 100644 --- a/Userland/Applications/PixelPaint/Tools/RectangleTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/RectangleTool.cpp @@ -187,12 +187,12 @@ GUI::Widget* RectangleTool::get_properties_widget() auto& mode_radio_container = mode_container.add(); mode_radio_container.set_layout(); - auto& outline_mode_radio = mode_radio_container.add("Outline"); - auto& fill_mode_radio = mode_radio_container.add("Fill"); - auto& gradient_mode_radio = mode_radio_container.add("Gradient"); + auto& outline_mode_radio = mode_radio_container.add(String::from_utf8_short_string("Outline"sv)); + auto& fill_mode_radio = mode_radio_container.add(String::from_utf8_short_string("Fill"sv)); + auto& gradient_mode_radio = mode_radio_container.add(String::from_utf8("Gradient"sv).release_value_but_fixme_should_propagate_errors()); mode_radio_container.set_fixed_width(70); - auto& rounded_corners_mode_radio = mode_radio_container.add("Rounded"); + auto& rounded_corners_mode_radio = mode_radio_container.add(String::from_utf8_short_string("Rounded"sv)); outline_mode_radio.on_checked = [&, update_slider](bool) { m_fill_mode = FillMode::Outline; @@ -215,7 +215,7 @@ GUI::Widget* RectangleTool::get_properties_widget() auto& mode_extras_container = mode_container.add(); mode_extras_container.set_layout(); - auto& aa_enable_checkbox = mode_extras_container.add("Anti-alias"); + auto& aa_enable_checkbox = mode_extras_container.add(String::from_utf8("Anti-alias"sv).release_value_but_fixme_should_propagate_errors()); aa_enable_checkbox.on_checked = [&](bool checked) { m_antialias_enabled = checked; }; diff --git a/Userland/Applications/PixelPaint/Tools/TextTool.cpp b/Userland/Applications/PixelPaint/Tools/TextTool.cpp index 362553ebbf..f03a0d30f5 100644 --- a/Userland/Applications/PixelPaint/Tools/TextTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/TextTool.cpp @@ -112,7 +112,7 @@ GUI::Widget* TextTool::get_properties_widget() m_font_label = m_properties_widget->add(m_selected_font->human_readable_name()); - auto& change_font_button = m_properties_widget->add("Change Font..."); + auto& change_font_button = m_properties_widget->add(String::from_utf8("Change Font..."sv).release_value_but_fixme_should_propagate_errors()); change_font_button.on_click = [&](auto) { auto picker = GUI::FontPicker::construct(nullptr, m_selected_font, false); if (picker->exec() == GUI::Dialog::ExecResult::OK) { diff --git a/Userland/Applications/Spreadsheet/CellTypeDialog.cpp b/Userland/Applications/Spreadsheet/CellTypeDialog.cpp index 85fbe7f43c..c1ef552e9c 100644 --- a/Userland/Applications/Spreadsheet/CellTypeDialog.cpp +++ b/Userland/Applications/Spreadsheet/CellTypeDialog.cpp @@ -57,7 +57,7 @@ CellTypeDialog::CellTypeDialog(Vector const& positions, Sheet& sheet, auto& button_layout = buttonbox.set_layout(); button_layout.set_spacing(10); button_layout.add_spacer(); - auto& ok_button = buttonbox.add("OK"); + auto& ok_button = buttonbox.add(String::from_utf8_short_string("OK"sv)); ok_button.set_fixed_width(80); ok_button.on_click = [&](auto) { done(ExecResult::OK); }; } @@ -158,7 +158,7 @@ void CellTypeDialog::setup_tabs(GUI::TabWidget& tabs, Vector const& po }; { - auto& checkbox = right_side.add("Override max length"); + auto& checkbox = right_side.add(String::from_utf8("Override max length"sv).release_value_but_fixme_should_propagate_errors()); auto& spinbox = right_side.add(); checkbox.set_checked(m_length != -1); spinbox.set_min(0); @@ -178,7 +178,7 @@ void CellTypeDialog::setup_tabs(GUI::TabWidget& tabs, Vector const& po }; } { - auto& checkbox = right_side.add("Override display format"); + auto& checkbox = right_side.add(String::from_utf8("Override display format"sv).release_value_but_fixme_should_propagate_errors()); auto& editor = right_side.add(); checkbox.set_checked(!m_format.is_empty()); editor.set_name("format_editor"); diff --git a/Userland/Applications/Terminal/main.cpp b/Userland/Applications/Terminal/main.cpp index 6414a3e23f..a2e5a591b0 100644 --- a/Userland/Applications/Terminal/main.cpp +++ b/Userland/Applications/Terminal/main.cpp @@ -203,8 +203,8 @@ static ErrorOr> create_find_window(VT::TerminalWidget find_forwards->click(); }; - auto match_case = TRY(main_widget->try_add("Case sensitive")); - auto wrap_around = TRY(main_widget->try_add("Wrap around")); + auto match_case = TRY(main_widget->try_add(TRY(String::from_utf8("Case sensitive"sv)))); + auto wrap_around = TRY(main_widget->try_add(TRY(String::from_utf8("Wrap around"sv)))); find_backwards->on_click = [&terminal, find_textbox, match_case, wrap_around](auto) { auto needle = find_textbox->text(); diff --git a/Userland/Applications/ThemeEditor/MainWidget.cpp b/Userland/Applications/ThemeEditor/MainWidget.cpp index 65702c6b2a..ef8131d3d4 100644 --- a/Userland/Applications/ThemeEditor/MainWidget.cpp +++ b/Userland/Applications/ThemeEditor/MainWidget.cpp @@ -487,7 +487,7 @@ ErrorOr MainWidget::add_property_tab(PropertyTab const& property_tab) TRY(row_widget->load_from_gml(flag_property_gml)); auto& checkbox = *row_widget->find_descendant_of_type_named("checkbox"); - checkbox.set_text_deprecated(to_string(role)); + checkbox.set_text(String::from_deprecated_string(DeprecatedString(to_string(role))).release_value_but_fixme_should_propagate_errors()); checkbox.on_checked = [&, role](bool checked) { set_flag(role, checked); }; diff --git a/Userland/DevTools/HackStudio/FindInFilesWidget.cpp b/Userland/DevTools/HackStudio/FindInFilesWidget.cpp index fe5be0354c..410662e094 100644 --- a/Userland/DevTools/HackStudio/FindInFilesWidget.cpp +++ b/Userland/DevTools/HackStudio/FindInFilesWidget.cpp @@ -122,7 +122,7 @@ FindInFilesWidget::FindInFilesWidget() m_textbox = top_container.add(); - m_button = top_container.add("Find in files"); + m_button = top_container.add(String::from_utf8("Find in files"sv).release_value_but_fixme_should_propagate_errors()); m_button->set_fixed_width(100); m_result_view = add(); diff --git a/Userland/DevTools/Inspector/main.cpp b/Userland/DevTools/Inspector/main.cpp index 9cd03cdb57..b16a8d418b 100644 --- a/Userland/DevTools/Inspector/main.cpp +++ b/Userland/DevTools/Inspector/main.cpp @@ -51,7 +51,7 @@ ErrorOr serenity_main(Main::Arguments arguments) auto app_icon = TRY(GUI::Icon::try_create_default_icon("app-inspector"sv)); if (gui_mode) { choose_pid: - auto process_chooser = TRY(GUI::ProcessChooser::try_create("Inspector"sv, "Inspect"sv, app_icon.bitmap_for_size(16))); + auto process_chooser = TRY(GUI::ProcessChooser::try_create("Inspector"sv, String::from_utf8_short_string("Inspect"sv), app_icon.bitmap_for_size(16))); if (process_chooser->exec() == GUI::Dialog::ExecResult::Cancel) return 0; pid = process_chooser->pid(); diff --git a/Userland/DevTools/Profiler/main.cpp b/Userland/DevTools/Profiler/main.cpp index f1c1b84064..f7580001a6 100644 --- a/Userland/DevTools/Profiler/main.cpp +++ b/Userland/DevTools/Profiler/main.cpp @@ -331,7 +331,7 @@ static bool prompt_to_stop_profiling(pid_t pid, DeprecatedString const& process_ }).release_value_but_fixme_should_propagate_errors(); update_timer->start(); - auto& stop_button = widget->add("Stop"); + auto& stop_button = widget->add(String::from_utf8_short_string("Stop"sv)); stop_button.set_fixed_size(140, 22); stop_button.on_click = [&](auto) { GUI::Application::the()->quit(); @@ -344,7 +344,7 @@ static bool prompt_to_stop_profiling(pid_t pid, DeprecatedString const& process_ bool generate_profile(pid_t& pid) { if (!pid) { - auto process_chooser = GUI::ProcessChooser::construct("Profiler"sv, "Profile"sv, Gfx::Bitmap::load_from_file("/res/icons/16x16/app-profiler.png"sv).release_value_but_fixme_should_propagate_errors()); + auto process_chooser = GUI::ProcessChooser::construct("Profiler"sv, String::from_utf8_short_string("Profile"sv), Gfx::Bitmap::load_from_file("/res/icons/16x16/app-profiler.png"sv).release_value_but_fixme_should_propagate_errors()); if (process_chooser->exec() == GUI::Dialog::ExecResult::Cancel) return false; pid = process_chooser->pid(); diff --git a/Userland/Games/Hearts/Game.cpp b/Userland/Games/Hearts/Game.cpp index 0e052f63ee..e6e0fe1bca 100644 --- a/Userland/Games/Hearts/Game.cpp +++ b/Userland/Games/Hearts/Game.cpp @@ -78,7 +78,7 @@ Game::Game() m_players[3].name = "Lisa"; m_players[3].taken_cards_target = { width, height / 2 - Card::height / 2 }; - m_passing_button = add("Pass Left"); + m_passing_button = add(String::from_utf8("Pass Left"sv).release_value_but_fixme_should_propagate_errors()); constexpr int button_width = 120; constexpr int button_height = 30; m_passing_button->set_relative_rect(width / 2 - button_width / 2, height - 3 * outer_border_size - Card::height - button_height, button_width, button_height); @@ -135,7 +135,7 @@ void Game::show_score_card(bool game_over) button_container.set_shrink_to_fit(true); button_container.set_layout(); - auto& close_button = button_container.add("OK"); + auto& close_button = button_container.add(String::from_utf8_short_string("OK"sv)); close_button.on_click = [&score_dialog](auto) { score_dialog->done(GUI::Dialog::ExecResult::OK); }; @@ -180,13 +180,13 @@ void Game::setup(DeprecatedString player_name, int hand_number) m_human_can_play = true; switch (passing_direction()) { case PassingDirection::Left: - m_passing_button->set_text_deprecated("Pass Left"); + m_passing_button->set_text(String::from_utf8("Pass Left"sv).release_value_but_fixme_should_propagate_errors()); break; case PassingDirection::Across: - m_passing_button->set_text_deprecated("Pass Across"); + m_passing_button->set_text(String::from_utf8("Pass Across"sv).release_value_but_fixme_should_propagate_errors()); break; case PassingDirection::Right: - m_passing_button->set_text_deprecated("Pass Right"); + m_passing_button->set_text(String::from_utf8("Pass Right"sv).release_value_but_fixme_should_propagate_errors()); break; default: VERIFY_NOT_REACHED(); @@ -871,7 +871,7 @@ void Game::pass_cards() } m_state = State::PassingAccept; - m_passing_button->set_text_deprecated("OK"); + m_passing_button->set_text(String::from_utf8_short_string("OK"sv)); m_passing_button->set_enabled(true); } diff --git a/Userland/Games/Hearts/SettingsDialog.cpp b/Userland/Games/Hearts/SettingsDialog.cpp index f96482f0cd..f528d11e06 100644 --- a/Userland/Games/Hearts/SettingsDialog.cpp +++ b/Userland/Games/Hearts/SettingsDialog.cpp @@ -42,11 +42,11 @@ SettingsDialog::SettingsDialog(GUI::Window* parent, DeprecatedString player_name auto& button_layout = button_box.set_layout(); button_layout.set_spacing(10); - button_box.add("Cancel").on_click = [this](auto) { + button_box.add(String::from_utf8_short_string("Cancel"sv)).on_click = [this](auto) { done(ExecResult::Cancel); }; - button_box.add("OK").on_click = [this](auto) { + button_box.add(String::from_utf8_short_string("OK"sv)).on_click = [this](auto) { done(ExecResult::OK); }; } diff --git a/Userland/Libraries/LibGUI/Action.cpp b/Userland/Libraries/LibGUI/Action.cpp index 95d56aabba..07fbdb41f7 100644 --- a/Userland/Libraries/LibGUI/Action.cpp +++ b/Userland/Libraries/LibGUI/Action.cpp @@ -289,7 +289,7 @@ void Action::set_text(DeprecatedString text) return; m_text = move(text); for_each_toolbar_button([&](auto& button) { - button.set_text_deprecated(m_text); + button.set_text(String::from_deprecated_string(m_text).release_value_but_fixme_should_propagate_errors()); }); for_each_menu_item([&](auto& menu_item) { menu_item.update_from_action({}); diff --git a/Userland/Libraries/LibGUI/Breadcrumbbar.cpp b/Userland/Libraries/LibGUI/Breadcrumbbar.cpp index bbb274afc3..79b83b3d43 100644 --- a/Userland/Libraries/LibGUI/Breadcrumbbar.cpp +++ b/Userland/Libraries/LibGUI/Breadcrumbbar.cpp @@ -75,7 +75,7 @@ void Breadcrumbbar::append_segment(DeprecatedString text, Gfx::Bitmap const* ico { auto& button = add(); button.set_button_style(Gfx::ButtonStyle::Coolbar); - button.set_text_deprecated(text); + button.set_text(String::from_deprecated_string(text).release_value_but_fixme_should_propagate_errors()); button.set_icon(icon); button.set_tooltip(move(tooltip)); button.set_focus_policy(FocusPolicy::TabFocus); diff --git a/Userland/Libraries/LibGUI/ColorPicker.cpp b/Userland/Libraries/LibGUI/ColorPicker.cpp index 68d1dbe01d..0fae2fcb0d 100644 --- a/Userland/Libraries/LibGUI/ColorPicker.cpp +++ b/Userland/Libraries/LibGUI/ColorPicker.cpp @@ -234,14 +234,14 @@ void ColorPicker::build_ui() button_container.layout()->add_spacer(); auto& ok_button = button_container.add(); - ok_button.set_text_deprecated("OK"); + ok_button.set_text(String::from_utf8_short_string("OK"sv)); ok_button.on_click = [this](auto) { done(ExecResult::OK); }; ok_button.set_default(true); auto& cancel_button = button_container.add(); - cancel_button.set_text_deprecated("Cancel"); + cancel_button.set_text(String::from_utf8_short_string("Cancel"sv)); cancel_button.on_click = [this](auto) { done(ExecResult::Cancel); }; @@ -416,7 +416,7 @@ void ColorPicker::build_ui_custom(Widget& root_container) make_spinbox(Blue, m_color.blue()); make_spinbox(Alpha, m_color.alpha()); - m_selector_button = vertical_container.add("Select on screen"); + m_selector_button = vertical_container.add(String::from_utf8("Select on screen"sv).release_value_but_fixme_should_propagate_errors()); m_selector_button->on_click = [this](auto) { auto selector = ColorSelectOverlay::construct(); auto original_color = m_color; diff --git a/Userland/Libraries/LibGUI/FilePicker.cpp b/Userland/Libraries/LibGUI/FilePicker.cpp index ee4203659f..97fb785394 100644 --- a/Userland/Libraries/LibGUI/FilePicker.cpp +++ b/Userland/Libraries/LibGUI/FilePicker.cpp @@ -217,14 +217,14 @@ FilePicker::FilePicker(Window* parent_window, Mode mode, StringView filename, St }; auto& ok_button = *widget->find_descendant_of_type_named("ok_button"); - ok_button.set_text_deprecated(ok_button_name(m_mode)); + ok_button.set_text(ok_button_name(m_mode)); ok_button.on_click = [this](auto) { on_file_return(); }; ok_button.set_enabled(m_mode == Mode::OpenFolder || !m_filename_textbox->text().is_empty()); auto& cancel_button = *widget->find_descendant_of_type_named("cancel_button"); - cancel_button.set_text_deprecated("Cancel"); + cancel_button.set_text(String::from_utf8_short_string("Cancel"sv)); cancel_button.on_click = [this](auto) { done(ExecResult::Cancel); }; diff --git a/Userland/Libraries/LibGUI/FilePicker.h b/Userland/Libraries/LibGUI/FilePicker.h index 8611aac51b..ad0d8277f1 100644 --- a/Userland/Libraries/LibGUI/FilePicker.h +++ b/Userland/Libraries/LibGUI/FilePicker.h @@ -48,17 +48,17 @@ private: FilePicker(Window* parent_window, Mode type = Mode::Open, StringView filename = "Untitled"sv, StringView path = Core::StandardPaths::home_directory(), ScreenPosition screen_position = Dialog::ScreenPosition::CenterWithinParent, Optional> allowed_file_types = {}); - static DeprecatedString ok_button_name(Mode mode) + static String ok_button_name(Mode mode) { switch (mode) { case Mode::Open: case Mode::OpenMultiple: case Mode::OpenFolder: - return "Open"; + return String::from_utf8_short_string("Open"sv); case Mode::Save: - return "Save"; + return String::from_utf8_short_string("Save"sv); default: - return "OK"; + return String::from_utf8_short_string("OK"sv); } } diff --git a/Userland/Libraries/LibGUI/IncrementalSearchBanner.cpp b/Userland/Libraries/LibGUI/IncrementalSearchBanner.cpp index cbdc5b3d18..c4580352b7 100644 --- a/Userland/Libraries/LibGUI/IncrementalSearchBanner.cpp +++ b/Userland/Libraries/LibGUI/IncrementalSearchBanner.cpp @@ -37,7 +37,7 @@ IncrementalSearchBanner::IncrementalSearchBanner(TextEditor& editor) }; m_close_button = find_descendant_of_type_named