Bonjour,

j'ai créé une fenêtre dans laquelle j'ajoute mon menu par l'utilisation du GtkUIManager. Les problèmes devant lesquels je suis sont :

- les raccourcis que j'ai défini dans mon "menu.xml" ne fonctionnent pas du tout
- comment spécifier la structure de données à passer en 2nd argument du callback d'un élément du menu ?

Merci beaucoup


edit: voici la fonction que j'utilise
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
int menu_build_ui(GtkWidget *p_box, const gchar *xml_file) {
 
    GtkUIManager *p_ui_manager = gtk_ui_manager_new();
    GtkActionGroup *p_action_group = NULL;
 
    if(p_ui_manager == NULL)
        return 0;
 
    gtk_ui_manager_add_ui_from_file
    (
        p_ui_manager,
        xml_file,
        NULL
    );
 
    g_signal_connect
    (
        p_ui_manager,
        "add-widget",
        G_CALLBACK(menu_add_widget),
        p_box
    );
 
    GtkActionEntry entries[] =
    {
        { "FileAction",     NULL,           "File",     "<Alt>f",       NULL,   NULL },
        { "NewAction",      GTK_STOCK_NEW,  "New",      "<Control>n",   "New",   G_CALLBACK(cb_add_tab) },
        { "OpenAction",     GTK_STOCK_OPEN, "Open",     "<Control>o",   "Open",   G_CALLBACK(generic_cb) },
        { "SaveAction",     GTK_STOCK_SAVE, "Save",     "<Control>s",   "Save",   G_CALLBACK(generic_cb) },
        { "QuitAction",     GTK_STOCK_QUIT, "Quit",     "<Control>q",   "Quit",   G_CALLBACK(generic_quit) }
    };
 
 
    p_action_group = gtk_action_group_new("menuActionGroup");
    gtk_action_group_add_actions(p_action_group, entries, G_N_ELEMENTS(entries), NULL);
    gtk_ui_manager_insert_action_group( p_ui_manager, p_action_group, 0);
 
    return 0;
 
}