comparison pidgin/gtkimhtmltoolbar.c @ 20072:b4708680299e

special case smileys in the toolbar. Fixes #2668 I'll need a new icon from Hylke
author Sean Egan <seanegan@gmail.com>
date Sat, 15 Sep 2007 23:40:53 +0000
parents e98404d74a24
children 6bf32c9e15a7
comparison
equal deleted inserted replaced
20071:7be8362039f4 20072:b4708680299e
1160 GtkWidget *bbox, *box = gtk_hbox_new(FALSE, 0); 1160 GtkWidget *bbox, *box = gtk_hbox_new(FALSE, 0);
1161 GtkWidget *image; 1161 GtkWidget *image;
1162 GtkWidget *label; 1162 GtkWidget *label;
1163 GtkWidget *insert_button; 1163 GtkWidget *insert_button;
1164 GtkWidget *font_button; 1164 GtkWidget *font_button;
1165 GtkWidget *smiley_button;
1165 GtkWidget *font_menu; 1166 GtkWidget *font_menu;
1166 GtkWidget *insert_menu; 1167 GtkWidget *insert_menu;
1167 GtkWidget *menuitem; 1168 GtkWidget *menuitem;
1168 GtkWidget *sep; 1169 GtkWidget *sep;
1169 int i; 1170 int i;
1261 gtk_widget_show_all(insert_button); 1262 gtk_widget_show_all(insert_button);
1262 1263
1263 insert_menu = gtk_menu_new(); 1264 insert_menu = gtk_menu_new();
1264 g_object_set_data(G_OBJECT(toolbar), "insert_menu", insert_menu); 1265 g_object_set_data(G_OBJECT(toolbar), "insert_menu", insert_menu);
1265 1266
1266 menuitem = gtk_menu_item_new_with_mnemonic(_("_Smiley"));
1267 g_signal_connect_swapped(G_OBJECT(menuitem), "activate", G_CALLBACK(gtk_button_clicked), toolbar->smiley);
1268 gtk_menu_shell_append(GTK_MENU_SHELL(insert_menu), menuitem);
1269 g_signal_connect(G_OBJECT(toolbar->smiley), "notify::sensitive",
1270 G_CALLBACK(button_sensitiveness_changed), menuitem);
1271
1272 menuitem = gtk_menu_item_new_with_mnemonic(_("_Image")); 1267 menuitem = gtk_menu_item_new_with_mnemonic(_("_Image"));
1273 g_signal_connect_swapped(G_OBJECT(menuitem), "activate", G_CALLBACK(gtk_button_clicked), toolbar->image); 1268 g_signal_connect_swapped(G_OBJECT(menuitem), "activate", G_CALLBACK(gtk_button_clicked), toolbar->image);
1274 gtk_menu_shell_append(GTK_MENU_SHELL(insert_menu), menuitem); 1269 gtk_menu_shell_append(GTK_MENU_SHELL(insert_menu), menuitem);
1275 g_signal_connect(G_OBJECT(toolbar->image), "notify::sensitive", 1270 g_signal_connect(G_OBJECT(toolbar->image), "notify::sensitive",
1276 G_CALLBACK(button_sensitiveness_changed), menuitem); 1271 G_CALLBACK(button_sensitiveness_changed), menuitem);
1288 1283
1289 g_signal_connect_swapped(G_OBJECT(insert_button), "button-press-event", G_CALLBACK(gtk_widget_activate), insert_button); 1284 g_signal_connect_swapped(G_OBJECT(insert_button), "button-press-event", G_CALLBACK(gtk_widget_activate), insert_button);
1290 g_signal_connect(G_OBJECT(insert_button), "activate", G_CALLBACK(pidgin_menu_clicked), insert_menu); 1285 g_signal_connect(G_OBJECT(insert_button), "activate", G_CALLBACK(pidgin_menu_clicked), insert_menu);
1291 g_signal_connect(G_OBJECT(insert_menu), "deactivate", G_CALLBACK(pidgin_menu_deactivate), insert_button); 1286 g_signal_connect(G_OBJECT(insert_menu), "deactivate", G_CALLBACK(pidgin_menu_deactivate), insert_button);
1292 toolbar->sml = NULL; 1287 toolbar->sml = NULL;
1288
1289 /* Sep */
1290 sep = gtk_vseparator_new();
1291 gtk_box_pack_start(GTK_BOX(box), sep, FALSE, FALSE, 0);
1292 gtk_widget_show_all(sep);
1293
1294 /* Smiley */
1295 smiley_button = gtk_button_new();
1296 gtk_button_set_relief(GTK_BUTTON(smiley_button), GTK_RELIEF_NONE);
1297 bbox = gtk_hbox_new(FALSE, 3);
1298 gtk_container_add(GTK_CONTAINER(smiley_button), bbox);
1299 image = gtk_image_new_from_stock(PIDGIN_STOCK_TOOLBAR_SMILEY, gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL));
1300 gtk_box_pack_start(GTK_BOX(bbox), image, FALSE, FALSE, 0);
1301 label = gtk_label_new_with_mnemonic(_("_Smiley"));
1302 gtk_box_pack_start(GTK_BOX(bbox), label, FALSE, FALSE, 0);
1303 gtk_box_pack_start(GTK_BOX(box), smiley_button, FALSE, FALSE, 0);
1304 g_signal_connect_swapped(G_OBJECT(smiley_button), "clicked", G_CALLBACK(gtk_button_clicked), toolbar->smiley);
1305 gtk_widget_show_all(smiley_button);
1293 1306
1294 gtk_box_pack_start(GTK_BOX(hbox), box, FALSE, FALSE, 0); 1307 gtk_box_pack_start(GTK_BOX(hbox), box, FALSE, FALSE, 0);
1295 g_object_set_data(G_OBJECT(hbox), "lean-view", box); 1308 g_object_set_data(G_OBJECT(hbox), "lean-view", box);
1296 1309
1297 purple_prefs_connect_callback(toolbar, PIDGIN_PREFS_ROOT "/conversations/toolbar/wide", 1310 purple_prefs_connect_callback(toolbar, PIDGIN_PREFS_ROOT "/conversations/toolbar/wide",