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 // Init dependencies
this->menu = menu; this->menu = menu;
// Init GTK // Init GMenu Model
this->gtk = gtk_popover_new(); 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" #include "../menu.h"
// Requirements // Requirements
// .. #include "main/quit.h"
namespace app::browser::header::bar namespace app::browser::header::bar
{ {
@ -13,8 +13,17 @@ namespace app::browser::header::bar
namespace menu namespace menu
{ {
namespace main
{
class Quit;
};
class Main class Main
{ {
private:
GMenu* _model;
public: public:
// GTK // GTK
@ -24,7 +33,7 @@ namespace app::browser::header::bar
Menu *menu; Menu *menu;
// Requirements // Requirements
// .. main::Quit *quit;
// Constructor // Constructor
Main( Main(