| 44 return FALSE; |
44 return FALSE; |
| 45 } |
45 } |
| 46 |
46 |
| 47 |
47 |
| 48 static void |
48 static void |
| 49 multiline_cb(GtkWidget *view, gpointer data) { |
49 multiline_cb(GtkTextBuffer *buffer, gpointer data) { |
| 50 GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(view)); |
|
| 51 gchar *pref = NULL, *text = NULL; |
50 gchar *pref = NULL, *text = NULL; |
| 52 |
51 |
| 53 pref = g_object_get_data(G_OBJECT(view), "pref-key"); |
52 pref = g_object_get_data(G_OBJECT(buffer), "pref-key"); |
| 54 g_return_if_fail(pref); |
53 g_return_if_fail(pref); |
| 55 |
54 |
| 56 text = talkatu_markup_get_html(buffer, NULL); |
55 text = talkatu_markup_get_html(buffer, NULL); |
| 57 purple_prefs_set_string(pref, text); |
56 purple_prefs_set_string(pref, text); |
| 58 g_free(text); |
57 g_free(text); |
| 145 talkatu_markup_set_html(TALKATU_BUFFER(buffer), purple_prefs_get_string(pref_name), -1); |
144 talkatu_markup_set_html(TALKATU_BUFFER(buffer), purple_prefs_get_string(pref_name), -1); |
| 146 } |
145 } |
| 147 |
146 |
| 148 gtk_label_set_mnemonic_widget(GTK_LABEL(gtk_label), view); |
147 gtk_label_set_mnemonic_widget(GTK_LABEL(gtk_label), view); |
| 149 gtk_widget_show_all(editor); |
148 gtk_widget_show_all(editor); |
| 150 g_object_set_data(G_OBJECT(view), "pref-key", (gpointer)pref_name); |
149 g_object_set_data(G_OBJECT(buffer), "pref-key", (gpointer)pref_name); |
| 151 g_signal_connect(G_OBJECT(view), "changed", |
150 g_signal_connect(G_OBJECT(buffer), "changed", |
| 152 G_CALLBACK(multiline_cb), NULL); |
151 G_CALLBACK(multiline_cb), NULL); |
| |
152 #warning fix this when talkatu has a solution |
| |
153 /* |
| 153 g_signal_connect(G_OBJECT(view), "format-toggled", |
154 g_signal_connect(G_OBJECT(view), "format-toggled", |
| 154 G_CALLBACK(multiline_cb), NULL); |
155 G_CALLBACK(multiline_cb), NULL); |
| |
156 */ |
| 155 gtk_box_pack_start(GTK_BOX(hbox), editor, TRUE, TRUE, 0); |
157 gtk_box_pack_start(GTK_BOX(hbox), editor, TRUE, TRUE, 0); |
| 156 } |
158 } |
| 157 |
159 |
| 158 break; |
160 break; |
| 159 } |
161 } |