diff --git a/Applications/PaintBrush/main.cpp b/Applications/PaintBrush/main.cpp index d7f87f8a80..aba425b811 100644 --- a/Applications/PaintBrush/main.cpp +++ b/Applications/PaintBrush/main.cpp @@ -50,8 +50,7 @@ int main(int argc, char** argv) auto filename = picker.selected_file().string(); auto bitmap = load_png(filename); if (!bitmap) { - GMessageBox msgbox(String::format("Failed to load '%s'", filename.characters()), "Open failed", GMessageBox::Type::Error, GMessageBox::InputType::OK, window); - msgbox.exec(); + GMessageBox::show(String::format("Failed to load '%s'", filename.characters()), "Open failed", GMessageBox::Type::Error, GMessageBox::InputType::OK, window); return; } paintable_widget->set_bitmap(*bitmap); diff --git a/Applications/TextEditor/TextEditorWidget.cpp b/Applications/TextEditor/TextEditorWidget.cpp index 50ba9b5b4c..49e047bf75 100644 --- a/Applications/TextEditor/TextEditorWidget.cpp +++ b/Applications/TextEditor/TextEditorWidget.cpp @@ -118,8 +118,8 @@ TextEditorWidget::TextEditorWidget() m_new_action = GAction::create("New", { Mod_Ctrl, Key_N }, GraphicsBitmap::load_from_file("/res/icons/16x16/new.png"), [this](const GAction&) { if (m_document_dirty) { - GMessageBox save_document_first_box("Save Document First?", "Warning", GMessageBox::Type::Warning, GMessageBox::InputType::OKCancel, window()); - auto save_document_first_result = save_document_first_box.exec(); + auto save_document_first_box = GMessageBox::construct("Save Document First?", "Warning", GMessageBox::Type::Warning, GMessageBox::InputType::OKCancel, window()); + auto save_document_first_result = save_document_first_box->exec(); if (save_document_first_result != GDialog::ExecResult::ExecOK) return; diff --git a/Libraries/LibGUI/GMessageBox.h b/Libraries/LibGUI/GMessageBox.h index efaf9fab01..6fe2a0655b 100644 --- a/Libraries/LibGUI/GMessageBox.h +++ b/Libraries/LibGUI/GMessageBox.h @@ -17,12 +17,13 @@ public: OKCancel, }; - explicit GMessageBox(const StringView& text, const StringView& title, Type type = Type::None, InputType = InputType::OK, CObject* parent = nullptr); virtual ~GMessageBox() override; static int show(const StringView& text, const StringView& title, Type type = Type::None, InputType = InputType::OK, CObject* parent = nullptr); private: + explicit GMessageBox(const StringView& text, const StringView& title, Type type = Type::None, InputType = InputType::OK, CObject* parent = nullptr); + bool should_include_ok_button() const; bool should_include_cancel_button() const; void build();