summaryrefslogtreecommitdiff
path: root/src/gui/menus/menubar.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2012-01-30 02:19:38 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2012-01-30 02:19:38 (GMT)
commiteacb69625d51707ac0a158815a53f71fb70968ce (patch)
tree8d14e34639f80a0955529604d9c0d3ccae4d7dde /src/gui/menus/menubar.c
parent7bcec72d69c5350678ed6350636687c3c29bbc61 (diff)
Provided a new working Project menu.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@230 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/gui/menus/menubar.c')
-rw-r--r--src/gui/menus/menubar.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/gui/menus/menubar.c b/src/gui/menus/menubar.c
index a847d40..a7559cd 100644
--- a/src/gui/menus/menubar.c
+++ b/src/gui/menus/menubar.c
@@ -28,6 +28,7 @@
#include "debug.h"
#include "file.h"
#include "help.h"
+#include "project.h"
#include "view.h"
#include "../editem-int.h"
@@ -40,6 +41,7 @@ struct _GMenuBar
GtkWidget *file; /* Menu "Fichier" */
GtkWidget *view; /* Menu "Affichage" */
+ GtkWidget *project; /* Menu "Projet" */
GtkWidget *debug; /* Menu "Débogage" */
GtkWidget *help; /* Menu "Aide" */
@@ -63,6 +65,9 @@ static void g_menu_bar_init(GMenuBar *);
/* Lance une actualisation du fait d'un changement de vue. */
static void update_menu_bar_for_view(GMenuBar *, GtkViewPanel *);
+/* Lance une actualisation relative à l'étendue du projet. */
+static void update_menu_bar_for_project(GMenuBar *, GStudyProject *);
+
/* Indique le type défini pour la barre de menus de la fenêtre principale. */
@@ -111,6 +116,7 @@ static void g_menu_bar_init(GMenuBar *bar)
gtk_widget_show(item->widget);
item->update_view = (update_item_view_fc)update_menu_bar_for_view;
+ item->update_project = (update_project_fc)update_menu_bar_for_project;
}
@@ -152,6 +158,11 @@ GEditorItem *g_menu_bar_new(GObject *ref, GtkAccelGroup *accgroup)
result->view = build_menu_view(ref, accgroup, result);
gtk_container_add(GTK_CONTAINER(item->widget), result->view);
+ /* Projet */
+
+ result->project = build_menu_project(ref, accgroup, result);
+ gtk_container_add(GTK_CONTAINER(item->widget), result->project);
+
/* Débogage */
result->debug = build_menu_debug(ref, accgroup);
@@ -185,3 +196,23 @@ static void update_menu_bar_for_view(GMenuBar *bar, GtkViewPanel *view)
update_menu_view_for_view(bar->view, view, bar);
}
+
+
+/******************************************************************************
+* *
+* Paramètres : bar = barre de menus à actualiser. *
+* project = projet visé par la procédure. *
+* *
+* Description : Lance une actualisation relative à l'étendue du projet. *
+* *
+* Retour : - *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+static void update_menu_bar_for_project(GMenuBar *bar, GStudyProject *project)
+{
+ update_menu_project_for_project(bar->project, project, bar);
+
+}