diff --git a/docs/reference/gtk/objects_grouped.sgml b/docs/reference/gtk/objects_grouped.sgml index 9b0c95bad8..78dc95bf9f 100644 --- a/docs/reference/gtk/objects_grouped.sgml +++ b/docs/reference/gtk/objects_grouped.sgml @@ -127,7 +127,6 @@ Misc. Objects GtkAdjustment - GtkItemFactory GtkInvisible diff --git a/examples/menu/Makefile b/examples/menu/Makefile index 1ce3218d8e..0ed6adb5ac 100644 --- a/examples/menu/Makefile +++ b/examples/menu/Makefile @@ -6,13 +6,10 @@ CFLAGS = -Wall \ -DGDK_DISABLE_DEPRECATED \ -DGDK_PIXBUF_DISABLE_DEPRECATED -all: menu itemfactory +all: menu menu: menu.c - $(CC) menu.c -o menu $(CFLAGS) `pkg-config gtk+-2.0 --cflags --libs` - -itemfactory: itemfactory.c - $(CC) itemfactory.c -o itemfactory $(CFLAGS) `pkg-config gtk+-2.0 --cflags --libs` + $(CC) menu.c -o menu $(CFLAGS) `pkg-config gtk+-3.0 --cflags --libs` clean: - rm -f *.o menu itemfactory + rm -f *.o menu diff --git a/examples/menu/itemfactory.c b/examples/menu/itemfactory.c deleted file mode 100644 index 26fa257a43..0000000000 --- a/examples/menu/itemfactory.c +++ /dev/null @@ -1,176 +0,0 @@ - -#include - -/* Obligatory basic callback */ -static void print_hello( GtkWidget *w, - gpointer data ) -{ - g_message ("Hello, World!\n"); -} - -/* For the check button */ -static void print_toggle( gpointer callback_data, - guint callback_action, - GtkWidget *menu_item ) -{ - g_message ("Check button state - %d\n", - GTK_CHECK_MENU_ITEM (menu_item)->active); -} - -/* For the radio buttons */ -static void print_selected( gpointer callback_data, - guint callback_action, - GtkWidget *menu_item ) -{ - if(GTK_CHECK_MENU_ITEM(menu_item)->active) - g_message ("Radio button %d selected\n", callback_action); -} - -/* Our menu, an array of GtkItemFactoryEntry structures that defines each menu item */ -static GtkItemFactoryEntry menu_items[] = { - { "/_File", NULL, NULL, 0, "" }, - { "/File/_New", "N", print_hello, 0, "", GTK_STOCK_NEW }, - { "/File/_Open", "O", print_hello, 0, "", GTK_STOCK_OPEN }, - { "/File/_Save", "S", print_hello, 0, "", GTK_STOCK_SAVE }, - { "/File/Save _As", NULL, NULL, 0, "" }, - { "/File/sep1", NULL, NULL, 0, "" }, - { "/File/_Quit", "Q", gtk_main_quit, 0, "", GTK_STOCK_QUIT }, - { "/_Options", NULL, NULL, 0, "" }, - { "/Options/tear", NULL, NULL, 0, "" }, - { "/Options/Check", NULL, print_toggle, 1, "" }, - { "/Options/sep", NULL, NULL, 0, "" }, - { "/Options/Rad1", NULL, print_selected, 1, "" }, - { "/Options/Rad2", NULL, print_selected, 2, "/Options/Rad1" }, - { "/Options/Rad3", NULL, print_selected, 3, "/Options/Rad1" }, - { "/_Help", NULL, NULL, 0, "" }, - { "/_Help/About", NULL, NULL, 0, "" }, -}; - -static gint nmenu_items = sizeof (menu_items) / sizeof (menu_items[0]); - -/* Returns a menubar widget made from the above menu */ -static GtkWidget *get_menubar_menu( GtkWidget *window ) -{ - GtkItemFactory *item_factory; - GtkAccelGroup *accel_group; - - /* Make an accelerator group (shortcut keys) */ - accel_group = gtk_accel_group_new (); - - /* Make an ItemFactory (that makes a menubar) */ - item_factory = gtk_item_factory_new (GTK_TYPE_MENU_BAR, "
", - accel_group); - - /* This function generates the menu items. Pass the item factory, - the number of items in the array, the array itself, and any - callback data for the the menu items. */ - gtk_item_factory_create_items (item_factory, nmenu_items, menu_items, NULL); - - /* Attach the new accelerator group to the window. */ - gtk_window_add_accel_group (GTK_WINDOW (window), accel_group); - - /* Finally, return the actual menu bar created by the item factory. */ - return gtk_item_factory_get_widget (item_factory, "
"); -} - -/* Popup the menu when the popup button is pressed */ -static gboolean popup_cb( GtkWidget *widget, - GdkEvent *event, - GtkWidget *menu ) -{ - GdkEventButton *bevent = (GdkEventButton *)event; - - /* Only take button presses */ - if (event->type != GDK_BUTTON_PRESS) - return FALSE; - - /* Show the menu */ - gtk_menu_popup (GTK_MENU(menu), NULL, NULL, - NULL, NULL, bevent->button, bevent->time); - - return TRUE; -} - -/* Same as with get_menubar_menu() but just return a button with a signal to - call a popup menu */ -GtkWidget *get_popup_menu( void ) -{ - GtkItemFactory *item_factory; - GtkWidget *button, *menu; - - /* Same as before but don't bother with the accelerators */ - item_factory = gtk_item_factory_new (GTK_TYPE_MENU, "
", - NULL); - gtk_item_factory_create_items (item_factory, nmenu_items, menu_items, NULL); - menu = gtk_item_factory_get_widget (item_factory, "
"); - - /* Make a button to activate the popup menu */ - button = gtk_button_new_with_label ("Popup"); - /* Make the menu popup when clicked */ - g_signal_connect (G_OBJECT(button), - "event", - G_CALLBACK(popup_cb), - (gpointer) menu); - - return button; -} - -/* Same again but return an option menu */ -GtkWidget *get_option_menu( void ) -{ - GtkItemFactory *item_factory; - GtkWidget *option_menu; - - /* Same again, not bothering with the accelerators */ - item_factory = gtk_item_factory_new (GTK_TYPE_OPTION_MENU, "
", - NULL); - gtk_item_factory_create_items (item_factory, nmenu_items, menu_items, NULL); - option_menu = gtk_item_factory_get_widget (item_factory, "
"); - - return option_menu; -} - -/* You have to start somewhere */ -int main( int argc, - char *argv[] ) -{ - GtkWidget *window; - GtkWidget *main_vbox; - GtkWidget *menubar, *option_menu, *popup_button; - - /* Initialize GTK */ - gtk_init (&argc, &argv); - - /* Make a window */ - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); - g_signal_connect (G_OBJECT (window), "destroy", - G_CALLBACK (gtk_main_quit), - NULL); - gtk_window_set_title (GTK_WINDOW(window), "Item Factory"); - gtk_widget_set_size_request (GTK_WIDGET(window), 300, 200); - - /* Make a vbox to put the three menus in */ - main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, FALSE, 1); - gtk_container_set_border_width (GTK_CONTAINER (main_vbox), 1); - gtk_container_add (GTK_CONTAINER (window), main_vbox); - - /* Get the three types of menu */ - /* Note: all three menus are separately created, so they are not the - same menu */ - menubar = get_menubar_menu (window); - popup_button = get_popup_menu (); - option_menu = get_option_menu (); - - /* Pack it all together */ - gtk_box_pack_start (GTK_BOX (main_vbox), menubar, FALSE, TRUE, 0); - gtk_box_pack_end (GTK_BOX (main_vbox), popup_button, FALSE, TRUE, 0); - gtk_box_pack_end (GTK_BOX (main_vbox), option_menu, FALSE, TRUE, 0); - - /* Show the widgets */ - gtk_widget_show_all (window); - - /* Finished! */ - gtk_main (); - - return 0; -} diff --git a/gtk/gtkaccelgroup.c b/gtk/gtkaccelgroup.c index a0360055e4..7f09e67e4f 100644 --- a/gtk/gtkaccelgroup.c +++ b/gtk/gtkaccelgroup.c @@ -47,10 +47,9 @@ * A #GtkAccelGroup represents a group of keyboard accelerators, * typically attached to a toplevel #GtkWindow (with * gtk_window_add_accel_group()). Usually you won't need to create a - * #GtkAccelGroup directly; instead, when using #GtkItemFactory, GTK+ - * automatically sets up the accelerators for your menus in the item - * factory's #GtkAccelGroup. - * + * #GtkAccelGroup directly; instead, when using #GtkUIManager, GTK+ + * automatically sets up the accelerators for your menus in the ui + * manager's #GtkAccelGroup. * * Note that accelerators are different from * mnemonics. Accelerators are shortcuts for diff --git a/gtk/gtkaccellabel.c b/gtk/gtkaccellabel.c index e373542d29..e354d279c1 100644 --- a/gtk/gtkaccellabel.c +++ b/gtk/gtkaccellabel.c @@ -41,7 +41,7 @@ * SECTION:gtkaccellabel * @Short_description: A label which displays an accelerator key on the right of the text * @Title: GtkAccelLabel - * @See_also: #GtkItemFactory, #GtkAccelGroup + * @See_also: #GtkAccelGroup * * The #GtkAccelLabel widget is a subclass of #GtkLabel that also displays an * accelerator key on the right of the label text, e.g. 'Ctl+S'.