Index: testtext.c =================================================================== --- testtext.c (revision 18656) +++ testtext.c (working copy) @@ -2610,6 +2610,18 @@ cursor_set_callback (GtkTextBuffer * gdk_window_invalidate_rect (tab_window, NULL, FALSE); } + else + { + const gchar *name; + GtkTextIter iter; + + name = gtk_text_mark_get_name (mark); + gtk_text_buffer_get_iter_at_mark (buffer, &iter, mark); + + g_print ("Mark '%s' set: %d\n", + name, + gtk_text_iter_get_offset (&iter)); + } } static gint @@ -2901,6 +2913,8 @@ create_view (Buffer *buffer) GtkWidget *copy_menu; GtkWidget *sw; GtkWidget *vbox; + GtkTextIter iter; + GtkTextMark *mark; view = g_new0 (View, 1); views = g_slist_prepend (views, view); @@ -2960,6 +2974,13 @@ create_view (Buffer *buffer) GTK_TEXT_WINDOW_BOTTOM, 15); + gtk_text_buffer_get_start_iter (view->buffer->buffer, &iter); + + gtk_text_buffer_insert (view->buffer->buffer, + &iter, + "Text text text", + -1); + g_signal_connect (view->text_view, "expose_event", G_CALLBACK (tab_stops_expose), @@ -2969,6 +2990,14 @@ create_view (Buffer *buffer) "mark_set", G_CALLBACK (cursor_set_callback), view->text_view); + + gtk_text_buffer_get_iter_at_offset (view->buffer->buffer, &iter, 2); + + mark = gtk_text_buffer_create_mark (view->buffer->buffer, + "PROVA", + &iter, + TRUE); + gtk_text_mark_set_visible (mark, TRUE); /* Draw line numbers in the side windows; we should really be * more scientific about what width we set them to.