From 62422eecdceb9015deab203ce302b6e8f450de7f Mon Sep 17 00:00:00 2001 From: Till Mayer Date: Thu, 12 Mar 2020 22:53:37 +0100 Subject: [PATCH] Solitaire: Add about dialog and 32x32 icon --- Base/res/icons/32x32/app-solitaire.png | Bin 0 -> 4694 bytes Games/Solitaire/main.cpp | 8 ++++++++ 2 files changed, 8 insertions(+) create mode 100644 Base/res/icons/32x32/app-solitaire.png diff --git a/Base/res/icons/32x32/app-solitaire.png b/Base/res/icons/32x32/app-solitaire.png new file mode 100644 index 0000000000000000000000000000000000000000..429ea995105cfdbb7e764cf188ce87e70178b39b GIT binary patch literal 4694 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 #include #include #include @@ -52,11 +53,18 @@ int main(int argc, char** argv) auto menu_bar = make(); auto app_menu = GUI::Menu::construct("Solitaire"); + auto help_menu = GUI::Menu::construct("Help"); app_menu->add_action(GUI::Action::create("Restart game", [&](auto&) { widget->setup(); })); app_menu->add_separator(); app_menu->add_action(GUI::CommonActions::make_quit_action([&](auto&) { app.quit(); })); + + help_menu->add_action(GUI::Action::create("About", [&](auto&) { + GUI::AboutDialog::show("Solitaire", Gfx::Bitmap::load_from_file("/res/icons/32x32/app-solitaire.png")); + })); + menu_bar->add_menu(move(app_menu)); + menu_bar->add_menu(move(help_menu)); app.set_menubar(move(menu_bar)); window->set_main_widget(widget);