Using GtkImageMenuItems where appropriate

This commit is contained in:
Pierre Pronchery 2011-08-31 22:42:44 +00:00
parent e3766600f2
commit 4cfe255f69
2 changed files with 10 additions and 30 deletions

View File

@ -580,29 +580,22 @@ static void _gprs_on_popup_menu(GtkStatusIcon * icon, guint button,
GPRS * gprs = plugin->priv; GPRS * gprs = plugin->priv;
GtkWidget * menu; GtkWidget * menu;
GtkWidget * menuitem; GtkWidget * menuitem;
GtkWidget * hbox;
GtkWidget * image; GtkWidget * image;
GtkWidget * label;
menu = gtk_menu_new(); menu = gtk_menu_new();
/* status */ /* status */
menuitem = gtk_menu_item_new_with_mnemonic("_Status"); menuitem = gtk_image_menu_item_new_with_mnemonic("_Status");
g_signal_connect_swapped(menuitem, "activate", G_CALLBACK( g_signal_connect_swapped(menuitem, "activate", G_CALLBACK(
_gprs_on_activate), plugin); _gprs_on_activate), plugin);
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
menuitem = gtk_separator_menu_item_new(); menuitem = gtk_separator_menu_item_new();
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
/* connection */ /* connection */
menuitem = gtk_menu_item_new(); menuitem = gtk_image_menu_item_new_with_mnemonic(gprs->connected
hbox = gtk_hbox_new(FALSE, 4); ? "_Disconnect" : "_Connect");
image = gtk_image_new_from_stock(gprs->connected ? GTK_STOCK_DISCONNECT image = gtk_image_new_from_stock(gprs->connected ? GTK_STOCK_DISCONNECT
: GTK_STOCK_CONNECT, GTK_ICON_SIZE_MENU); : GTK_STOCK_CONNECT, GTK_ICON_SIZE_MENU);
gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, TRUE, 0); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem), image);
label = gtk_label_new_with_mnemonic(gprs->connected ? "_Disconnect"
: "_Connect");
gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 0);
gtk_container_add(GTK_CONTAINER(menuitem), hbox);
g_signal_connect_swapped(menuitem, "activate", G_CALLBACK( g_signal_connect_swapped(menuitem, "activate", G_CALLBACK(
gprs->connected ? _gprs_disconnect gprs->connected ? _gprs_disconnect
: _gprs_connect), plugin); : _gprs_connect), plugin);
@ -610,15 +603,8 @@ static void _gprs_on_popup_menu(GtkStatusIcon * icon, guint button,
menuitem = gtk_separator_menu_item_new(); menuitem = gtk_separator_menu_item_new();
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
/* preferences */ /* preferences */
menuitem = gtk_menu_item_new(); menuitem = gtk_image_menu_item_new_from_stock(GTK_STOCK_PREFERENCES,
hbox = gtk_hbox_new(FALSE, 4); NULL);
image = gtk_image_new_from_stock(GTK_STOCK_PREFERENCES,
GTK_ICON_SIZE_MENU);
gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, TRUE, 0);
label = gtk_label_new_with_mnemonic("_Preferences");
gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 0);
gtk_container_add(GTK_CONTAINER(menuitem), hbox);
g_signal_connect_swapped(menuitem, "activate", G_CALLBACK( g_signal_connect_swapped(menuitem, "activate", G_CALLBACK(
_gprs_settings), plugin); _gprs_settings), plugin);
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);

View File

@ -128,9 +128,7 @@ static void _systray_on_popup_menu(GtkStatusIcon * icon, guint button,
PhonePlugin * plugin = data; PhonePlugin * plugin = data;
GtkWidget * menu; GtkWidget * menu;
GtkWidget * menuitem; GtkWidget * menuitem;
GtkWidget * hbox;
GtkWidget * image; GtkWidget * image;
GtkWidget * label;
struct struct
{ {
char const * icon; char const * icon;
@ -167,17 +165,13 @@ static void _systray_on_popup_menu(GtkStatusIcon * icon, guint button,
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
continue; continue;
} }
hbox = gtk_hbox_new(FALSE, 4); menuitem = gtk_image_menu_item_new_with_mnemonic(items[i].name);
image = gtk_image_new_from_icon_name(items[i].icon, image = gtk_image_new_from_icon_name(items[i].icon,
GTK_ICON_SIZE_MENU), GTK_ICON_SIZE_MENU);
gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, TRUE, 0); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem),
label = gtk_label_new_with_mnemonic(items[i].name); image);
gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 0);
menuitem = gtk_menu_item_new();
g_signal_connect_swapped(menuitem, "activate", G_CALLBACK( g_signal_connect_swapped(menuitem, "activate", G_CALLBACK(
items[i].callback), plugin); items[i].callback), plugin);
gtk_container_add(GTK_CONTAINER(menuitem), hbox);
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
} }
gtk_widget_show_all(menu); gtk_widget_show_all(menu);