23 #ifndef __GTK_SOURCE_BUFFER_H__ 24 #define __GTK_SOURCE_BUFFER_H__ 28 #include <vdk/gtksourcetag.h> 32 #define GTK_TYPE_SOURCE_BUFFER (gtk_source_buffer_get_type ()) 33 #define GTK_SOURCE_BUFFER(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_SOURCE_BUFFER, GtkSourceBuffer)) 34 #define GTK_SOURCE_BUFFER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_SOURCE_BUFFER, GtkSourceBufferClass)) 35 #define GTK_IS_SOURCE_BUFFER(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_SOURCE_BUFFER)) 36 #define GTK_IS_SOURCE_BUFFER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_SOURCE_BUFFER)) 38 typedef struct _GtkSourceBuffer GtkSourceBuffer;
39 typedef struct _GtkSourceBufferClass GtkSourceBufferClass;
40 typedef struct _GtkSourceBufferPrivate GtkSourceBufferPrivate;
41 typedef struct _GtkSourceBufferMarker GtkSourceBufferMarker;
43 struct _GtkSourceBuffer {
44 GtkTextBuffer TextBuffer;
46 GtkSourceBufferPrivate *priv;
49 struct _GtkSourceBufferClass {
50 GtkTextBufferClass parent_class;
52 void (* can_undo) (GtkSourceBuffer *buffer,
54 void (* can_redo) (GtkSourceBuffer *buffer,
58 struct _GtkSourceBufferMarker {
64 GType gtk_source_buffer_get_type (
void);
65 GtkSourceBuffer *gtk_source_buffer_new (GtkTextTagTable *table);
66 void gtk_source_buffer_attach_to_view (GtkSourceBuffer *buffer,
70 void gtk_source_buffer_set_check_brackets (GtkSourceBuffer *buf,
71 gboolean check_brackets);
72 gboolean gtk_source_buffer_get_highlight (GtkSourceBuffer *buffer);
73 void gtk_source_buffer_set_highlight (GtkSourceBuffer *buf,
77 gint gtk_source_buffer_get_tag_start (GtkTextIter *iter);
78 gint gtk_source_buffer_get_tag_end (GtkTextIter *iter);
79 GtkSyntaxTag *gtk_source_buffer_iter_has_syntax_tag (GtkTextIter *iter);
81 void gtk_source_buffer_highlight_region (GtkSourceBuffer *sbuf,
86 gint gtk_source_buffer_regex_search (
const gchar *text,
90 GtkSourceBufferMatch *match);
91 gint gtk_source_buffer_regex_match (
const gchar *text,
96 GList *gtk_source_buffer_get_regex_tags (GtkSourceBuffer *buffer);
97 void gtk_source_buffer_purge_regex_tags (GtkSourceBuffer *buffer);
98 void gtk_source_buffer_install_regex_tags (GtkSourceBuffer *buffer,
100 void gtk_source_buffer_sync_syntax_regex (GtkSourceBuffer *buffer);
101 GtkSyntaxTag *gtk_source_buffer_iter_has_syntax_tag (GtkTextIter *iter);
104 GList *gtk_source_buffer_get_syntax_entries (GtkSourceBuffer *buffer);
105 GList *gtk_source_buffer_get_pattern_entries (GtkSourceBuffer *buffer);
106 GList *gtk_source_buffer_get_embedded_entries (GtkSourceBuffer *buffer);
109 gchar *gtk_source_buffer_convert_to_html (GtkSourceBuffer *buffer,
111 gboolean gtk_source_buffer_find_bracket_match (GtkTextIter *orig);
114 gboolean gtk_source_buffer_can_undo (
const GtkSourceBuffer *buffer);
115 gboolean gtk_source_buffer_can_redo (
const GtkSourceBuffer *buffer);
117 void gtk_source_buffer_undo (GtkSourceBuffer *buffer);
118 void gtk_source_buffer_redo (GtkSourceBuffer *buffer);
120 int gtk_source_buffer_get_undo_levels (GtkSourceBuffer *buffer);
121 void gtk_source_buffer_set_undo_levels (GtkSourceBuffer *buffer,
124 void gtk_source_buffer_begin_not_undoable_action (GtkSourceBuffer *buffer);
125 void gtk_source_buffer_end_not_undoable_action (GtkSourceBuffer *buffer);
128 void gtk_source_buffer_line_add_marker (GtkSourceBuffer *buffer,
130 const gchar *marker);
131 void gtk_source_buffer_line_set_marker (GtkSourceBuffer *buffer,
133 const gchar *marker);
134 gboolean gtk_source_buffer_line_remove_marker (GtkSourceBuffer *buffer,
136 const gchar *marker);
137 const GList *gtk_source_buffer_line_get_markers (GtkSourceBuffer *buffer,
139 gint gtk_source_buffer_line_has_markers (GtkSourceBuffer *buffer,
141 gint gtk_source_buffer_line_remove_markers (GtkSourceBuffer *buffer,
143 GList *gtk_source_buffer_get_all_markers (GtkSourceBuffer *buffer);
144 gint gtk_source_buffer_remove_all_markers (GtkSourceBuffer *buffer,
149 gboolean gtk_source_buffer_load (GtkSourceBuffer *buffer,
150 const gchar *filename,
152 gboolean gtk_source_buffer_save (GtkSourceBuffer *buffer,
153 const gchar *filename,
155 gboolean gtk_source_buffer_load_with_character_encoding (GtkSourceBuffer *buffer,
156 const gchar *filename,
157 const gchar *encoding,
159 gboolean gtk_source_buffer_save_with_character_encoding (GtkSourceBuffer *buffer,
160 const gchar *filename,
161 const gchar *encoding,