On Sun, 2007-11-04 at 12:48 -0500, Stewart Weiss wrote:
> I am trying to create a menu that contains a submenu using the
> GtkUIManager, but none of the attempts has been successful.
> Is there a way to do this, or do I have to use the "by hand"
> methods?
>
Just an example:
GtkActionGroup* action_group;
GtkUIManager* ui_mngr;
GError* error = NULL;
gchar ui_info[] = ""
"<ui>"
" <menubar>"
" <menu action='MenuFile'>"
" <menuitem action='New' />"
" <menuitem action='Open' />"
" </menu>"
" <menu action='MenuEdit'>"
" <menuitem action='Undo' />"
" <menuitem action='Redo' />"
" </menu>"
" </menubar>"
"</ui>";
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
action_group = gtk_action_group_new(NULL);
gtk_action_group_add_action(action_group,
gtk_action_new("MenuFile", "_File",
NULL, NULL));
gtk_action_group_add_action(action_group,
gtk_action_new("New", NULL,
NULL, GTK_STOCK_NEW));
gtk_action_group_add_action(action_group,
gtk_action_new("Open", NULL,
NULL, GTK_STOCK_OPEN));
gtk_action_group_add_action(action_group,
gtk_action_new("MenuEdit", "_Edit",
NULL, NULL));
gtk_action_group_add_action(action_group,
gtk_action_new("Undo", NULL,
NULL, GTK_STOCK_UNDO));
gtk_action_group_add_action(action_group,
gtk_action_new("Redo", NULL,
NULL, GTK_STOCK_REDO));
ui_mngr = gtk_ui_manager_new();
gtk_ui_manager_insert_action_group(ui_mngr, action_group, 0);
gtk_ui_manager_add_ui_from_string(ui_mngr, ui_info,
strlen(ui_info), &error);
if (error)
g_error(error->message);
/* ... */
gtk_box_pack_start(GTK_BOX(vbox),
gtk_ui_manager_get_widget(ui_mngr, "/menubar"),
FALSE, FALSE, 0);
_______________________________________________
gtk-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtk-list