-#ifdef __WXGTK20__
-static void wxGtkTextInsert(GtkWidget *text,
- GtkTextBuffer *text_buffer,
- const wxTextAttr& attr,
- wxCharBuffer buffer)
-
-{
- PangoFontDescription *font_description = attr.HasFont()
- ? attr.GetFont().GetNativeFontInfo()->description
- : NULL;
-
- GdkColor *colFg = attr.HasTextColour() ? attr.GetTextColour().GetColor()
- : NULL;
-
- GdkColor *colBg = attr.HasBackgroundColour()
- ? attr.GetBackgroundColour().GetColor()
- : NULL;
-
- GtkTextIter start, end;
- GtkTextMark *mark;
- // iterators are invalidated by any mutation that affects 'indexable' buffer contents,
- // so we save current position in a mark
- // we need a mark of left gravity, so we cannot use
- // mark = gtk_text_buffer_get_insert (text_buffer)
-
- gtk_text_buffer_get_iter_at_mark( text_buffer, &start,
- gtk_text_buffer_get_insert (text_buffer) );
- mark = gtk_text_buffer_create_mark( text_buffer, NULL, &start, TRUE/*left gravity*/ );
-
- gtk_text_buffer_insert_at_cursor( text_buffer, buffer, strlen(buffer) );
-
- gtk_text_buffer_get_iter_at_mark( text_buffer, &end,
- gtk_text_buffer_get_insert (text_buffer) );
- gtk_text_buffer_get_iter_at_mark( text_buffer, &start, mark );
-
- GtkTextTag *tag;
- tag = gtk_text_buffer_create_tag( text_buffer, NULL, "font-desc", font_description,
- "foreground-gdk", colFg,
- "background-gdk", colBg, NULL );
- gtk_text_buffer_apply_tag( text_buffer, tag, &start, &end );
-}
-#else