summaryrefslogtreecommitdiff
path: root/src/gui/menus/view.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2020-01-10 23:04:51 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2020-01-10 23:04:51 (GMT)
commit6b785b0e6c6048a4a8f1f81f9eaa407e05622368 (patch)
treedc6dc802b65ec37b3cbc3c65e9d6637654f0981c /src/gui/menus/view.c
parentc0528230469b10d606b9d1fa66a18696b2584fed (diff)
Cleaned editor items by removing a direct link to the main window.
Diffstat (limited to 'src/gui/menus/view.c')
-rw-r--r--src/gui/menus/view.c71
1 files changed, 32 insertions, 39 deletions
diff --git a/src/gui/menus/view.c b/src/gui/menus/view.c
index 018cfbf..e8b3c93 100644
--- a/src/gui/menus/view.c
+++ b/src/gui/menus/view.c
@@ -46,7 +46,7 @@
/* Met à jour les accès du menu "Affichage -> Basculer...". */
-static void update_switch_access_in_menu_view(void);
+static void update_switch_access_in_menu_view(GObject *);
/* Réagit avec le menu "Affichage -> Panneaux latéraux -> ...". */
static void mcb_view_change_panel_docking(GtkCheckMenuItem *, GPanelItem *);
@@ -55,10 +55,10 @@ static void mcb_view_change_panel_docking(GtkCheckMenuItem *, GPanelItem *);
static void mcb_view_change_support(GtkRadioMenuItem *, gpointer);
/* Réagit avec le menu "Affichage -> Basculer vers le suivant". */
-static void mcb_view_switch_to_next_support(GtkRadioMenuItem *, gpointer);
+static void mcb_view_switch_to_next_support(GtkRadioMenuItem *, GObject *);
/* Réagit avec le menu "Affichage -> Basculer vers le précédent". */
-static void mcb_view_switch_to_prev_support(GtkRadioMenuItem *, gpointer);
+static void mcb_view_switch_to_prev_support(GtkRadioMenuItem *, GObject *);
/* Accompagne la première allocation d'un panneau d'affichage. */
static void handle_loaded_panel_first_allocation(GtkWidget *, GdkRectangle *, GLineCursor *);
@@ -73,7 +73,7 @@ static void mcb_view_zoom(GtkCheckMenuItem *, gpointer );
static void mcb_view_display_column(GtkCheckMenuItem *, gpointer);
/* Réagit avec le menu "Affichage -> Plein écran". */
-static void mcb_view_show_full_screen(GtkCheckMenuItem *, GMenuBar *);
+static void mcb_view_show_full_screen(GtkCheckMenuItem *, gpointer);
@@ -118,12 +118,12 @@ GtkWidget *build_menu_view(GObject *ref, GMenuBar *bar)
/* Types de panneau de code */
submenuitem = qck_create_menu_item(ref, "mnu_view_switch_to_next_support", _("Switch to next"),
- G_CALLBACK(mcb_view_switch_to_next_support), NULL);
+ G_CALLBACK(mcb_view_switch_to_next_support), ref);
add_accelerator_to_widget(submenuitem, "Tab");
gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
submenuitem = qck_create_menu_item(ref, "mnu_view_switch_to_prev_support", _("Switch to previous"),
- G_CALLBACK(mcb_view_switch_to_prev_support), NULL);
+ G_CALLBACK(mcb_view_switch_to_prev_support), ref);
add_accelerator_to_widget(submenuitem, "<Shift>Tab");
gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
@@ -163,7 +163,7 @@ GtkWidget *build_menu_view(GObject *ref, GMenuBar *bar)
/* Affichage -> Plein écran */
submenuitem = qck_create_check_menu_item(NULL, NULL, _("Full screen"),
- G_CALLBACK(mcb_view_show_full_screen), bar);
+ G_CALLBACK(mcb_view_show_full_screen), NULL);
add_accelerator_to_widget(submenuitem, "F11");
gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
@@ -175,7 +175,8 @@ GtkWidget *build_menu_view(GObject *ref, GMenuBar *bar)
/******************************************************************************
* *
* Paramètres : widget = menu principal à actualiser. *
-* new = nouveau contenu chargé à analyser. *
+* ref = espace de référencement global. *
+* new = nouveau contenu chargé à analyser. *
* *
* Description : Réagit à un changement d'affichage principal de contenu. *
* *
@@ -185,9 +186,8 @@ GtkWidget *build_menu_view(GObject *ref, GMenuBar *bar)
* *
******************************************************************************/
-void rebuild_menu_view_for_content(GtkWidget *widget, GLoadedContent *new)
+void rebuild_menu_view_for_content(GtkWidget *widget, GObject *ref, GLoadedContent *new)
{
- GObject *ref; /* Espace de références */
GtkWidget *menubar; /* Support pour éléments */
unsigned int i; /* Boucle de parcours */
char *key; /* Clef pour accès ultérieurs */
@@ -199,8 +199,6 @@ void rebuild_menu_view_for_content(GtkWidget *widget, GLoadedContent *new)
unsigned int count; /* Nombre d'itérations à mener */
GSList *rgroup; /* Groupe des boutons radio */
- ref = get_global_ref();
-
/* Retrait d'éventuels anciens menus */
menubar = gtk_menu_item_get_submenu(GTK_MENU_ITEM(widget));
@@ -277,6 +275,7 @@ void rebuild_menu_view_for_content(GtkWidget *widget, GLoadedContent *new)
/******************************************************************************
* *
* Paramètres : widget = menu principal à actualiser. *
+* ref = espace de référencement global. *
* new = nouvelle vue du contenu chargé analysé. *
* *
* Description : Lance une actualisation du fait d'un changement de support. *
@@ -287,9 +286,8 @@ void rebuild_menu_view_for_content(GtkWidget *widget, GLoadedContent *new)
* *
******************************************************************************/
-void rebuild_menu_view_for_view(GtkWidget *widget, GLoadedPanel *new)
+void rebuild_menu_view_for_view(GtkWidget *widget, GObject *ref, GLoadedPanel *new)
{
- GObject *ref; /* Espace de références */
GLoadedContent *content; /* Contenu en cours d'analyse */
unsigned int index; /* Indice de la vue */
GtkWidget *menubar; /* Support pour éléments */
@@ -306,8 +304,6 @@ void rebuild_menu_view_for_view(GtkWidget *widget, GLoadedPanel *new)
size_t count; /* Nombre d'itérations à mener */
bool status; /* Consigne d'affichage */
- ref = get_global_ref();
-
content = get_current_content();
assert((content == NULL && new == NULL) || (content != NULL && new != NULL));
@@ -425,7 +421,8 @@ void rebuild_menu_view_for_view(GtkWidget *widget, GLoadedPanel *new)
/******************************************************************************
* *
-* Paramètres : new = nouvelle vue du contenu chargé analysé. *
+* Paramètres : ref = espace de référencement global. *
+* new = nouvelle vue du contenu chargé analysé. *
* *
* Description : Met à jour les accès du menu "Affichage" selon le contenu. *
* *
@@ -435,17 +432,14 @@ void rebuild_menu_view_for_view(GtkWidget *widget, GLoadedPanel *new)
* *
******************************************************************************/
-void update_access_for_view_in_menu_view(GLoadedPanel *new)
+void update_access_for_view_in_menu_view(GObject *ref, GLoadedPanel *new)
{
- GObject *ref; /* Espace de référencements */
gboolean access; /* Accès à déterminer */
GtkWidget *item; /* Elément de menu à traiter */
- ref = get_global_ref();
-
/* Bascules */
- update_switch_access_in_menu_view();
+ update_switch_access_in_menu_view(ref);
/* Zooms */
@@ -465,7 +459,7 @@ void update_access_for_view_in_menu_view(GLoadedPanel *new)
/******************************************************************************
* *
-* Paramètres : - *
+* Paramètres : ref = espace de référencement global. *
* *
* Description : Met à jour les accès du menu "Affichage -> Basculer...". *
* *
@@ -475,9 +469,8 @@ void update_access_for_view_in_menu_view(GLoadedPanel *new)
* *
******************************************************************************/
-static void update_switch_access_in_menu_view(void)
+static void update_switch_access_in_menu_view(GObject *ref)
{
- GObject *ref; /* Espace de références */
GLoadedPanel *panel; /* Afficheur effectif de code */
GLoadedContent *content; /* Contenu représenté */
unsigned int count; /* Nombre de vues possibles */
@@ -485,8 +478,6 @@ static void update_switch_access_in_menu_view(void)
gboolean access; /* Accès à déterminer */
GtkWidget *item; /* Elément de menu à traiter */
- ref = get_global_ref();
-
panel = get_current_view();
if (panel == NULL)
@@ -711,7 +702,7 @@ static void mcb_view_change_support(GtkRadioMenuItem *menuitem, gpointer unused)
/******************************************************************************
* *
* Paramètres : menuitem = élément de menu ayant basculé. *
-* unused = adresse non utilisée ici. *
+* ref = espace de référencement global. *
* *
* Description : Réagit avec le menu "Affichage -> Basculer vers le suivant". *
* *
@@ -721,7 +712,7 @@ static void mcb_view_change_support(GtkRadioMenuItem *menuitem, gpointer unused)
* *
******************************************************************************/
-static void mcb_view_switch_to_next_support(GtkRadioMenuItem *menuitem, gpointer unused)
+static void mcb_view_switch_to_next_support(GtkRadioMenuItem *menuitem, GObject *ref)
{
GLoadedPanel *panel; /* Afficheur effectif de code */
GLoadedContent *content; /* Contenu représenté */
@@ -746,7 +737,7 @@ static void mcb_view_switch_to_next_support(GtkRadioMenuItem *menuitem, gpointer
g_object_unref(G_OBJECT(content));
g_object_unref(G_OBJECT(panel));
- update_switch_access_in_menu_view();
+ update_switch_access_in_menu_view(ref);
}
@@ -754,7 +745,7 @@ static void mcb_view_switch_to_next_support(GtkRadioMenuItem *menuitem, gpointer
/******************************************************************************
* *
* Paramètres : menuitem = élément de menu ayant basculé. *
-* unused = adresse non utilisée ici. *
+* ref = espace de référencement global. *
* *
* Description : Réagit avec le menu "Affichage -> Basculer ... précédent". *
* *
@@ -764,7 +755,7 @@ static void mcb_view_switch_to_next_support(GtkRadioMenuItem *menuitem, gpointer
* *
******************************************************************************/
-static void mcb_view_switch_to_prev_support(GtkRadioMenuItem *menuitem, gpointer unused)
+static void mcb_view_switch_to_prev_support(GtkRadioMenuItem *menuitem, GObject *ref)
{
GLoadedPanel *panel; /* Afficheur effectif de code */
GLoadedContent *content; /* Contenu représenté */
@@ -782,7 +773,7 @@ static void mcb_view_switch_to_prev_support(GtkRadioMenuItem *menuitem, gpointer
g_object_unref(G_OBJECT(content));
g_object_unref(G_OBJECT(panel));
- update_switch_access_in_menu_view();
+ update_switch_access_in_menu_view(ref);
}
@@ -974,7 +965,7 @@ static void mcb_view_display_column(GtkCheckMenuItem *menuitem, gpointer unused)
/******************************************************************************
* *
* Paramètres : menuitem = élément de menu sélectionné. *
-* bar = barre de menu parente. *
+* unused = adresse non utilisée ici. *
* *
* Description : Réagit avec le menu "Affichage -> Plein écran". *
* *
@@ -984,18 +975,20 @@ static void mcb_view_display_column(GtkCheckMenuItem *menuitem, gpointer unused)
* *
******************************************************************************/
-static void mcb_view_show_full_screen(GtkCheckMenuItem *menuitem, GMenuBar *bar)
+static void mcb_view_show_full_screen(GtkCheckMenuItem *menuitem, gpointer unused)
{
- GObject *ref; /* Espace de référencements */
+ GtkWindow *editor; /* Fenêtre graphique principale*/
gboolean active; /* Etat de sélection du menu */
- ref = g_editor_item_get_global_ref(G_EDITOR_ITEM(bar));
+ editor = get_editor_window();
active = gtk_check_menu_item_get_active(menuitem);
if (active)
- gtk_window_fullscreen(GTK_WINDOW(ref));
+ gtk_window_fullscreen(editor);
else
- gtk_window_unfullscreen(GTK_WINDOW(ref));
+ gtk_window_unfullscreen(editor);
+
+ g_object_unref(G_OBJECT(editor));
}