1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 23:37:35 +00:00

LibGUI: Make GMenu inherit from CObject

This is primarily to make it possible to pass a GMenu* where a CObject*
is expected.
This commit is contained in:
Andreas Kling 2019-12-09 21:05:28 +01:00
parent e9dda8d592
commit fd5eb79d19
39 changed files with 88 additions and 86 deletions

View file

@ -348,19 +348,19 @@ int main(int argc, char** argv)
});
auto menubar = make<GMenuBar>();
auto app_menu = make<GMenu>("HackStudio");
auto app_menu = GMenu::construct("HackStudio");
app_menu->add_action(save_action);
app_menu->add_action(GCommonActions::make_quit_action([&](auto&) {
app.quit();
}));
menubar->add_menu(move(app_menu));
auto project_menu = make<GMenu>("Project");
auto project_menu = GMenu::construct("Project");
project_menu->add_action(new_action);
project_menu->add_action(add_existing_file_action);
menubar->add_menu(move(project_menu));
auto edit_menu = make<GMenu>("Edit");
auto edit_menu = GMenu::construct("Edit");
edit_menu->add_action(GAction::create("Find in files...", { Mod_Ctrl | Mod_Shift, Key_F }, [&](auto&) {
reveal_action_tab(find_in_files_widget);
find_in_files_widget->focus_textbox_and_select_all();
@ -391,13 +391,13 @@ int main(int argc, char** argv)
toolbar->add_action(run_action);
toolbar->add_action(stop_action);
auto build_menu = make<GMenu>("Build");
auto build_menu = GMenu::construct("Build");
build_menu->add_action(build_action);
build_menu->add_action(run_action);
build_menu->add_action(stop_action);
menubar->add_menu(move(build_menu));
auto view_menu = make<GMenu>("View");
auto view_menu = GMenu::construct("View");
view_menu->add_action(hide_action_tabs_action);
view_menu->add_action(open_locator_action);
view_menu->add_separator();
@ -407,7 +407,7 @@ int main(int argc, char** argv)
auto small_icon = GraphicsBitmap::load_from_file("/res/icons/16x16/app-hack-studio.png");
auto help_menu = make<GMenu>("Help");
auto help_menu = GMenu::construct("Help");
help_menu->add_action(GAction::create("About", [&](auto&) {
GAboutDialog::show("HackStudio", small_icon, g_window);
}));

View file

@ -28,7 +28,7 @@ VBForm::VBForm(const String& name, GWidget* parent)
set_background_color(Color::WarmGray);
set_greedy_for_hits(true);
m_context_menu = make<GMenu>();
m_context_menu = GMenu::construct();
m_context_menu->add_action(GCommonActions::make_move_to_front_action([this](auto&) {
if (auto* widget = single_selected_widget())
widget->gwidget()->move_to_front();

View file

@ -61,5 +61,5 @@ private:
Point m_next_insertion_position;
Direction m_resize_direction { Direction::None };
Direction m_mouse_direction_type { Direction::None };
OwnPtr<GMenu> m_context_menu;
RefPtr<GMenu> m_context_menu;
};

View file

@ -31,14 +31,14 @@ int main(int argc, char** argv)
};
auto menubar = make<GMenuBar>();
auto app_menu = make<GMenu>("Visual Builder");
auto app_menu = GMenu::construct("Visual Builder");
app_menu->add_action(GCommonActions::make_quit_action([](auto&) {
GApplication::the().quit(0);
return;
}));
menubar->add_menu(move(app_menu));
auto file_menu = make<GMenu>("File");
auto file_menu = GMenu::construct("File");
file_menu->add_action(GAction::create("Dump Form", [&](auto&) {
form1->dump();
}));
@ -54,7 +54,7 @@ int main(int argc, char** argv)
window->show();
auto help_menu = make<GMenu>("Help");
auto help_menu = GMenu::construct("Help");
help_menu->add_action(GAction::create("About", [&](const GAction&) {
GAboutDialog::show("Visual Builder", load_png("/res/icons/32x32/app-visual-builder.png"), window);
}));