mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-20 23:51:29 -07:00
Make menus accessible from the keyboard in the Gtk front-end.
[originally from svn r8486]
This commit is contained in:
10
gtk.c
10
gtk.c
@ -546,6 +546,10 @@ static gint key_event(GtkWidget *widget, GdkEventKey *event, gpointer data)
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Handle mnemonics. */
|
||||||
|
if (gtk_window_activate_key(GTK_WINDOW(fe->window), event))
|
||||||
|
return TRUE;
|
||||||
|
|
||||||
if (event->keyval == GDK_Up)
|
if (event->keyval == GDK_Up)
|
||||||
keyval = shift | ctrl | CURSOR_UP;
|
keyval = shift | ctrl | CURSOR_UP;
|
||||||
else if (event->keyval == GDK_KP_Up || event->keyval == GDK_KP_8)
|
else if (event->keyval == GDK_KP_Up || event->keyval == GDK_KP_8)
|
||||||
@ -1675,7 +1679,7 @@ static frontend *new_window(char *arg, int argtype, char **error)
|
|||||||
gtk_box_pack_start(vbox, menubar, FALSE, FALSE, 0);
|
gtk_box_pack_start(vbox, menubar, FALSE, FALSE, 0);
|
||||||
gtk_widget_show(menubar);
|
gtk_widget_show(menubar);
|
||||||
|
|
||||||
menuitem = gtk_menu_item_new_with_label("Game");
|
menuitem = gtk_menu_item_new_with_mnemonic("_Game");
|
||||||
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
|
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
|
||||||
gtk_widget_show(menuitem);
|
gtk_widget_show(menuitem);
|
||||||
|
|
||||||
@ -1710,7 +1714,7 @@ static frontend *new_window(char *arg, int argtype, char **error)
|
|||||||
GtkWidget *submenu;
|
GtkWidget *submenu;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
menuitem = gtk_menu_item_new_with_label("Type");
|
menuitem = gtk_menu_item_new_with_mnemonic("_Type");
|
||||||
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
|
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
|
||||||
gtk_widget_show(menuitem);
|
gtk_widget_show(menuitem);
|
||||||
|
|
||||||
@ -1790,7 +1794,7 @@ static frontend *new_window(char *arg, int argtype, char **error)
|
|||||||
add_menu_separator(GTK_CONTAINER(menu));
|
add_menu_separator(GTK_CONTAINER(menu));
|
||||||
add_menu_item_with_key(fe, GTK_CONTAINER(menu), "Exit", 'q');
|
add_menu_item_with_key(fe, GTK_CONTAINER(menu), "Exit", 'q');
|
||||||
|
|
||||||
menuitem = gtk_menu_item_new_with_label("Help");
|
menuitem = gtk_menu_item_new_with_mnemonic("_Help");
|
||||||
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
|
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
|
||||||
gtk_widget_show(menuitem);
|
gtk_widget_show(menuitem);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user