From 54d771e64d9a33665bb14d0675f427265e29fe8b Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Thu, 24 Oct 2019 11:46:23 -0300 Subject: [PATCH] Working on gear menu. --- src/objects/window/actions.c | 7 +++++++ src/objects/window/application.c | 16 +++++----------- src/objects/window/private.h | 1 + src/objects/window/ui/application.xml | 2 +- src/objects/window/ui/window.xml | 42 +++++++++++++++++++++++++++++++++--------- src/objects/window/window.c | 19 +++++++++++++++++++ 6 files changed, 66 insertions(+), 21 deletions(-) diff --git a/src/objects/window/actions.c b/src/objects/window/actions.c index 8e898d5..fa638b3 100644 --- a/src/objects/window/actions.c +++ b/src/objects/window/actions.c @@ -34,6 +34,13 @@ #include "private.h" #include + void pw3270_application_generic_activated(GSimpleAction * action, GVariant *parameter, gpointer application) { + + debug("%s",__FUNCTION__); + + } + + void pw3270_application_quit_activated(GSimpleAction * action, GVariant *parameter, gpointer application) { g_print("Exiting application\n"); diff --git a/src/objects/window/application.c b/src/objects/window/application.c index 2de29dc..18ee3bb 100644 --- a/src/objects/window/application.c +++ b/src/objects/window/application.c @@ -73,12 +73,6 @@ } - static void action_activated(GSimpleAction * action, GVariant *parameter, gpointer application) { - - debug("%s",__FUNCTION__); - - } - void startup(GApplication *application) { G_APPLICATION_CLASS(pw3270Application_parent_class)->startup(application); @@ -86,14 +80,14 @@ // // Setup application default actions. // - static GActionEntry app_entries[] = { + static GActionEntry actions[] = { { .name = "about", - .activate = action_activated, + .activate = pw3270_application_generic_activated, }, { .name = "preferences", - .activate = action_activated, + .activate = pw3270_application_generic_activated, }, { @@ -115,8 +109,8 @@ g_action_map_add_action_entries( G_ACTION_MAP(application), - app_entries, - G_N_ELEMENTS(app_entries), + actions, + G_N_ELEMENTS(actions), application ); diff --git a/src/objects/window/private.h b/src/objects/window/private.h index d68142e..360bc55 100644 --- a/src/objects/window/private.h +++ b/src/objects/window/private.h @@ -62,6 +62,7 @@ }; // Actions + G_GNUC_INTERNAL void pw3270_application_generic_activated(GSimpleAction * action, GVariant *parameter, gpointer application); G_GNUC_INTERNAL void pw3270_application_quit_activated(GSimpleAction * action, GVariant *parameter, gpointer application); G_GNUC_INTERNAL void pw3270_application_new_tab_activated(GSimpleAction * action, GVariant *parameter, gpointer application); G_GNUC_INTERNAL void pw3270_application_new_window_activated(GSimpleAction * action, GVariant *parameter, gpointer application); diff --git a/src/objects/window/ui/application.xml b/src/objects/window/ui/application.xml index 93e9ca1..3e96cff 100644 --- a/src/objects/window/ui/application.xml +++ b/src/objects/window/ui/application.xml @@ -21,8 +21,8 @@ - + _Edit
diff --git a/src/objects/window/ui/window.xml b/src/objects/window/ui/window.xml index 2096dfc..105eb5d 100644 --- a/src/objects/window/ui/window.xml +++ b/src/objects/window/ui/window.xml @@ -3,17 +3,41 @@
- - About PW3270 - app.about - + + + New + + Tab + app.new_tab + + + Application Window + app.new_window + + + + + Open + + File + app.open + + + New tab + app.new_tab + + + New window + app.new_window + + + +
+ +
Preferences - app.help - - - Quit PW3270 - app.quit + win.preferences
diff --git a/src/objects/window/window.c b/src/objects/window/window.c index cb1fa81..8b8f0ae 100644 --- a/src/objects/window/window.c +++ b/src/objects/window/window.c @@ -68,6 +68,25 @@ gtk_widget_show_all(GTK_WIDGET(vBox)); gtk_container_add(GTK_CONTAINER(widget),GTK_WIDGET(vBox)); + // + // Setup Window actions. + // + static GActionEntry actions[] = { + + { + .name = "preferences", + .activate = pw3270_application_generic_activated, + }, + + }; + + g_action_map_add_action_entries( + G_ACTION_MAP(widget), + actions, + G_N_ELEMENTS(actions), + widget + ); + } GtkWidget * pw3270_application_window_new(GtkApplication * application) { -- libgit2 0.21.2