Mercurial > pidgin.yaz
comparison src/dialogs.c @ 5676:dae79aefac8d
[gaim-migrate @ 6094]
I've been meaning to do this for a LONG time. The conversation API now
follows the naming convention of the rest of the new APIs. I'll get some
g_return_*_if_fail() checks in there soon.
committer: Tailor Script <tailor@pidgin.im>
| author | Christian Hammond <chipx86@chipx86.com> |
|---|---|
| date | Mon, 02 Jun 2003 21:51:06 +0000 |
| parents | b07aa997ddd8 |
| children | 1d140b31d4b3 |
comparison
equal
deleted
inserted
replaced
| 5675:17e345ffeddb | 5676:dae79aefac8d |
|---|---|
| 206 GtkWidget *window; | 206 GtkWidget *window; |
| 207 GtkWidget *url; | 207 GtkWidget *url; |
| 208 GtkWidget *text; | 208 GtkWidget *text; |
| 209 GtkWidget *toggle; | 209 GtkWidget *toggle; |
| 210 GtkWidget *entry; | 210 GtkWidget *entry; |
| 211 struct gaim_conversation *c; | 211 GaimConversation *c; |
| 212 }; | 212 }; |
| 213 | 213 |
| 214 struct passwddlg { | 214 struct passwddlg { |
| 215 GtkWidget *window; | 215 GtkWidget *window; |
| 216 GtkWidget *ok; | 216 GtkWidget *ok; |
| 245 | 245 |
| 246 /*------------------------------------------------------------------------*/ | 246 /*------------------------------------------------------------------------*/ |
| 247 /* Destroys */ | 247 /* Destroys */ |
| 248 /*------------------------------------------------------------------------*/ | 248 /*------------------------------------------------------------------------*/ |
| 249 | 249 |
| 250 static gint delete_event_dialog(GtkWidget *w, GdkEventAny *e, struct gaim_conversation *c) | 250 static gint delete_event_dialog(GtkWidget *w, GdkEventAny *e, GaimConversation *c) |
| 251 { | 251 { |
| 252 struct gaim_gtk_conversation *gtkconv; | 252 GaimGtkConversation *gtkconv; |
| 253 gchar *object_data; | 253 gchar *object_data; |
| 254 | 254 |
| 255 object_data = g_object_get_data(G_OBJECT(w), "dialog_type"); | 255 object_data = g_object_get_data(G_OBJECT(w), "dialog_type"); |
| 256 | 256 |
| 257 gtkconv = GAIM_GTK_CONVERSATION(c); | 257 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 350 { | 350 { |
| 351 char *labeltext; | 351 char *labeltext; |
| 352 GtkWidget *hbox, *vbox; | 352 GtkWidget *hbox, *vbox; |
| 353 GtkWidget *label; | 353 GtkWidget *label; |
| 354 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG); | 354 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG); |
| 355 struct gaim_conversation *c = gaim_find_conversation(who); | 355 GaimConversation *c = gaim_find_conversation(who); |
| 356 | 356 |
| 357 struct warning *w = g_new0(struct warning, 1); | 357 struct warning *w = g_new0(struct warning, 1); |
| 358 w->who = who; | 358 w->who = who; |
| 359 w->gc = gc; | 359 w->gc = gc; |
| 360 | 360 |
| 410 } | 410 } |
| 411 | 411 |
| 412 void do_remove_buddy(struct buddy *b) | 412 void do_remove_buddy(struct buddy *b) |
| 413 { | 413 { |
| 414 struct group *g; | 414 struct group *g; |
| 415 struct gaim_conversation *c; | 415 GaimConversation *c; |
| 416 gchar *name; | 416 gchar *name; |
| 417 | 417 |
| 418 if (!b) | 418 if (!b) |
| 419 return; | 419 return; |
| 420 | 420 |
| 439 { | 439 { |
| 440 GaimBlistNode *b = ((GaimBlistNode*)g)->child; | 440 GaimBlistNode *b = ((GaimBlistNode*)g)->child; |
| 441 while (b) { | 441 while (b) { |
| 442 if(GAIM_BLIST_NODE_IS_BUDDY(b)) { | 442 if(GAIM_BLIST_NODE_IS_BUDDY(b)) { |
| 443 struct buddy *bd = (struct buddy *)b; | 443 struct buddy *bd = (struct buddy *)b; |
| 444 struct gaim_conversation *c = gaim_find_conversation(bd->name); | 444 GaimConversation *c = gaim_find_conversation(bd->name); |
| 445 if(bd->account->gc) { | 445 if(bd->account->gc) { |
| 446 serv_remove_buddy(bd->account->gc, bd->name, g->name); | 446 serv_remove_buddy(bd->account->gc, bd->name, g->name); |
| 447 gaim_blist_remove_buddy(bd); | 447 gaim_blist_remove_buddy(bd); |
| 448 | 448 |
| 449 if (c != NULL) | 449 if (c != NULL) |
| 499 /* The dialog for getting an error */ | 499 /* The dialog for getting an error */ |
| 500 /*------------------------------------------------------------------------*/ | 500 /*------------------------------------------------------------------------*/ |
| 501 static void do_im(GtkWidget *widget, int resp, struct getuserinfo *info) | 501 static void do_im(GtkWidget *widget, int resp, struct getuserinfo *info) |
| 502 { | 502 { |
| 503 const char *who; | 503 const char *who; |
| 504 struct gaim_conversation *conv; | 504 GaimConversation *conv; |
| 505 GaimAccount *account; | 505 GaimAccount *account; |
| 506 | 506 |
| 507 if (resp == GTK_RESPONSE_OK) { | 507 if (resp == GTK_RESPONSE_OK) { |
| 508 who = gtk_entry_get_text(GTK_ENTRY(info->entry)); | 508 who = gtk_entry_get_text(GTK_ENTRY(info->entry)); |
| 509 | 509 |
| 844 | 844 |
| 845 /*------------------------------------------------------------------------*/ | 845 /*------------------------------------------------------------------------*/ |
| 846 /* The dialog for adding buddies */ | 846 /* The dialog for adding buddies */ |
| 847 /*------------------------------------------------------------------------*/ | 847 /*------------------------------------------------------------------------*/ |
| 848 | 848 |
| 849 extern void add_callback(GtkWidget *, struct gaim_conversation *); | 849 extern void add_callback(GtkWidget *, GaimConversation *); |
| 850 | 850 |
| 851 void do_add_buddy(GtkWidget *w, int resp, struct addbuddy *a) | 851 void do_add_buddy(GtkWidget *w, int resp, struct addbuddy *a) |
| 852 { | 852 { |
| 853 const char *grp, *who, *whoalias; | 853 const char *grp, *who, *whoalias; |
| 854 struct gaim_conversation *c; | 854 GaimConversation *c; |
| 855 struct buddy *b; | 855 struct buddy *b; |
| 856 struct group *g; | 856 struct group *g; |
| 857 void *icon_data; | 857 void *icon_data; |
| 858 void *icon_data2; | 858 void *icon_data2; |
| 859 int icon_len; | 859 int icon_len; |
| 2505 | 2505 |
| 2506 /*------------------------------------------------------------------------*/ | 2506 /*------------------------------------------------------------------------*/ |
| 2507 /* Functions Called To Add A Log */ | 2507 /* Functions Called To Add A Log */ |
| 2508 /*------------------------------------------------------------------------*/ | 2508 /*------------------------------------------------------------------------*/ |
| 2509 | 2509 |
| 2510 void cancel_log(GtkWidget *widget, struct gaim_conversation *c) | 2510 void cancel_log(GtkWidget *widget, GaimConversation *c) |
| 2511 { | 2511 { |
| 2512 struct gaim_gtk_conversation *gtkconv; | 2512 GaimGtkConversation *gtkconv; |
| 2513 | 2513 |
| 2514 gtkconv = GAIM_GTK_CONVERSATION(c); | 2514 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 2515 | 2515 |
| 2516 if (gtkconv->toolbar.log) { | 2516 if (gtkconv->toolbar.log) { |
| 2517 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkconv->toolbar.log), | 2517 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkconv->toolbar.log), |
| 2521 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.log); | 2521 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.log); |
| 2522 gtk_widget_destroy(gtkconv->dialogs.log); | 2522 gtk_widget_destroy(gtkconv->dialogs.log); |
| 2523 gtkconv->dialogs.log = NULL; | 2523 gtkconv->dialogs.log = NULL; |
| 2524 } | 2524 } |
| 2525 | 2525 |
| 2526 void do_log(GtkWidget *w, struct gaim_conversation *c) | 2526 void do_log(GtkWidget *w, GaimConversation *c) |
| 2527 { | 2527 { |
| 2528 struct gaim_gtk_conversation *gtkconv; | 2528 GaimGtkConversation *gtkconv; |
| 2529 struct log_conversation *l; | 2529 struct log_conversation *l; |
| 2530 const char *file; | 2530 const char *file; |
| 2531 char path[PATHSIZE]; | 2531 char path[PATHSIZE]; |
| 2532 | 2532 |
| 2533 gtkconv = GAIM_GTK_CONVERSATION(c); | 2533 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 2551 } | 2551 } |
| 2552 | 2552 |
| 2553 cancel_log(NULL, c); | 2553 cancel_log(NULL, c); |
| 2554 } | 2554 } |
| 2555 | 2555 |
| 2556 void show_log_dialog(struct gaim_conversation *c) | 2556 void show_log_dialog(GaimConversation *c) |
| 2557 { | 2557 { |
| 2558 struct gaim_gtk_conversation *gtkconv; | 2558 GaimGtkConversation *gtkconv; |
| 2559 char *buf = g_malloc(BUF_LEN); | 2559 char *buf = g_malloc(BUF_LEN); |
| 2560 | 2560 |
| 2561 gtkconv = GAIM_GTK_CONVERSATION(c); | 2561 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 2562 | 2562 |
| 2563 if (!gtkconv->dialogs.log) { | 2563 if (!gtkconv->dialogs.log) { |
| 2806 | 2806 |
| 2807 /*------------------------------------------------------*/ | 2807 /*------------------------------------------------------*/ |
| 2808 /* Link Dialog */ | 2808 /* Link Dialog */ |
| 2809 /*------------------------------------------------------*/ | 2809 /*------------------------------------------------------*/ |
| 2810 | 2810 |
| 2811 void cancel_link(GtkWidget *widget, struct gaim_conversation *c) | 2811 void cancel_link(GtkWidget *widget, GaimConversation *c) |
| 2812 { | 2812 { |
| 2813 struct gaim_gtk_conversation *gtkconv; | 2813 GaimGtkConversation *gtkconv; |
| 2814 | 2814 |
| 2815 gtkconv = GAIM_GTK_CONVERSATION(c); | 2815 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 2816 | 2816 |
| 2817 if (gtkconv->toolbar.link) { | 2817 if (gtkconv->toolbar.link) { |
| 2818 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.link), | 2818 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.link), |
| 2823 gtkconv->dialogs.link = NULL; | 2823 gtkconv->dialogs.link = NULL; |
| 2824 } | 2824 } |
| 2825 | 2825 |
| 2826 void do_insert_link(GtkWidget *w, int resp, struct linkdlg *b) | 2826 void do_insert_link(GtkWidget *w, int resp, struct linkdlg *b) |
| 2827 { | 2827 { |
| 2828 struct gaim_gtk_conversation *gtkconv; | 2828 GaimGtkConversation *gtkconv; |
| 2829 char *open_tag; | 2829 char *open_tag; |
| 2830 const char *urltext, *showtext; | 2830 const char *urltext, *showtext; |
| 2831 | 2831 |
| 2832 gtkconv = GAIM_GTK_CONVERSATION(b->c); | 2832 gtkconv = GAIM_GTK_CONVERSATION(b->c); |
| 2833 | 2833 |
| 2854 | 2854 |
| 2855 gtkconv->dialogs.link = NULL; | 2855 gtkconv->dialogs.link = NULL; |
| 2856 destroy_dialog(NULL, b->window); | 2856 destroy_dialog(NULL, b->window); |
| 2857 } | 2857 } |
| 2858 | 2858 |
| 2859 void show_insert_link(GtkWidget *linky, struct gaim_conversation *c) | 2859 void show_insert_link(GtkWidget *linky, GaimConversation *c) |
| 2860 { | 2860 { |
| 2861 struct gaim_gtk_conversation *gtkconv; | 2861 GaimGtkConversation *gtkconv; |
| 2862 struct gaim_gtk_window *gtkwin; | 2862 GaimGtkWindow *gtkwin; |
| 2863 GtkWidget *table; | 2863 GtkWidget *table; |
| 2864 GtkWidget *label; | 2864 GtkWidget *label; |
| 2865 GtkWidget *hbox; | 2865 GtkWidget *hbox; |
| 2866 GtkWidget *vbox; | 2866 GtkWidget *vbox; |
| 2867 | 2867 |
| 2952 /*------------------------------------------------------*/ | 2952 /*------------------------------------------------------*/ |
| 2953 | 2953 |
| 2954 GtkWidget *fgcseld = NULL; | 2954 GtkWidget *fgcseld = NULL; |
| 2955 GtkWidget *bgcseld = NULL; | 2955 GtkWidget *bgcseld = NULL; |
| 2956 | 2956 |
| 2957 void cancel_fgcolor(GtkWidget *widget, struct gaim_conversation *c) | 2957 void cancel_fgcolor(GtkWidget *widget, GaimConversation *c) |
| 2958 { | 2958 { |
| 2959 struct gaim_gtk_conversation *gtkconv; | 2959 GaimGtkConversation *gtkconv; |
| 2960 | 2960 |
| 2961 gtkconv = GAIM_GTK_CONVERSATION(c); | 2961 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 2962 | 2962 |
| 2963 if (gtkconv->toolbar.fgcolor && widget) { | 2963 if (gtkconv->toolbar.fgcolor && widget) { |
| 2964 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.fgcolor), | 2964 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.fgcolor), |
| 2968 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.fg_color); | 2968 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.fg_color); |
| 2969 gtk_widget_destroy(gtkconv->dialogs.fg_color); | 2969 gtk_widget_destroy(gtkconv->dialogs.fg_color); |
| 2970 gtkconv->dialogs.fg_color = NULL; | 2970 gtkconv->dialogs.fg_color = NULL; |
| 2971 } | 2971 } |
| 2972 | 2972 |
| 2973 void cancel_bgcolor(GtkWidget *widget, struct gaim_conversation *c) | 2973 void cancel_bgcolor(GtkWidget *widget, GaimConversation *c) |
| 2974 { | 2974 { |
| 2975 struct gaim_gtk_conversation *gtkconv; | 2975 GaimGtkConversation *gtkconv; |
| 2976 | 2976 |
| 2977 gtkconv = GAIM_GTK_CONVERSATION(c); | 2977 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 2978 | 2978 |
| 2979 if (gtkconv->toolbar.bgcolor && widget) { | 2979 if (gtkconv->toolbar.bgcolor && widget) { |
| 2980 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.bgcolor), | 2980 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.bgcolor), |
| 2987 } | 2987 } |
| 2988 | 2988 |
| 2989 void do_fgcolor(GtkWidget *widget, GtkColorSelection *colorsel) | 2989 void do_fgcolor(GtkWidget *widget, GtkColorSelection *colorsel) |
| 2990 { | 2990 { |
| 2991 GdkColor text_color; | 2991 GdkColor text_color; |
| 2992 struct gaim_conversation *c; | 2992 GaimConversation *c; |
| 2993 struct gaim_gtk_conversation *gtkconv; | 2993 GaimGtkConversation *gtkconv; |
| 2994 char *open_tag; | 2994 char *open_tag; |
| 2995 | 2995 |
| 2996 open_tag = g_malloc(30); | 2996 open_tag = g_malloc(30); |
| 2997 | 2997 |
| 2998 gtk_color_selection_get_current_color(colorsel, &text_color); | 2998 gtk_color_selection_get_current_color(colorsel, &text_color); |
| 3018 } | 3018 } |
| 3019 | 3019 |
| 3020 void do_bgcolor(GtkWidget *widget, GtkColorSelection *colorsel) | 3020 void do_bgcolor(GtkWidget *widget, GtkColorSelection *colorsel) |
| 3021 { | 3021 { |
| 3022 GdkColor text_color; | 3022 GdkColor text_color; |
| 3023 struct gaim_conversation *c; | 3023 GaimConversation *c; |
| 3024 struct gaim_gtk_conversation *gtkconv; | 3024 GaimGtkConversation *gtkconv; |
| 3025 char *open_tag; | 3025 char *open_tag; |
| 3026 | 3026 |
| 3027 open_tag = g_malloc(30); | 3027 open_tag = g_malloc(30); |
| 3028 | 3028 |
| 3029 gtk_color_selection_get_current_color(colorsel, &text_color); | 3029 gtk_color_selection_get_current_color(colorsel, &text_color); |
| 3046 | 3046 |
| 3047 g_free(open_tag); | 3047 g_free(open_tag); |
| 3048 cancel_bgcolor(NULL, c); | 3048 cancel_bgcolor(NULL, c); |
| 3049 } | 3049 } |
| 3050 | 3050 |
| 3051 void show_fgcolor_dialog(struct gaim_conversation *c, GtkWidget *color) | 3051 void show_fgcolor_dialog(GaimConversation *c, GtkWidget *color) |
| 3052 { | 3052 { |
| 3053 struct gaim_gtk_conversation *gtkconv; | 3053 GaimGtkConversation *gtkconv; |
| 3054 GtkWidget *colorsel; | 3054 GtkWidget *colorsel; |
| 3055 GdkColor fgcolor; | 3055 GdkColor fgcolor; |
| 3056 | 3056 |
| 3057 gtkconv = GAIM_GTK_CONVERSATION(c); | 3057 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 3058 | 3058 |
| 3098 | 3098 |
| 3099 gtk_widget_show(gtkconv->dialogs.fg_color); | 3099 gtk_widget_show(gtkconv->dialogs.fg_color); |
| 3100 gdk_window_raise(gtkconv->dialogs.fg_color->window); | 3100 gdk_window_raise(gtkconv->dialogs.fg_color->window); |
| 3101 } | 3101 } |
| 3102 | 3102 |
| 3103 void show_bgcolor_dialog(struct gaim_conversation *c, GtkWidget *color) | 3103 void show_bgcolor_dialog(GaimConversation *c, GtkWidget *color) |
| 3104 { | 3104 { |
| 3105 struct gaim_gtk_conversation *gtkconv; | 3105 GaimGtkConversation *gtkconv; |
| 3106 GtkWidget *colorsel; | 3106 GtkWidget *colorsel; |
| 3107 GdkColor bgcolor; | 3107 GdkColor bgcolor; |
| 3108 | 3108 |
| 3109 gtkconv = GAIM_GTK_CONVERSATION(c); | 3109 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 3110 | 3110 |
| 3154 | 3154 |
| 3155 /*------------------------------------------------------------------------*/ | 3155 /*------------------------------------------------------------------------*/ |
| 3156 /* Font Selection Dialog */ | 3156 /* Font Selection Dialog */ |
| 3157 /*------------------------------------------------------------------------*/ | 3157 /*------------------------------------------------------------------------*/ |
| 3158 | 3158 |
| 3159 void cancel_font(GtkWidget *widget, struct gaim_conversation *c) | 3159 void cancel_font(GtkWidget *widget, GaimConversation *c) |
| 3160 { | 3160 { |
| 3161 struct gaim_gtk_conversation *gtkconv; | 3161 GaimGtkConversation *gtkconv; |
| 3162 | 3162 |
| 3163 gtkconv = GAIM_GTK_CONVERSATION(c); | 3163 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 3164 | 3164 |
| 3165 if (gtkconv->toolbar.font && widget) { | 3165 if (gtkconv->toolbar.font && widget) { |
| 3166 gtk_toggle_button_set_active( | 3166 gtk_toggle_button_set_active( |
| 3176 { | 3176 { |
| 3177 /* this could be expanded to include font size, weight, etc. | 3177 /* this could be expanded to include font size, weight, etc. |
| 3178 but for now only works with font face */ | 3178 but for now only works with font face */ |
| 3179 int i = 0; | 3179 int i = 0; |
| 3180 char *fontname; | 3180 char *fontname; |
| 3181 struct gaim_conversation *c = g_object_get_data(G_OBJECT(fontsel), | 3181 GaimConversation *c = g_object_get_data(G_OBJECT(fontsel), |
| 3182 "gaim_conversation"); | 3182 "gaim_conversation"); |
| 3183 | 3183 |
| 3184 fontname = gtk_font_selection_dialog_get_font_name(GTK_FONT_SELECTION_DIALOG(fontsel)); | 3184 fontname = gtk_font_selection_dialog_get_font_name(GTK_FONT_SELECTION_DIALOG(fontsel)); |
| 3185 | 3185 |
| 3186 if (c) { | 3186 if (c) { |
| 3213 { | 3213 { |
| 3214 gtk_widget_destroy(fontseld); | 3214 gtk_widget_destroy(fontseld); |
| 3215 fontseld = NULL; | 3215 fontseld = NULL; |
| 3216 } | 3216 } |
| 3217 | 3217 |
| 3218 void show_font_dialog(struct gaim_conversation *c, GtkWidget *font) | 3218 void show_font_dialog(GaimConversation *c, GtkWidget *font) |
| 3219 { | 3219 { |
| 3220 struct gaim_gtk_conversation *gtkconv; | 3220 GaimGtkConversation *gtkconv; |
| 3221 char fonttif[128]; | 3221 char fonttif[128]; |
| 3222 const char *fontface; | 3222 const char *fontface; |
| 3223 | 3223 |
| 3224 gtkconv = GAIM_GTK_CONVERSATION(c); | 3224 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 3225 | 3225 |
| 3473 gtk_widget_show_all(ca->window); | 3473 gtk_widget_show_all(ca->window); |
| 3474 } | 3474 } |
| 3475 | 3475 |
| 3476 /* smiley dialog */ | 3476 /* smiley dialog */ |
| 3477 | 3477 |
| 3478 void close_smiley_dialog(GtkWidget *widget, struct gaim_conversation *c) | 3478 void close_smiley_dialog(GtkWidget *widget, GaimConversation *c) |
| 3479 { | 3479 { |
| 3480 struct gaim_gtk_conversation *gtkconv; | 3480 GaimGtkConversation *gtkconv; |
| 3481 | 3481 |
| 3482 gtkconv = GAIM_GTK_CONVERSATION(c); | 3482 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 3483 | 3483 |
| 3484 if (gtkconv->toolbar.smiley) { | 3484 if (gtkconv->toolbar.smiley) { |
| 3485 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.smiley), | 3485 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.smiley), |
| 3490 gtk_widget_destroy(gtkconv->dialogs.smiley); | 3490 gtk_widget_destroy(gtkconv->dialogs.smiley); |
| 3491 gtkconv->dialogs.smiley = NULL; | 3491 gtkconv->dialogs.smiley = NULL; |
| 3492 } | 3492 } |
| 3493 } | 3493 } |
| 3494 | 3494 |
| 3495 void insert_smiley_text(GtkWidget *widget, struct gaim_conversation *c) | 3495 void insert_smiley_text(GtkWidget *widget, GaimConversation *c) |
| 3496 { | 3496 { |
| 3497 struct gaim_gtk_conversation *gtkconv; | 3497 GaimGtkConversation *gtkconv; |
| 3498 char *smiley_text = g_object_get_data(G_OBJECT(widget), "smiley_text"); | 3498 char *smiley_text = g_object_get_data(G_OBJECT(widget), "smiley_text"); |
| 3499 GtkTextMark *select_mark, *insert_mark; | 3499 GtkTextMark *select_mark, *insert_mark; |
| 3500 GtkTextIter select_iter, insert_iter; | 3500 GtkTextIter select_iter, insert_iter; |
| 3501 | 3501 |
| 3502 gtkconv = GAIM_GTK_CONVERSATION(c); | 3502 gtkconv = GAIM_GTK_CONVERSATION(c); |
| 3512 | 3512 |
| 3513 gtk_text_buffer_insert_at_cursor(gtkconv->entry_buffer, smiley_text, -1); | 3513 gtk_text_buffer_insert_at_cursor(gtkconv->entry_buffer, smiley_text, -1); |
| 3514 close_smiley_dialog(NULL, c); | 3514 close_smiley_dialog(NULL, c); |
| 3515 } | 3515 } |
| 3516 | 3516 |
| 3517 static void add_smiley(struct gaim_conversation *c, GtkWidget *table, int row, int col, char *filename, char *face) | 3517 static void add_smiley(GaimConversation *c, GtkWidget *table, int row, int col, char *filename, char *face) |
| 3518 { | 3518 { |
| 3519 GtkWidget *image; | 3519 GtkWidget *image; |
| 3520 GtkWidget *button; | 3520 GtkWidget *button; |
| 3521 struct gaim_gtk_conversation *gtkconv = GAIM_GTK_CONVERSATION(c); | 3521 GaimGtkConversation *gtkconv = GAIM_GTK_CONVERSATION(c); |
| 3522 | 3522 |
| 3523 image = gtk_image_new_from_file(filename); | 3523 image = gtk_image_new_from_file(filename); |
| 3524 button = gtk_button_new(); | 3524 button = gtk_button_new(); |
| 3525 gtk_container_add(GTK_CONTAINER(button), image); | 3525 gtk_container_add(GTK_CONTAINER(button), image); |
| 3526 g_object_set_data(G_OBJECT(button), "smiley_text", face); | 3526 g_object_set_data(G_OBJECT(button), "smiley_text", face); |
| 3544 list = list->next; | 3544 list = list->next; |
| 3545 } | 3545 } |
| 3546 return TRUE; | 3546 return TRUE; |
| 3547 } | 3547 } |
| 3548 | 3548 |
| 3549 void show_smiley_dialog(struct gaim_conversation *c, GtkWidget *widget) | 3549 void show_smiley_dialog(GaimConversation *c, GtkWidget *widget) |
| 3550 { | 3550 { |
| 3551 struct gaim_gtk_conversation *gtkconv; | 3551 GaimGtkConversation *gtkconv; |
| 3552 GtkWidget *dialog; | 3552 GtkWidget *dialog; |
| 3553 GtkWidget *smiley_table = NULL; | 3553 GtkWidget *smiley_table = NULL; |
| 3554 GSList *smileys, *unique_smileys = NULL; | 3554 GSList *smileys, *unique_smileys = NULL; |
| 3555 int width; | 3555 int width; |
| 3556 int row = 0, col = 0; | 3556 int row = 0, col = 0; |
