| 1722 pidgin_append_menu_action(GtkWidget *menu, PurpleMenuAction *act, |
1722 pidgin_append_menu_action(GtkWidget *menu, PurpleMenuAction *act, |
| 1723 gpointer object) |
1723 gpointer object) |
| 1724 { |
1724 { |
| 1725 GtkWidget *menuitem; |
1725 GtkWidget *menuitem; |
| 1726 GList *list; |
1726 GList *list; |
| |
1727 const gchar *stock_id; |
| |
1728 GtkWidget *icon_image = NULL; |
| 1727 |
1729 |
| 1728 if (act == NULL) { |
1730 if (act == NULL) { |
| 1729 return pidgin_separator(menu); |
1731 return pidgin_separator(menu); |
| 1730 } |
1732 } |
| 1731 |
1733 |
| |
1734 stock_id = purple_menu_action_get_stock_icon(act); |
| |
1735 if (stock_id) { |
| |
1736 icon_image = gtk_image_new_from_stock(stock_id, |
| |
1737 gtk_icon_size_from_name( |
| |
1738 PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL)); |
| |
1739 } |
| |
1740 |
| |
1741 if (icon_image) { |
| |
1742 menuitem = gtk_image_menu_item_new_with_mnemonic( |
| |
1743 purple_menu_action_get_label(act)); |
| |
1744 gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem), |
| |
1745 icon_image); |
| |
1746 } else { |
| |
1747 menuitem = gtk_menu_item_new_with_mnemonic( |
| |
1748 purple_menu_action_get_label(act)); |
| |
1749 } |
| |
1750 |
| 1732 list = purple_menu_action_get_children(act); |
1751 list = purple_menu_action_get_children(act); |
| 1733 menuitem = gtk_menu_item_new_with_mnemonic(purple_menu_action_get_label(act)); |
|
| 1734 |
1752 |
| 1735 if (list == NULL) { |
1753 if (list == NULL) { |
| 1736 PurpleCallback callback; |
1754 PurpleCallback callback; |
| 1737 |
1755 |
| 1738 callback = purple_menu_action_get_callback(act); |
1756 callback = purple_menu_action_get_callback(act); |