
2000-10-23 Havoc Pennington <hp@redhat.com> * gtk/testtext.c: Re-enable the "find" dialog * gtk/testgtk.c: Add test for gdk_drawable_get_image * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where the arguments to gdk_draw_drawable were in the wrong order (gdk_window_paint_init_bg): This function was ignoring the init_region, instead of clipping to it, so the entire backing pixmap was cleared on every begin_paint() (gdk_window_begin_paint_region): Hmm, the same list-walking bug was in here again, the loop kept using the same GtkWindowPaint over and over. (gdk_window_begin_paint_region): Fix a bug where we had two x_offset instead of x_offset and y_offset * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable before we get the image. (gdk_draw_drawable): get the composite before we draw the drawable. (gdk_drawable_real_get_composite_drawable): default get_composite_drawable implementation that returns the drawable itself * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add get_composite_drawable virtual function * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy list-walking bug * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to make this work if the source drawable is a GdkDrawableImplX11 instead of a public drawable type. This is really broken; the problem is that GdkDrawable needs a virtual method get_xid(), but of course that doesn't work in practice. Enter RTTI. Also, improve mismatched depth message. * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for GdkPixmap * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init): install _gdk_x11_get_image as our implementation of get_image * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to _gdk_x11_get_image and export for use in gdkdrawable-x11.c * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around gdk_drawable_get_image * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize get_image * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird trailing semicolon after for loop
106 lines
2.3 KiB
Plaintext
106 lines
2.3 KiB
Plaintext
<!-- ##### SECTION Title ##### -->
|
|
GtkTextMark
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
|
|
|
A position in the buffer preserved across buffer modifications
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
|
<para>
|
|
You may wish to begin by reading the <link linkend="TextWidget">text widget
|
|
conceptual overview</link> which gives an overview of all the objects and data
|
|
types related to the text widget and how they work together.
|
|
</para>
|
|
|
|
<para>
|
|
A #GtkTextMark is like a bookmark in a text buffer; it preserves a position in
|
|
the text. You can convert the mark to an iterator using
|
|
gtk_text_buffer_get_iter_at_mark(). Unlike iterators, marks remain valid across
|
|
buffer mutations, because their behavior is defined when text is inserted or
|
|
deleted. When text containing a mark is deleted, the mark remains in the
|
|
position originally occupied by the deleted text. When text is inserted at a
|
|
mark, a mark with <firstterm>left gravity</firstterm> will be moved to the
|
|
beginning of the newly-inserted text, and a mark with <firstterm>right
|
|
gravity</firstterm> will be moved to the end.
|
|
|
|
<footnote>
|
|
<para>
|
|
"left" and "right" here refer to logical direction (left is the toward the start
|
|
of the buffer); in some languages such as Hebrew the logically-leftmost text is
|
|
not actually on the left when displayed.
|
|
</para>
|
|
</footnote>
|
|
</para>
|
|
|
|
<para>
|
|
Marks are reference counted, but the reference count only controls the validity
|
|
of the memory; marks can be deleted from the buffer at any time with
|
|
gtk_text_buffer_delete_mark(). Once deleted from the buffer, a mark is
|
|
essentially useless.
|
|
</para>
|
|
|
|
<para>
|
|
Marks optionally have names; these can be convenient to avoid passing the
|
|
#GtkTextMark object around.
|
|
</para>
|
|
|
|
<para>
|
|
Marks are typically created using the gtk_text_buffer_create_mark() function.
|
|
</para>
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
<!-- ##### STRUCT GtkTextMark ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_text_mark_set_visible ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@mark:
|
|
@setting:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_text_mark_is_visible ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@mark:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_text_mark_ref ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@mark:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_text_mark_unref ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@mark:
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_text_mark_get_deleted ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@mark:
|
|
@Returns:
|
|
|
|
|