diff options
Diffstat (limited to 'src/gui/agroup.c')
-rw-r--r-- | src/gui/agroup.c | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/src/gui/agroup.c b/src/gui/agroup.c index 00dbaef..435f005 100644 --- a/src/gui/agroup.c +++ b/src/gui/agroup.c @@ -28,9 +28,6 @@ #include <stdbool.h> -#include "core/global.h" - - /* Détermine si un élément graphique peut être actionné. */ static gboolean enable_accel_all_the_time(GtkWidget *, guint, gpointer); @@ -39,7 +36,6 @@ static gboolean enable_accel_all_the_time(GtkWidget *, guint, gpointer); static gboolean enable_accel_with_care(GtkWidget *, guint, gpointer); - /* Suivi des autorisations suivant la zone active. */ static bool _entry_focused = false; @@ -47,6 +43,31 @@ static bool _entry_focused = false; /****************************************************************************** * * +* Paramètres : builder = constructeur avec l'ensemble des références. * +* * +* Description : Précise l'accès aux menus avec raccourcis. * +* * +* Retour : - * +* * +* Remarques : - * +* * +******************************************************************************/ + +void setup_accel_group_callbacks(GtkBuilder *builder) +{ + +#define DEFINE_CALLBACK(cb) #cb, G_CALLBACK(cb) + + gtk_builder_add_callback_symbols(builder, + DEFINE_CALLBACK(enable_accel_all_the_time), + DEFINE_CALLBACK(enable_accel_with_care), + NULL); + +} + + +/****************************************************************************** +* * * Paramètres : widget = composant graphique à analyser. * * signal_id = identifiant de signal. * * unused = adresse non utilisée ici. * @@ -97,9 +118,9 @@ static gboolean enable_accel_with_care(GtkWidget *widget, guint signal_id, gpoin /****************************************************************************** * * -* Paramètres : widget = composant GTK à traiter. * +* Paramètres : builder = constructeur associé à l'interface principale. * +* widget = composant GTK à traiter. * * accelerator = description sous forme de chaîne de caractères.* -* group = groupe d'appartenance du raccourci. * * * * Description : Ajoute un accélérateur à un composant graphique. * * * @@ -109,7 +130,7 @@ static gboolean enable_accel_with_care(GtkWidget *widget, guint signal_id, gpoin * * ******************************************************************************/ -void add_accelerator_to_widget(GtkWidget *widget, const char *accelerator) +void add_accelerator_to_widget(GtkBuilder *builder, GtkWidget *widget, const char *accelerator) { guint key; /* Touche concernée */ GdkModifierType mods; /* Eventuels modificateurs */ @@ -122,7 +143,7 @@ void add_accelerator_to_widget(GtkWidget *widget, const char *accelerator) else g_signal_connect(widget, "can-activate-accel", G_CALLBACK(enable_accel_all_the_time), NULL); - group = get_accel_group(); + group = GTK_ACCEL_GROUP(gtk_builder_get_object(builder, "accelgroup")); gtk_widget_add_accelerator(widget, "activate", group, key, mods, GTK_ACCEL_VISIBLE); |