comparison src/dialogs.c @ 4685:794cc8ec1166

[gaim-migrate @ 4996] this fixes the ever-red tabs, the convo titles not switching, and some other fun stuff. Oh, and the font-face button in the convo toolbar is back. committer: Tailor Script <tailor@pidgin.im>
author Nathan Walp <nwalp@pidgin.im>
date Mon, 10 Mar 2003 04:11:18 +0000
parents 4bf9c6e8e432
children 283fb289c510
comparison
equal deleted inserted replaced
4684:582af33c0736 4685:794cc8ec1166
277 object_data = g_object_get_data(G_OBJECT(w), "dialog_type"); 277 object_data = g_object_get_data(G_OBJECT(w), "dialog_type");
278 278
279 gtkconv = GAIM_GTK_CONVERSATION(c); 279 gtkconv = GAIM_GTK_CONVERSATION(c);
280 280
281 if (GTK_IS_COLOR_SELECTION_DIALOG(w)) { 281 if (GTK_IS_COLOR_SELECTION_DIALOG(w)) {
282 gaim_gtk_set_state_lock(TRUE);
283 if (w == gtkconv->dialogs.fg_color) { 282 if (w == gtkconv->dialogs.fg_color) {
284 gtk_toggle_button_set_active( 283 gtk_toggle_button_set_active(
285 GTK_TOGGLE_BUTTON(gtkconv->toolbar.fgcolor), FALSE); 284 GTK_TOGGLE_BUTTON(gtkconv->toolbar.fgcolor), FALSE);
286 gtkconv->dialogs.fg_color = NULL; 285 gtkconv->dialogs.fg_color = NULL;
287 } else { 286 } else {
288 gtk_toggle_button_set_active( 287 gtk_toggle_button_set_active(
289 GTK_TOGGLE_BUTTON(gtkconv->toolbar.bgcolor), FALSE); 288 GTK_TOGGLE_BUTTON(gtkconv->toolbar.bgcolor), FALSE);
290 gtkconv->dialogs.bg_color = NULL; 289 gtkconv->dialogs.bg_color = NULL;
291 } 290 }
292 gaim_gtk_set_state_lock(FALSE);
293 } else if (GTK_IS_FONT_SELECTION_DIALOG(w)) { 291 } else if (GTK_IS_FONT_SELECTION_DIALOG(w)) {
294 gaim_gtk_set_state_lock(TRUE);
295 gtk_toggle_button_set_active( 292 gtk_toggle_button_set_active(
296 GTK_TOGGLE_BUTTON(gtkconv->toolbar.normal_size), FALSE); 293 GTK_TOGGLE_BUTTON(gtkconv->toolbar.font), FALSE);
297 gaim_gtk_set_state_lock(FALSE);
298 gtkconv->dialogs.font = NULL; 294 gtkconv->dialogs.font = NULL;
299 } else if (!g_strcasecmp(object_data, "smiley dialog")) { 295 } else if (!g_strcasecmp(object_data, "smiley dialog")) {
300 gaim_gtk_set_state_lock(TRUE);
301 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.smiley), 296 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.smiley),
302 FALSE); 297 FALSE);
303 gaim_gtk_set_state_lock(FALSE);
304 gtkconv->dialogs.smiley = NULL; 298 gtkconv->dialogs.smiley = NULL;
305 } else if (!g_strcasecmp(object_data, "log dialog")) { 299 } else if (!g_strcasecmp(object_data, "log dialog")) {
306 gaim_gtk_set_state_lock(TRUE);
307 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkconv->toolbar.log), 300 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkconv->toolbar.log),
308 FALSE); 301 FALSE);
309 gaim_gtk_set_state_lock(FALSE);
310 gtkconv->dialogs.log = NULL; 302 gtkconv->dialogs.log = NULL;
311 } 303 }
312 304
313 dialogwindows = g_list_remove(dialogwindows, w); 305 dialogwindows = g_list_remove(dialogwindows, w);
314 gtk_widget_destroy(w); 306 gtk_widget_destroy(w);
2607 struct gaim_gtk_conversation *gtkconv; 2599 struct gaim_gtk_conversation *gtkconv;
2608 2600
2609 gtkconv = GAIM_GTK_CONVERSATION(c); 2601 gtkconv = GAIM_GTK_CONVERSATION(c);
2610 2602
2611 if (gtkconv->toolbar.log) { 2603 if (gtkconv->toolbar.log) {
2612 gaim_gtk_set_state_lock(TRUE);
2613 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkconv->toolbar.log), 2604 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkconv->toolbar.log),
2614 FALSE); 2605 FALSE);
2615 gaim_gtk_set_state_lock(FALSE);
2616 } 2606 }
2617 2607
2618 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.log); 2608 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.log);
2619 gtk_widget_destroy(gtkconv->dialogs.log); 2609 gtk_widget_destroy(gtkconv->dialogs.log);
2620 gtkconv->dialogs.log = NULL; 2610 gtkconv->dialogs.log = NULL;
2940 struct gaim_gtk_conversation *gtkconv; 2930 struct gaim_gtk_conversation *gtkconv;
2941 2931
2942 gtkconv = GAIM_GTK_CONVERSATION(c); 2932 gtkconv = GAIM_GTK_CONVERSATION(c);
2943 2933
2944 if (gtkconv->toolbar.link) { 2934 if (gtkconv->toolbar.link) {
2945 gaim_gtk_set_state_lock(TRUE);
2946 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.link), 2935 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.link),
2947 FALSE); 2936 FALSE);
2948 gaim_gtk_set_state_lock(FALSE); 2937 }
2949 } 2938
2950 2939 destroy_dialog(NULL, gtkconv->dialogs.link);
2951 destroy_dialog(NULL, gtkconv->toolbar.link); 2940 gtkconv->dialogs.link = NULL;
2952 gtkconv->toolbar.link = NULL;
2953 } 2941 }
2954 2942
2955 void do_insert_link(GtkWidget *w, int resp, struct linkdlg *b) 2943 void do_insert_link(GtkWidget *w, int resp, struct linkdlg *b)
2956 { 2944 {
2957 struct gaim_gtk_conversation *gtkconv; 2945 struct gaim_gtk_conversation *gtkconv;
2975 2963
2976 g_free(open_tag); 2964 g_free(open_tag);
2977 } 2965 }
2978 2966
2979 if (gtkconv->toolbar.link) { 2967 if (gtkconv->toolbar.link) {
2980 gaim_gtk_set_state_lock(TRUE);
2981 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.link), 2968 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.link),
2982 FALSE); 2969 FALSE);
2983 gaim_gtk_set_state_lock(FALSE);
2984 } 2970 }
2985 2971
2986 gtkconv->dialogs.link = NULL; 2972 gtkconv->dialogs.link = NULL;
2987 destroy_dialog(NULL, b->window); 2973 destroy_dialog(NULL, b->window);
2988 } 2974 }
3094 struct gaim_gtk_conversation *gtkconv; 3080 struct gaim_gtk_conversation *gtkconv;
3095 3081
3096 gtkconv = GAIM_GTK_CONVERSATION(c); 3082 gtkconv = GAIM_GTK_CONVERSATION(c);
3097 3083
3098 if (gtkconv->toolbar.fgcolor && widget) { 3084 if (gtkconv->toolbar.fgcolor && widget) {
3099 gaim_gtk_set_state_lock(TRUE);
3100 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.fgcolor), 3085 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.fgcolor),
3101 FALSE); 3086 FALSE);
3102 gaim_gtk_set_state_lock(FALSE);
3103 } 3087 }
3104 3088
3105 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.fg_color); 3089 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.fg_color);
3106 gtk_widget_destroy(gtkconv->dialogs.fg_color); 3090 gtk_widget_destroy(gtkconv->dialogs.fg_color);
3107 gtkconv->dialogs.fg_color = NULL; 3091 gtkconv->dialogs.fg_color = NULL;
3112 struct gaim_gtk_conversation *gtkconv; 3096 struct gaim_gtk_conversation *gtkconv;
3113 3097
3114 gtkconv = GAIM_GTK_CONVERSATION(c); 3098 gtkconv = GAIM_GTK_CONVERSATION(c);
3115 3099
3116 if (gtkconv->toolbar.bgcolor && widget) { 3100 if (gtkconv->toolbar.bgcolor && widget) {
3117 gaim_gtk_set_state_lock(TRUE);
3118 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.bgcolor), 3101 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.bgcolor),
3119 FALSE); 3102 FALSE);
3120 gaim_gtk_set_state_lock(FALSE);
3121 } 3103 }
3122 3104
3123 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.bg_color); 3105 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.bg_color);
3124 gtk_widget_destroy(gtkconv->dialogs.bg_color); 3106 gtk_widget_destroy(gtkconv->dialogs.bg_color);
3125 gtkconv->dialogs.bg_color = NULL; 3107 gtkconv->dialogs.bg_color = NULL;
3289 { 3271 {
3290 struct gaim_gtk_conversation *gtkconv; 3272 struct gaim_gtk_conversation *gtkconv;
3291 3273
3292 gtkconv = GAIM_GTK_CONVERSATION(c); 3274 gtkconv = GAIM_GTK_CONVERSATION(c);
3293 3275
3294 if (gtkconv->toolbar.normal_size && widget) { 3276 if (gtkconv->toolbar.font && widget) {
3295 gaim_gtk_set_state_lock(TRUE);
3296 gtk_toggle_button_set_active( 3277 gtk_toggle_button_set_active(
3297 GTK_TOGGLE_BUTTON(gtkconv->toolbar.normal_size), FALSE); 3278 GTK_TOGGLE_BUTTON(gtkconv->toolbar.font), FALSE);
3298 gaim_gtk_set_state_lock(FALSE);
3299 } 3279 }
3300 3280
3301 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.font); 3281 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.font);
3302 gtk_widget_destroy(gtkconv->dialogs.font); 3282 gtk_widget_destroy(gtkconv->dialogs.font);
3303 gtkconv->dialogs.font = NULL; 3283 gtkconv->dialogs.font = NULL;
3699 struct gaim_gtk_conversation *gtkconv; 3679 struct gaim_gtk_conversation *gtkconv;
3700 3680
3701 gtkconv = GAIM_GTK_CONVERSATION(c); 3681 gtkconv = GAIM_GTK_CONVERSATION(c);
3702 3682
3703 if (gtkconv->toolbar.smiley) { 3683 if (gtkconv->toolbar.smiley) {
3704 gaim_gtk_set_state_lock(TRUE);
3705 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.smiley), 3684 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.smiley),
3706 FALSE); 3685 FALSE);
3707 gaim_gtk_set_state_lock(FALSE);
3708 } 3686 }
3709 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.smiley); 3687 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.smiley);
3710 gtk_widget_destroy(gtkconv->dialogs.smiley); 3688 gtk_widget_destroy(gtkconv->dialogs.smiley);
3711 gtkconv->dialogs.smiley = NULL; 3689 gtkconv->dialogs.smiley = NULL;
3712 } 3690 }