1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
   |  
void
on_Fen_OPS_btn_Pfm_clicked             (GtkButton       *button,
                                        gpointer         user_data)
{
	// Déclarations
	GtkWidget *vbox;
	GtkWidget *Menu20_btn_Haut;
	GtkWidget *Menu20_btn_Bas;
	GtkWidget *Menu20_btn_Gauche;
	GtkWidget *Menu20_btn_Droite;
	GtkWidget *Menu20_btn_Axis;
	GladeXML *gxml;
	GList *list;
 
             // Recupère mon menu
	gxml = glade_xml_new ("../ch_menu.glade","Menu_20", NULL);
	vbox = glade_xml_get_widget (gxml, "Menu_20");
 
             // Je récupère les boutons du menus
          	Menu20_btn_Haut = glade_xml_get_widget (gxml, "Menu20_btn_Haut");
	Menu20_btn_Bas = glade_xml_get_widget (gxml, "Menu20_btn_Bas");
	Menu20_btn_Gauche = glade_xml_get_widget (gxml, "Menu20_btn_Gauche");
	Menu20_btn_Droite = glade_xml_get_widget (gxml, "Menu20_btn_Droite");
	Menu20_btn_Axis = glade_xml_get_widget (gxml, "Menu20_btn_Axis");
 
            // Je vide le container
	list = gtk_container_get_children(GTK_CONTAINER(button));
    while(list)
    {
        gtk_widget_destroy(GTK_WIDGET(list->data));
        list = g_list_next(list);
    }
    g_list_free(list);
 
	gtk_widget_show (vbox);
 
            // J'ajoute mon nouveau menu
	gtk_box_pack_start (GTK_BOX (GTK_WIDGET(button)), vbox, TRUE, TRUE, 0);
             // Je connecte mes signaux
	g_signal_connect_swapped ((gpointer) Menu20_btn_Haut, "clicked",
                            G_CALLBACK (on_Fen_OPS_Menu20_btn_Haut_clicked),
                            GTK_OBJECT (Menu20_btn_Bas));
	g_signal_connect_swapped ((gpointer) Menu20_btn_Bas, "clicked",
                            G_CALLBACK (on_Fen_OPS_Menu20_btn_Bas_clicked),
                            GTK_OBJECT (Menu20_btn_Haut));
	g_signal_connect_swapped ((gpointer) Menu20_btn_Gauche, "clicked",
                            G_CALLBACK (on_Fen_OPS_Menu20_btn_Gauche_clicked),
                            GTK_OBJECT (Menu20_btn_Droite));
	g_signal_connect_swapped ((gpointer) Menu20_btn_Droite, "clicked",
                            G_CALLBACK (on_Fen_OPS_Menu20_btn_Droite_clicked),
                            GTK_OBJECT (Menu20_btn_Gauche));
	g_signal_connect_swapped ((gpointer) Menu20_btn_Axis, "clicked",
                            G_CALLBACK (on_Fen_OPS_Menu20_btn_Axis_clicked),
                            GTK_OBJECT (Menu20_btn_Droite));
	g_signal_connect_swapped ((gpointer) Menu20_btn_Axis, "clicked",
                            G_CALLBACK (on_Fen_OPS_Menu20_btn_Axis_clicked),
                            GTK_OBJECT (Menu20_btn_Gauche));
	g_signal_connect_swapped ((gpointer) Menu20_btn_Axis, "clicked",
                            G_CALLBACK (on_Fen_OPS_Menu20_btn_Axis_clicked),
                            GTK_OBJECT (Menu20_btn_Bas));
	g_signal_connect_swapped ((gpointer) Menu20_btn_Axis, "clicked",
                            G_CALLBACK (on_Fen_OPS_Menu20_btn_Axis_clicked),
                            GTK_OBJECT (Menu20_btn_Haut));
} | 
Partager