]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtktextiter.h
GtkWidgetPath: Make gtk_widget_path_prepend_type() return nothing.
[~andy/gtk] / gtk / gtktextiter.h
index c3ea8516d7eeac8b2e19fd9c9b4311d8773e9748..a4187eb8e9f8ac49712ecdc769e956f4878467e7 100644 (file)
  * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
  */
 
-#ifndef GTK_TEXT_ITER_H
-#define GTK_TEXT_ITER_H
+#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtk.h> can be included directly."
+#endif
+
+#ifndef __GTK_TEXT_ITER_H__
+#define __GTK_TEXT_ITER_H__
 
 #include <gtk/gtktexttag.h>
 #include <gtk/gtktextchild.h>
 
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
+G_BEGIN_DECLS
+
+typedef enum {
+  GTK_TEXT_SEARCH_VISIBLE_ONLY     = 1 << 0,
+  GTK_TEXT_SEARCH_TEXT_ONLY        = 1 << 1,
+  GTK_TEXT_SEARCH_CASE_INSENSITIVE = 1 << 2
+  /* Possible future plans: SEARCH_REGEXP */
+} GtkTextSearchFlags;
 
 /*
  * Iter: represents a location in the text. Becomes invalid if the
@@ -42,7 +51,14 @@ extern "C" {
 
 typedef struct _GtkTextBuffer GtkTextBuffer;
 
+#define GTK_TYPE_TEXT_ITER     (gtk_text_iter_get_type ())
+
 struct _GtkTextIter {
+  /* GtkTextIter is an opaque datatype; ignore all these fields.
+   * Initialize the iter with gtk_text_buffer_get_iter_*
+   * functions
+   */
+  /*< private >*/
   gpointer dummy1;
   gpointer dummy2;
   gint dummy3;
@@ -55,6 +71,9 @@ struct _GtkTextIter {
   gpointer dummy10;
   gint dummy11;
   gint dummy12;
+  /* padding */
+  gint dummy13;
+  gpointer dummy14;
 };
 
 
@@ -69,6 +88,8 @@ GtkTextBuffer *gtk_text_iter_get_buffer (const GtkTextIter *iter);
 GtkTextIter *gtk_text_iter_copy     (const GtkTextIter *iter);
 void         gtk_text_iter_free     (GtkTextIter       *iter);
 
+GType        gtk_text_iter_get_type (void) G_GNUC_CONST;
+
 /*
  * Convert to different kinds of index
  */
@@ -128,6 +149,8 @@ GSList  *gtk_text_iter_get_tags          (const GtkTextIter   *iter);
 
 gboolean gtk_text_iter_editable          (const GtkTextIter   *iter,
                                           gboolean             default_setting);
+gboolean gtk_text_iter_can_insert        (const GtkTextIter   *iter,
+                                          gboolean             default_editability);
 
 gboolean gtk_text_iter_starts_word        (const GtkTextIter   *iter);
 gboolean gtk_text_iter_ends_word          (const GtkTextIter   *iter);
@@ -170,6 +193,20 @@ gboolean gtk_text_iter_forward_word_ends    (GtkTextIter *iter,
                                              gint         count);
 gboolean gtk_text_iter_backward_word_starts (GtkTextIter *iter,
                                              gint         count);
+                                             
+gboolean gtk_text_iter_forward_visible_line   (GtkTextIter *iter);
+gboolean gtk_text_iter_backward_visible_line  (GtkTextIter *iter);
+gboolean gtk_text_iter_forward_visible_lines  (GtkTextIter *iter,
+                                               gint         count);
+gboolean gtk_text_iter_backward_visible_lines (GtkTextIter *iter,
+                                               gint         count);
+
+gboolean gtk_text_iter_forward_visible_word_end     (GtkTextIter *iter);
+gboolean gtk_text_iter_backward_visible_word_start  (GtkTextIter *iter);
+gboolean gtk_text_iter_forward_visible_word_ends    (GtkTextIter *iter,
+                                             gint         count);
+gboolean gtk_text_iter_backward_visible_word_starts (GtkTextIter *iter,
+                                             gint         count);
 
 gboolean gtk_text_iter_forward_sentence_end     (GtkTextIter *iter);
 gboolean gtk_text_iter_backward_sentence_start  (GtkTextIter *iter);
@@ -189,6 +226,13 @@ gboolean gtk_text_iter_forward_cursor_positions  (GtkTextIter *iter,
 gboolean gtk_text_iter_backward_cursor_positions (GtkTextIter *iter,
                                                   gint         count);
 
+gboolean gtk_text_iter_forward_visible_cursor_position   (GtkTextIter *iter);
+gboolean gtk_text_iter_backward_visible_cursor_position  (GtkTextIter *iter);
+gboolean gtk_text_iter_forward_visible_cursor_positions  (GtkTextIter *iter,
+                                                          gint         count);
+gboolean gtk_text_iter_backward_visible_cursor_positions (GtkTextIter *iter,
+                                                          gint         count);
+
 
 void     gtk_text_iter_set_offset         (GtkTextIter *iter,
                                            gint         char_offset);
@@ -229,16 +273,14 @@ gboolean gtk_text_iter_backward_find_char (GtkTextIter          *iter,
 
 gboolean gtk_text_iter_forward_search  (const GtkTextIter *iter,
                                         const gchar       *str,
-                                        gboolean           visible_only,
-                                        gboolean           slice,
+                                        GtkTextSearchFlags flags,
                                         GtkTextIter       *match_start,
                                         GtkTextIter       *match_end,
                                         const GtkTextIter *limit);
 
 gboolean gtk_text_iter_backward_search (const GtkTextIter *iter,
                                         const gchar       *str,
-                                        gboolean           visible_only,
-                                        gboolean           slice,
+                                        GtkTextSearchFlags flags,
                                         GtkTextIter       *match_start,
                                         GtkTextIter       *match_end,
                                         const GtkTextIter *limit);
@@ -259,13 +301,7 @@ gboolean gtk_text_iter_in_range        (const GtkTextIter *iter,
 void     gtk_text_iter_order           (GtkTextIter *first,
                                         GtkTextIter *second);
 
-/* Debug */
-void     gtk_text_iter_spew            (const GtkTextIter *iter,
-                                        const gchar *desc);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
+G_END_DECLS
 
 #endif