implement popover menu

This commit is contained in:
yggverse 2024-08-06 03:38:21 +03:00
parent cd011cbe60
commit 37f109bec4
2 changed files with 34 additions and 4 deletions

View File

@ -9,7 +9,28 @@ namespace app::browser::header::bar::menu
// Init dependencies
this->menu = menu;
// Init GTK
this->gtk = gtk_popover_new();
// Init GMenu Model
this->_model = g_menu_new();
// Init menu items
this->quit = new main::Quit(
this
);
g_menu_append_item(
G_MENU(
this->_model
),
G_MENU_ITEM(
this->quit->item
)
);
// Create a new GtkPopoverMenu from the GMenuModel
this->gtk = gtk_popover_menu_new_from_model(
G_MENU_MODEL(
this->_model
)
);
}
}

View File

@ -5,7 +5,7 @@
#include "../menu.h"
// Requirements
// ..
#include "main/quit.h"
namespace app::browser::header::bar
{
@ -13,8 +13,17 @@ namespace app::browser::header::bar
namespace menu
{
namespace main
{
class Quit;
};
class Main
{
private:
GMenu* _model;
public:
// GTK
@ -24,7 +33,7 @@ namespace app::browser::header::bar
Menu *menu;
// Requirements
// ..
main::Quit *quit;
// Constructor
Main(