22#ifndef _GTK_TEXT_SEARCH__H_
23#define _GTK_TEXT_SEARCH__H_
29#define GTK_TYPE_TEXT_SEARCH (gtk_text_search_get_type ())
30#define GTK_TEXT_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GTK_TYPE_TEXT_SEARCH, GtkTextSearch))
31#define GTK_TEXT_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_TEXT_SEARCH, GtkTextSearchClass))
32#define GTK_IS_TEXT_SEARCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_TEXT_SEARCH))
33#define GTK_IS_TEXT_SEARCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_TEXT_SEARCH))
35typedef struct _GtkTextSearch GtkTextSearch;
36typedef struct _GtkTextSearchClass GtkTextSearchClass;
37typedef gboolean (*GtkTextSearchForeachFunc) (GtkTextIter *match_start, GtkTextIter *match_end, gpointer data);
40 GTK_ETEXT_SEARCH_VISIBLE_ONLY,
41 GTK_ETEXT_SEARCH_TEXT_ONLY,
42 GTK_ETEXT_SEARCH_CASE_INSENSITIVE,
43 GTK_ETEXT_SEARCH_REGEXP
53 GtkTextBuffer *buffer;
54 GtkTextMark *mark_current;
55 GtkTextMark *mark_stop;
56 GtkETextSearchFlags sflags;
61struct _GtkTextSearchClass
67GType gtk_text_search_get_type (
void);
69GtkTextSearch * gtk_text_search_new (GtkTextBuffer *buffer,
const GtkTextIter *start,
71 GtkETextSearchFlags sflags,
72 const GtkTextIter *limit);
73void gtk_text_search_set (GtkTextSearch *search,
74 GtkTextBuffer *buffer,
75 const GtkTextIter *start,
76 const char *searchfor,
77 GtkETextSearchFlags sflags,
78 const GtkTextIter *limit);
79void gtk_text_search_set_interval (GtkTextSearch *search, GtkTextBuffer *buffer,
const GtkTextIter *start,
const GtkTextIter *end);
81gboolean gtk_text_search_forward (GtkTextSearch *search, GtkTextIter *match_start, GtkTextIter *match_end);
82gboolean gtk_text_search_backward (GtkTextSearch *search, GtkTextIter *match_start, GtkTextIter *match_end);
83gint gtk_text_search_forward_foreach (GtkTextSearch *search, GtkTextSearchForeachFunc func, gpointer data);
84gint gtk_text_search_backward_foreach (GtkTextSearch *search, GtkTextSearchForeachFunc func, gpointer data);