| 333 /* Entry field. */ |
333 /* Entry field. */ |
| 334 data->u.input.multiline = multiline; |
334 data->u.input.multiline = multiline; |
| 335 data->u.input.hint = (hint == NULL ? NULL : g_strdup(hint)); |
335 data->u.input.hint = (hint == NULL ? NULL : g_strdup(hint)); |
| 336 |
336 |
| 337 if ((data->u.input.hint != NULL) && (!strcmp(data->u.input.hint, "html"))) { |
337 if ((data->u.input.hint != NULL) && (!strcmp(data->u.input.hint, "html"))) { |
| |
338 GtkWidget *frame; |
| |
339 GtkWidget *vbox2; |
| |
340 GtkWidget *sep; |
| 338 GtkWidget *sw; |
341 GtkWidget *sw; |
| |
342 |
| |
343 /* Thin frame surrounding the toolbar and imhtml */ |
| |
344 frame = gtk_frame_new(NULL); |
| |
345 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN); |
| |
346 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0); |
| |
347 gtk_widget_show(frame); |
| |
348 |
| |
349 vbox2 = gtk_vbox_new(FALSE, 0); |
| |
350 gtk_container_add(GTK_CONTAINER(frame), vbox2); |
| |
351 gtk_widget_show(vbox2); |
| 339 |
352 |
| 340 sw = gtk_scrolled_window_new(NULL, NULL); |
353 sw = gtk_scrolled_window_new(NULL, NULL); |
| 341 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), |
354 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), |
| 342 GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); |
355 GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); |
| 343 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), |
|
| 344 GTK_SHADOW_IN); |
|
| 345 |
|
| 346 gtk_widget_set_size_request(sw, 320, 130); |
356 gtk_widget_set_size_request(sw, 320, 130); |
| 347 |
357 |
| 348 /* Toolbar */ |
358 /* Toolbar */ |
| 349 toolbar = gtk_imhtmltoolbar_new(); |
359 toolbar = gtk_imhtmltoolbar_new(); |
| 350 gtk_box_pack_start(GTK_BOX(vbox), toolbar, FALSE, FALSE, 0); |
360 gtk_box_pack_start(GTK_BOX(vbox2), toolbar, FALSE, FALSE, 0); |
| |
361 |
| |
362 /* Separator */ |
| |
363 sep = gtk_hseparator_new(); |
| |
364 gtk_box_pack_start(GTK_BOX(vbox2), sep, FALSE, FALSE, 0); |
| |
365 gtk_widget_show(sep); |
| 351 |
366 |
| 352 /* GtkIMHtml */ |
367 /* GtkIMHtml */ |
| 353 entry = gtk_imhtml_new(NULL, NULL); |
368 entry = gtk_imhtml_new(NULL, NULL); |
| 354 gtk_widget_set_name(entry, "gaim_gtkrequest_imhtml"); |
369 gtk_widget_set_name(entry, "gaim_gtkrequest_imhtml"); |
| 355 gtk_imhtml_set_editable(GTK_IMHTML(entry), TRUE); |
370 gtk_imhtml_set_editable(GTK_IMHTML(entry), TRUE); |
| 361 if (default_value != NULL) |
376 if (default_value != NULL) |
| 362 gtk_imhtml_append_text(GTK_IMHTML(entry), default_value, GTK_IMHTML_NO_SCROLL); |
377 gtk_imhtml_append_text(GTK_IMHTML(entry), default_value, GTK_IMHTML_NO_SCROLL); |
| 363 |
378 |
| 364 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(entry), GTK_WRAP_WORD_CHAR); |
379 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(entry), GTK_WRAP_WORD_CHAR); |
| 365 |
380 |
| 366 gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0); |
381 gtk_box_pack_start(GTK_BOX(vbox2), sw, TRUE, TRUE, 0); |
| 367 |
382 |
| 368 if (gaim_prefs_get_bool("/gaim/gtk/conversations/spellcheck")) |
383 if (gaim_prefs_get_bool("/gaim/gtk/conversations/spellcheck")) |
| 369 gaim_gtk_setup_gtkspell(GTK_TEXT_VIEW(entry)); |
384 gaim_gtk_setup_gtkspell(GTK_TEXT_VIEW(entry)); |
| 370 |
385 |
| 371 gtk_container_add(GTK_CONTAINER(sw), entry); |
386 gtk_container_add(GTK_CONTAINER(sw), entry); |