Mercurial > pidgin.yaz
comparison pidgin/gtkimhtml.c @ 18043:6b7b13adb9b1
propagate from branch 'im.pidgin.pidgin' (head ac83216c7b78e652b47f1fd0bcb91f1eaf2cdf36)
to branch 'im.pidgin.pidgin.2.1.0' (head 30a48520e9bc26b0d3914edad456b063cd6cf9fe)
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Mon, 04 Jun 2007 23:48:54 +0000 |
parents | 92e27556160c 38a72d6dce7f |
children | 58e28ccf08e6 |
comparison
equal
deleted
inserted
replaced
18036:ee9f7ee0be66 | 18043:6b7b13adb9b1 |
---|---|
1342 gtk_binding_entry_add_signal (binding_set, GDK_minus, GDK_CONTROL_MASK, "format_function_toggle", 1, G_TYPE_INT, GTK_IMHTML_SHRINK); | 1342 gtk_binding_entry_add_signal (binding_set, GDK_minus, GDK_CONTROL_MASK, "format_function_toggle", 1, G_TYPE_INT, GTK_IMHTML_SHRINK); |
1343 binding_set = gtk_binding_set_by_class(klass); | 1343 binding_set = gtk_binding_set_by_class(klass); |
1344 gtk_binding_entry_add_signal (binding_set, GDK_r, GDK_CONTROL_MASK, "format_function_clear", 0); | 1344 gtk_binding_entry_add_signal (binding_set, GDK_r, GDK_CONTROL_MASK, "format_function_clear", 0); |
1345 gtk_binding_entry_add_signal (binding_set, GDK_KP_Enter, 0, "message_send", 0); | 1345 gtk_binding_entry_add_signal (binding_set, GDK_KP_Enter, 0, "message_send", 0); |
1346 gtk_binding_entry_add_signal (binding_set, GDK_Return, 0, "message_send", 0); | 1346 gtk_binding_entry_add_signal (binding_set, GDK_Return, 0, "message_send", 0); |
1347 gtk_binding_entry_add_signal (binding_set, GDK_z, GDK_CONTROL_MASK, "undo", 0); | 1347 gtk_binding_entry_add_signal (binding_set, GDK_z, GDK_CONTROL_MASK, "undo", 0); |
1348 gtk_binding_entry_add_signal (binding_set, GDK_z, GDK_CONTROL_MASK | GDK_SHIFT_MASK, "redo", 0); | 1348 gtk_binding_entry_add_signal (binding_set, GDK_z, GDK_CONTROL_MASK | GDK_SHIFT_MASK, "redo", 0); |
1349 gtk_binding_entry_add_signal (binding_set, GDK_F14, 0, "undo", 0); | 1349 gtk_binding_entry_add_signal (binding_set, GDK_F14, 0, "undo", 0); |
1350 | 1350 |
1351 } | 1351 } |
1352 | 1352 |
1353 static void gtk_imhtml_init (GtkIMHtml *imhtml) | 1353 static void gtk_imhtml_init (GtkIMHtml *imhtml) |
1354 { | 1354 { |
4905 void gtk_imhtml_set_funcs(GtkIMHtml *imhtml, GtkIMHtmlFuncs *f) | 4905 void gtk_imhtml_set_funcs(GtkIMHtml *imhtml, GtkIMHtmlFuncs *f) |
4906 { | 4906 { |
4907 g_return_if_fail(imhtml != NULL); | 4907 g_return_if_fail(imhtml != NULL); |
4908 imhtml->funcs = f; | 4908 imhtml->funcs = f; |
4909 } | 4909 } |
4910 | |
4911 void gtk_imhtml_setup_entry(GtkIMHtml *imhtml, PurpleConnectionFlags flags) | |
4912 { | |
4913 if (flags & PURPLE_CONNECTION_HTML) { | |
4914 char color[8]; | |
4915 GdkColor fg_color, bg_color; | |
4916 | |
4917 gtk_imhtml_set_format_functions(imhtml, GTK_IMHTML_ALL); | |
4918 if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/conversations/send_bold") != imhtml->edit.bold) | |
4919 gtk_imhtml_toggle_bold(imhtml); | |
4920 | |
4921 if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/conversations/send_italic") != imhtml->edit.italic) | |
4922 gtk_imhtml_toggle_italic(imhtml); | |
4923 | |
4924 if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/conversations/send_underline") != imhtml->edit.underline) | |
4925 gtk_imhtml_toggle_underline(imhtml); | |
4926 | |
4927 gtk_imhtml_toggle_fontface(imhtml, | |
4928 purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/font_face")); | |
4929 | |
4930 if (!(flags & PURPLE_CONNECTION_NO_FONTSIZE)) | |
4931 { | |
4932 int size = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/conversations/font_size"); | |
4933 | |
4934 /* 3 is the default. */ | |
4935 if (size != 3) | |
4936 gtk_imhtml_font_set_size(imhtml, size); | |
4937 } | |
4938 | |
4939 if(strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/fgcolor"), "") != 0) | |
4940 { | |
4941 gdk_color_parse(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/fgcolor"), | |
4942 &fg_color); | |
4943 g_snprintf(color, sizeof(color), "#%02x%02x%02x", | |
4944 fg_color.red / 256, | |
4945 fg_color.green / 256, | |
4946 fg_color.blue / 256); | |
4947 } else | |
4948 strcpy(color, ""); | |
4949 | |
4950 gtk_imhtml_toggle_forecolor(imhtml, color); | |
4951 | |
4952 if(!(flags & PURPLE_CONNECTION_NO_BGCOLOR) && | |
4953 strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/bgcolor"), "") != 0) | |
4954 { | |
4955 gdk_color_parse(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/bgcolor"), | |
4956 &bg_color); | |
4957 g_snprintf(color, sizeof(color), "#%02x%02x%02x", | |
4958 bg_color.red / 256, | |
4959 bg_color.green / 256, | |
4960 bg_color.blue / 256); | |
4961 } else | |
4962 strcpy(color, ""); | |
4963 | |
4964 gtk_imhtml_toggle_background(imhtml, color); | |
4965 | |
4966 if (flags & PURPLE_CONNECTION_FORMATTING_WBFO) | |
4967 gtk_imhtml_set_whole_buffer_formatting_only(imhtml, TRUE); | |
4968 else | |
4969 gtk_imhtml_set_whole_buffer_formatting_only(imhtml, FALSE); | |
4970 } else { | |
4971 imhtml_clear_formatting(imhtml); | |
4972 gtk_imhtml_set_format_functions(imhtml, 0); | |
4973 } | |
4974 } | |
4975 | |
4976 |