From bcb2b7a2c4425ba888f6236890d35a8f2d037360 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Wed, 4 Sep 2019 18:25:48 +0100 Subject: simplify toolbar items macros --- frontends/gtk/scaffolding.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'frontends/gtk/scaffolding.c') diff --git a/frontends/gtk/scaffolding.c b/frontends/gtk/scaffolding.c index 50e061eb1..7c68b9493 100644 --- a/frontends/gtk/scaffolding.c +++ b/frontends/gtk/scaffolding.c @@ -459,7 +459,7 @@ nsgtk_window_tabs_remove(GtkNotebook *notebook, /** * handle menu activate signals by calling toolbar item activation */ -#define TOOLBAR_ITEM_y(identifier, name) \ +#define TOOLBAR_ITEM_p(identifier, name) \ static gboolean \ nsgtk_on_##name##_activate_menu(GtkMenuItem *widget, gpointer data) \ { \ @@ -467,12 +467,14 @@ nsgtk_on_##name##_activate_menu(GtkMenuItem *widget, gpointer data) \ nsgtk_window_item_activate(gs->top_level, identifier); \ return TRUE; \ } +#define TOOLBAR_ITEM_y(identifier, name) #define TOOLBAR_ITEM_n(identifier, name) -#define TOOLBAR_ITEM(identifier, name, snstvty, clicked, activate, pass) \ - TOOLBAR_ITEM_ ## pass(identifier, name) +#define TOOLBAR_ITEM(identifier, name, snstvty, clicked, activate) \ + TOOLBAR_ITEM_ ## activate(identifier, name) #include "gtk/toolbar_items.h" #undef TOOLBAR_ITEM_y #undef TOOLBAR_ITEM_n +#undef TOOLBAR_ITEM_p #undef TOOLBAR_ITEM @@ -890,11 +892,13 @@ create_scaffolding_link_menu(struct nsgtk_scaffolding *g, GtkAccelGroup *group) */ static nserror nsgtk_menu_initialise(struct nsgtk_scaffolding *g) { +#define TOOLBAR_ITEM_p(identifier, name) \ + g->menus[identifier].mhandler = nsgtk_on_##name##_activate_menu; #define TOOLBAR_ITEM_y(identifier, name) \ g->menus[identifier].mhandler = nsgtk_on_##name##_activate_menu; -#define TOOLBAR_ITEM_n(identifier, name) \ +#define TOOLBAR_ITEM_n(identifier, name) \ g->menus[identifier].mhandler = NULL; -#define TOOLBAR_ITEM(identifier, name, snstvty, clicked, activate, pass) \ +#define TOOLBAR_ITEM(identifier, name, snstvty, clicked, activate) \ g->menus[identifier].sensitivity = snstvty; \ TOOLBAR_ITEM_ ## activate(identifier, name) #include "gtk/toolbar_items.h" -- cgit v1.2.3