1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| #include <gtk/gtk.h>
#include <glib/gprintf.h>
int main (int argc, char ** argv)
{
GtkWidget * p_win = NULL;
GtkWidget * p_box = NULL;
GtkWidget * p_text = NULL;
GtkTextBuffer * p_txtbuf = NULL;
GtkTextIter iter;
gtk_init (& argc, & argv);
p_win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size (GTK_WINDOW (p_win), 400, 200);
gtk_container_set_border_width (GTK_CONTAINER (p_win), 5);
gtk_window_set_position (GTK_WINDOW (p_win), GTK_WIN_POS_CENTER);
p_box = gtk_vbox_new (FALSE, 0);
p_text = gtk_text_view_new ();
p_txtbuf = gtk_text_view_get_buffer (GTK_TEXT_VIEW (p_text));
gtk_container_add (GTK_CONTAINER (p_win), p_box);
gtk_box_pack_start (GTK_BOX (p_box), p_text, TRUE, TRUE, 0);
/*
* Creation de tag pour du texte italique et souligne.
*/
gtk_text_buffer_create_tag (
p_txtbuf, "italic", "style", PANGO_STYLE_ITALIC, NULL
);
gtk_text_buffer_create_tag (
p_txtbuf, "underline", "underline", PANGO_UNDERLINE_SINGLE, NULL
);
/*
* Ajout du texte avec les deux tags.
*/
gtk_text_buffer_get_iter_at_offset (p_txtbuf, & iter, 0);
gtk_text_buffer_insert_with_tags_by_name (
p_txtbuf, & iter,
"Texte italique et souligné !", -1,
"italic", "underline",
NULL
);
g_signal_connect (
G_OBJECT (p_win), "destroy", G_CALLBACK (gtk_main_quit), NULL
);
gtk_widget_show_all (p_win);
gtk_main ();
return 0;
} |
Partager