From ba98666b057f04dc21493820f55376a62be4bd36 Mon Sep 17 00:00:00 2001 From: Jesse Buhagiar Date: Sun, 29 Dec 2019 00:59:56 +1100 Subject: [PATCH] DisplayProperties: Add a menubar Add a menubar to the `DisplayProperties` application to make it more consistent with the other programs in the system. --- Applications/DisplayProperties/main.cpp | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/Applications/DisplayProperties/main.cpp b/Applications/DisplayProperties/main.cpp index d1c840b8c6..2f1e7fcf71 100644 --- a/Applications/DisplayProperties/main.cpp +++ b/Applications/DisplayProperties/main.cpp @@ -1,7 +1,11 @@ #include "DisplayProperties.h" #include +#include +#include #include #include +#include +#include #include #include @@ -12,12 +16,28 @@ int main(int argc, char** argv) auto window = GWindow::construct(); window->set_title("Display Properties"); - window->move_to(100,100); + window->move_to(100, 100); window->resize(400, 448); window->set_resizable(false); window->set_main_widget(instance.root_widget()); window->set_icon(load_png("/res/icons/16x16/app-display-properties.png")); + // Let's create the menubar first + auto menubar = make(); + + auto app_menu = GMenu::construct("Display Properties"); + app_menu->add_action(GCommonActions::make_quit_action([&](const GAction&) { + app.quit(); + })); + menubar->add_menu(move(app_menu)); + + auto help_menu = GMenu::construct("Help"); + help_menu->add_action(GAction::create("About", [&](const GAction&) { + GAboutDialog::show("Display Properties", load_png("/res/icons/32x32/app-display-properties.png"), window); + })); + menubar->add_menu(move(help_menu)); + + app.set_menubar(move(menubar)); window->show(); return app.exec(); }