comparison pidgin/gtkconv.c @ 15507:311315e979f7

gtkutils changes
author Sean Egan <seanegan@gmail.com>
date Sat, 03 Feb 2007 08:45:32 +0000
parents 762b6547adf9
children 94031a2b0aaa
comparison
equal deleted inserted replaced
15506:e4c39e261389 15507:311315e979f7
1604 is_me = TRUE; 1604 is_me = TRUE;
1605 1605
1606 menu = gtk_menu_new(); 1606 menu = gtk_menu_new();
1607 1607
1608 if (!is_me) { 1608 if (!is_me) {
1609 button = gaim_new_item_from_stock(menu, _("IM"), GAIM_STOCK_IM, 1609 button = pidgin_new_item_from_stock(menu, _("IM"), GAIM_STOCK_IM,
1610 G_CALLBACK(menu_chat_im_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1610 G_CALLBACK(menu_chat_im_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1611 1611
1612 if (gc == NULL) 1612 if (gc == NULL)
1613 gtk_widget_set_sensitive(button, FALSE); 1613 gtk_widget_set_sensitive(button, FALSE);
1614 1614
1615 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free); 1615 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free);
1616 1616
1617 1617
1618 if (prpl_info && prpl_info->send_file) 1618 if (prpl_info && prpl_info->send_file)
1619 { 1619 {
1620 button = gaim_new_item_from_stock(menu, _("Send File"), 1620 button = pidgin_new_item_from_stock(menu, _("Send File"),
1621 GAIM_STOCK_FILE_TRANSFER, G_CALLBACK(menu_chat_send_file_cb), 1621 GAIM_STOCK_FILE_TRANSFER, G_CALLBACK(menu_chat_send_file_cb),
1622 PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1622 PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1623 1623
1624 if (gc == NULL || prpl_info == NULL || 1624 if (gc == NULL || prpl_info == NULL ||
1625 !(!prpl_info->can_receive_file || prpl_info->can_receive_file(gc, who))) 1625 !(!prpl_info->can_receive_file || prpl_info->can_receive_file(gc, who)))
1630 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free); 1630 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free);
1631 } 1631 }
1632 1632
1633 1633
1634 if (gaim_conv_chat_is_user_ignored(GAIM_CONV_CHAT(conv), who)) 1634 if (gaim_conv_chat_is_user_ignored(GAIM_CONV_CHAT(conv), who))
1635 button = gaim_new_item_from_stock(menu, _("Un-Ignore"), GAIM_STOCK_IGNORE, 1635 button = pidgin_new_item_from_stock(menu, _("Un-Ignore"), GAIM_STOCK_IGNORE,
1636 G_CALLBACK(ignore_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1636 G_CALLBACK(ignore_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1637 else 1637 else
1638 button = gaim_new_item_from_stock(menu, _("Ignore"), GAIM_STOCK_IGNORE, 1638 button = pidgin_new_item_from_stock(menu, _("Ignore"), GAIM_STOCK_IGNORE,
1639 G_CALLBACK(ignore_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1639 G_CALLBACK(ignore_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1640 1640
1641 if (gc == NULL) 1641 if (gc == NULL)
1642 gtk_widget_set_sensitive(button, FALSE); 1642 gtk_widget_set_sensitive(button, FALSE);
1643 1643
1644 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free); 1644 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free);
1645 } 1645 }
1646 1646
1647 if (prpl_info && (prpl_info->get_info || prpl_info->get_cb_info)) { 1647 if (prpl_info && (prpl_info->get_info || prpl_info->get_cb_info)) {
1648 button = gaim_new_item_from_stock(menu, _("Info"), GAIM_STOCK_INFO, 1648 button = pidgin_new_item_from_stock(menu, _("Info"), GAIM_STOCK_INFO,
1649 G_CALLBACK(menu_chat_info_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1649 G_CALLBACK(menu_chat_info_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1650 1650
1651 if (gc == NULL) 1651 if (gc == NULL)
1652 gtk_widget_set_sensitive(button, FALSE); 1652 gtk_widget_set_sensitive(button, FALSE);
1653 1653
1654 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free); 1654 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free);
1655 } 1655 }
1656 1656
1657 if (prpl_info && prpl_info->get_cb_away) { 1657 if (prpl_info && prpl_info->get_cb_away) {
1658 button = gaim_new_item_from_stock(menu, _("Get Away Message"), GAIM_STOCK_AWAY, 1658 button = pidgin_new_item_from_stock(menu, _("Get Away Message"), GAIM_STOCK_AWAY,
1659 G_CALLBACK(menu_chat_get_away_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1659 G_CALLBACK(menu_chat_get_away_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1660 1660
1661 if (gc == NULL) 1661 if (gc == NULL)
1662 gtk_widget_set_sensitive(button, FALSE); 1662 gtk_widget_set_sensitive(button, FALSE);
1663 1663
1664 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free); 1664 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free);
1665 } 1665 }
1666 1666
1667 if (!is_me && prpl_info && !(prpl_info->options & OPT_PROTO_UNIQUE_CHATNAME)) { 1667 if (!is_me && prpl_info && !(prpl_info->options & OPT_PROTO_UNIQUE_CHATNAME)) {
1668 if ((buddy = gaim_find_buddy(conv->account, who)) != NULL) 1668 if ((buddy = gaim_find_buddy(conv->account, who)) != NULL)
1669 button = gaim_new_item_from_stock(menu, _("Remove"), GTK_STOCK_REMOVE, 1669 button = pidgin_new_item_from_stock(menu, _("Remove"), GTK_STOCK_REMOVE,
1670 G_CALLBACK(menu_chat_add_remove_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1670 G_CALLBACK(menu_chat_add_remove_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1671 else 1671 else
1672 button = gaim_new_item_from_stock(menu, _("Add"), GTK_STOCK_ADD, 1672 button = pidgin_new_item_from_stock(menu, _("Add"), GTK_STOCK_ADD,
1673 G_CALLBACK(menu_chat_add_remove_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1673 G_CALLBACK(menu_chat_add_remove_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1674 1674
1675 if (gc == NULL) 1675 if (gc == NULL)
1676 gtk_widget_set_sensitive(button, FALSE); 1676 gtk_widget_set_sensitive(button, FALSE);
1677 1677
1678 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free); 1678 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free);
1679 } 1679 }
1680 1680
1681 button = gaim_new_item_from_stock(menu, _("Last said"), GTK_STOCK_INDEX, 1681 button = pidgin_new_item_from_stock(menu, _("Last said"), GTK_STOCK_INDEX,
1682 G_CALLBACK(menu_last_said_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL); 1682 G_CALLBACK(menu_last_said_cb), PIDGIN_CONVERSATION(conv), 0, 0, NULL);
1683 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free); 1683 g_object_set_data_full(G_OBJECT(button), "user_data", g_strdup(who), g_free);
1684 if (!get_mark_for_user(PIDGIN_CONVERSATION(conv), who)) 1684 if (!get_mark_for_user(PIDGIN_CONVERSATION(conv), who))
1685 gtk_widget_set_sensitive(button, FALSE); 1685 gtk_widget_set_sensitive(button, FALSE);
1686 1686
2560 menu = gtk_menu_new(); 2560 menu = gtk_menu_new();
2561 2561
2562 if (gtkconv->u.im->anim && 2562 if (gtkconv->u.im->anim &&
2563 !(gdk_pixbuf_animation_is_static_image(gtkconv->u.im->anim))) 2563 !(gdk_pixbuf_animation_is_static_image(gtkconv->u.im->anim)))
2564 { 2564 {
2565 gaim_new_check_item(menu, _("Animate"), 2565 pidgin_new_check_item(menu, _("Animate"),
2566 G_CALLBACK(toggle_icon_animate_cb), gtkconv, 2566 G_CALLBACK(toggle_icon_animate_cb), gtkconv,
2567 gtkconv->u.im->icon_timer); 2567 gtkconv->u.im->icon_timer);
2568 } 2568 }
2569 2569
2570 gaim_new_item_from_stock(menu, _("Hide Icon"), NULL, G_CALLBACK(remove_icon), 2570 pidgin_new_item_from_stock(menu, _("Hide Icon"), NULL, G_CALLBACK(remove_icon),
2571 gtkconv, 0, 0, NULL); 2571 gtkconv, 0, 0, NULL);
2572 2572
2573 gaim_new_item_from_stock(menu, _("Save Icon As..."), GTK_STOCK_SAVE_AS, 2573 pidgin_new_item_from_stock(menu, _("Save Icon As..."), GTK_STOCK_SAVE_AS,
2574 G_CALLBACK(icon_menu_save_cb), gtkconv, 2574 G_CALLBACK(icon_menu_save_cb), gtkconv,
2575 0, 0, NULL); 2575 0, 0, NULL);
2576 2576
2577 gaim_new_item_from_stock(menu, _("Set Custom Icon..."), NULL, 2577 pidgin_new_item_from_stock(menu, _("Set Custom Icon..."), NULL,
2578 G_CALLBACK(set_custom_icon_cb), gtkconv, 2578 G_CALLBACK(set_custom_icon_cb), gtkconv,
2579 0, 0, NULL); 2579 0, 0, NULL);
2580 2580
2581 /* Is there a custom icon for this person? */ 2581 /* Is there a custom icon for this person? */
2582 pref = custom_icon_pref_name(gtkconv); 2582 pref = custom_icon_pref_name(gtkconv);
2583 if (pref && *pref) { 2583 if (pref && *pref) {
2584 gaim_new_item_from_stock(menu, _("Remove Custom Icon"), NULL, 2584 pidgin_new_item_from_stock(menu, _("Remove Custom Icon"), NULL,
2585 G_CALLBACK(remove_custom_icon_cb), gtkconv, 2585 G_CALLBACK(remove_custom_icon_cb), gtkconv,
2586 0, 0, NULL); 2586 0, 0, NULL);
2587 } 2587 }
2588 2588
2589 gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, e->button, e->time); 2589 gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, e->button, e->time);
3986 PidginConversation *gtkconv = data; 3986 PidginConversation *gtkconv = data;
3987 3987
3988 g_return_if_fail(menu != NULL); 3988 g_return_if_fail(menu != NULL);
3989 g_return_if_fail(gtkconv != NULL); 3989 g_return_if_fail(gtkconv != NULL);
3990 3990
3991 menuitem = gaim_new_item_from_stock(NULL, _("_Send"), GAIM_STOCK_SEND, 3991 menuitem = pidgin_new_item_from_stock(NULL, _("_Send"), GAIM_STOCK_SEND,
3992 G_CALLBACK(send_menu_cb), gtkconv, 3992 G_CALLBACK(send_menu_cb), gtkconv,
3993 0, 0, NULL); 3993 0, 0, NULL);
3994 if (gtk_text_buffer_get_char_count(imhtml->text_buffer) == 0) 3994 if (gtk_text_buffer_get_char_count(imhtml->text_buffer) == 0)
3995 gtk_widget_set_sensitive(menuitem, FALSE); 3995 gtk_widget_set_sensitive(menuitem, FALSE);
3996 gtk_menu_shell_insert(GTK_MENU_SHELL(menu), menuitem, 0); 3996 gtk_menu_shell_insert(GTK_MENU_SHELL(menu), menuitem, 0);
4456 4456
4457 gtk_drag_finish(dc, TRUE, (dc->action == GDK_ACTION_MOVE), t); 4457 gtk_drag_finish(dc, TRUE, (dc->action == GDK_ACTION_MOVE), t);
4458 } 4458 }
4459 else if (sd->target == gdk_atom_intern("text/uri-list", FALSE)) { 4459 else if (sd->target == gdk_atom_intern("text/uri-list", FALSE)) {
4460 if (gaim_conversation_get_type(conv) == GAIM_CONV_TYPE_IM) 4460 if (gaim_conversation_get_type(conv) == GAIM_CONV_TYPE_IM)
4461 gaim_dnd_file_manage(sd, gaim_conversation_get_account(conv), gaim_conversation_get_name(conv)); 4461 pidgin_dnd_file_manage(sd, gaim_conversation_get_account(conv), gaim_conversation_get_name(conv));
4462 gtk_drag_finish(dc, TRUE, (dc->action == GDK_ACTION_MOVE), t); 4462 gtk_drag_finish(dc, TRUE, (dc->action == GDK_ACTION_MOVE), t);
4463 } 4463 }
4464 else 4464 else
4465 gtk_drag_finish(dc, FALSE, FALSE, t); 4465 gtk_drag_finish(dc, FALSE, FALSE, t);
4466 } 4466 }
7585 } 7585 }
7586 7586
7587 g_object_set_data(G_OBJECT(notebook->menu), "clicked_tab", gtkconv); 7587 g_object_set_data(G_OBJECT(notebook->menu), "clicked_tab", gtkconv);
7588 7588
7589 menu = notebook->menu; 7589 menu = notebook->menu;
7590 gaim_separator(GTK_WIDGET(menu)); 7590 pidgin_separator(GTK_WIDGET(menu));
7591 7591
7592 item = gtk_menu_item_new_with_label(_("Close other tabs")); 7592 item = gtk_menu_item_new_with_label(_("Close other tabs"));
7593 gtk_widget_show(item); 7593 gtk_widget_show(item);
7594 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); 7594 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
7595 g_signal_connect(G_OBJECT(item), "activate", 7595 g_signal_connect(G_OBJECT(item), "activate",
7599 gtk_widget_show(item); 7599 gtk_widget_show(item);
7600 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); 7600 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
7601 g_signal_connect(G_OBJECT(item), "activate", 7601 g_signal_connect(G_OBJECT(item), "activate",
7602 G_CALLBACK(close_window), win); 7602 G_CALLBACK(close_window), win);
7603 7603
7604 gaim_separator(menu); 7604 pidgin_separator(menu);
7605 7605
7606 item = gtk_menu_item_new_with_label(_("Detach this tab")); 7606 item = gtk_menu_item_new_with_label(_("Detach this tab"));
7607 gtk_widget_show(item); 7607 gtk_widget_show(item);
7608 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); 7608 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
7609 g_signal_connect(G_OBJECT(item), "activate", 7609 g_signal_connect(G_OBJECT(item), "activate",