summaryrefslogtreecommitdiff
path: root/src/gui/editor.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2017-07-26 17:19:09 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2017-07-26 17:19:09 (GMT)
commit359055e28bcd195fb03fd0deb1a30e5a04d5ce58 (patch)
treebcc7d15149aa359333f1496eae0c6b31e90cc818 /src/gui/editor.c
parente62cb2f183a8ff70d54a20bd869944047700fe8a (diff)
Transformed the remaining nested functions dealing with menus.
Diffstat (limited to 'src/gui/editor.c')
-rw-r--r--src/gui/editor.c49
1 files changed, 34 insertions, 15 deletions
diff --git a/src/gui/editor.c b/src/gui/editor.c
index b856971..5e8717a 100644
--- a/src/gui/editor.c
+++ b/src/gui/editor.c
@@ -76,6 +76,9 @@ static void on_destroy_editor(GtkWidget *, GObject *);
/* Réagit à un changement de focus pour l'éditeur. */
static gboolean on_focus_out(GtkWidget *, GdkEventFocus *, GObject *);
+/* Encadre certains raccourcis actionnés sur un menu. */
+static gboolean track_espace_on_main_submenu(GtkWidget *, GdkEventKey *, GtkWidget *);
+
/* Permet la disparition de la barre de menus avec le clavier. */
static void track_root_menubars(GtkContainer *, bool);
@@ -500,34 +503,50 @@ static gboolean on_focus_out(GtkWidget *widget, GdkEventFocus *event, GObject *r
/******************************************************************************
* *
-* Paramètres : menubar = barre de menu principale à traiter. *
-* set = indique si la surveillance est à activer ou non. *
+* Paramètres : menu = composant actif pour la réception des touches. *
+* event = informations liées à l'événement. *
+* item = menu parent à manipuler au besoin. *
* *
-* Description : Permet la disparition de la barre de menus avec le clavier. *
+* Description : Encadre certains raccourcis actionnés sur un menu. *
* *
-* Retour : - *
+* Retour : FALSE afin de poursuivre la propagation de l'événement. *
* *
* Remarques : - *
* *
******************************************************************************/
-static void track_root_menubars(GtkContainer *menubar, bool set)
+static gboolean track_espace_on_main_submenu(GtkWidget *menu, GdkEventKey *event, GtkWidget *item)
{
- gboolean track_espace_on_main_submenu(GtkWidget *menu, GdkEventKey *event, GtkWidget *item)
+ GtkWidget *mbar; /* Barre de menus principale */
+
+ if (event->keyval == GDK_KEY_Escape)
{
- GtkWidget *mbar; /* Barre de menus principale */
+ mbar = gtk_widget_get_parent(item);
+ track_root_menubars(GTK_CONTAINER(mbar), false);
+ gtk_widget_hide(mbar);
+ }
- if (event->keyval == GDK_KEY_Escape)
- {
- mbar = gtk_widget_get_parent(item);
- track_root_menubars(GTK_CONTAINER(mbar), false);
- gtk_widget_hide(mbar);
- }
+ return FALSE;
+
+}
- return FALSE;
- }
+/******************************************************************************
+* *
+* Paramètres : menubar = barre de menu principale à traiter. *
+* set = indique si la surveillance est à activer ou non. *
+* *
+* Description : Permet la disparition de la barre de menus avec le clavier. *
+* *
+* Retour : - *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+static void track_root_menubars(GtkContainer *menubar, bool set)
+{
void browse_all_main_items(GtkWidget *item, bool *track)
{
GtkWidget *menu; /* Menu à traiter */