Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
gtktextbuffer.h
Go to the documentation of this file.
1/* GTK - The GIMP Toolkit
2 * gtktextbuffer.h Copyright (C) 2000 Red Hat, Inc.
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18/*
19 * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
20 * file for a list of people on the GTK+ Team. See the ChangeLog
21 * files for a list of changes. These files are distributed with
22 * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
23 */
24
25#pragma once
26
27#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
28#error "Only <gtk/gtk.h> can be included directly."
29#endif
30
31#include <gtk/gtkwidget.h>
32#include <gtk/gtktexttagtable.h>
33#include <gtk/gtktextiter.h>
34#include <gtk/gtktextmark.h>
35#include <gtk/gtktextchild.h>
36
38
39#define GTK_TYPE_TEXT_BUFFER (gtk_text_buffer_get_type ())
40#define GTK_TEXT_BUFFER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_TEXT_BUFFER, GtkTextBuffer))
41#define GTK_TEXT_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_TEXT_BUFFER, GtkTextBufferClass))
42#define GTK_IS_TEXT_BUFFER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_TEXT_BUFFER))
43#define GTK_IS_TEXT_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_TEXT_BUFFER))
44#define GTK_TEXT_BUFFER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_TEXT_BUFFER, GtkTextBufferClass))
45
46typedef struct _GtkTextBufferPrivate GtkTextBufferPrivate;
48
55
56/**
57 * GtkTextBufferCommitNotify:
58 * @buffer: the text buffer being notified
59 * @flags: the type of commit notification
60 * @position: the position of the text operation
61 * @length: the length of the text operation in characters
62 * @user_data: (closure): user data passed to the callback
63 *
64 * A notification callback used by [method@Gtk.TextBuffer.add_commit_notify].
65 *
66 * You may not modify the [class@Gtk.TextBuffer] from a
67 * [callback@Gtk.TextBufferCommitNotify] callback and that is enforced
68 * by the [class@Gtk.TextBuffer] API.
69 *
70 * [callback@Gtk.TextBufferCommitNotify] may be used to be notified about
71 * changes to the underlying buffer right before-or-after the changes are
72 * committed to the underlying B-Tree. This is useful if you want to observe
73 * changes to the buffer without other signal handlers potentially modifying
74 * state on the way to the default signal handler.
75 *
76 * When @flags is `GTK_TEXT_BUFFER_NOTIFY_BEFORE_INSERT`, `position` is set to
77 * the offset in characters from the start of the buffer where the insertion
78 * will occur. `length` is set to the number of characters to be inserted. You
79 * may not yet retrieve the text until it has been inserted. You may access the
80 * text from `GTK_TEXT_BUFFER_NOTIFY_AFTER_INSERT` using
81 * [method@Gtk.TextBuffer.get_slice].
82 *
83 * When @flags is `GTK_TEXT_BUFFER_NOTIFY_AFTER_INSERT`, `position` is set to
84 * offset in characters where the insertion occurred and `length` is set
85 * to the number of characters inserted.
86 *
87 * When @flags is `GTK_TEXT_BUFFER_NOTIFY_BEFORE_DELETE`, `position` is set to
88 * offset in characters where the deletion will occur and `length` is set
89 * to the number of characters that will be removed. You may still retrieve
90 * the text from this handler using `position` and `length`.
91 *
92 * When @flags is `GTK_TEXT_BUFFER_NOTIFY_AFTER_DELETE`, `length` is set to
93 * zero to denote that the delete-range has already been committed to the
94 * underlying B-Tree. You may no longer retrieve the text that has been
95 * deleted from the [class@Gtk.TextBuffer].
96 *
97 * Since: 4.16
98 */
101 guint position,
102 guint length,
103 gpointer user_data);
104
105/**
106 * GtkTextBufferClass:
107 * @parent_class: The object class structure needs to be the first.
108 * @insert_text: The class handler for the `GtkTextBuffer::insert-text` signal.
109 * @insert_paintable: The class handler for the `GtkTextBuffer::insert-paintable` signal.
110 * @insert_child_anchor: The class handler for the `GtkTextBuffer::insert-child-anchor` signal.
111 * @delete_range: The class handler for the `GtkTextBuffer::delete-range` signal.
112 * @changed: The class handler for the `GtkTextBuffer::changed` signal.
113 * @modified_changed: The class handler for the `GtkTextBuffer::modified-changed` signal.
114 * @mark_set: The class handler for the `GtkTextBuffer::mark-set` signal.
115 * @mark_deleted: The class handler for the `GtkTextBuffer::mark-deleted` signal.
116 * @apply_tag: The class handler for the `GtkTextBuffer::apply-tag` signal.
117 * @remove_tag: The class handler for the `GtkTextBuffer::remove-tag` signal.
118 * @begin_user_action: The class handler for the `GtkTextBuffer::begin-user-action` signal.
119 * @end_user_action: The class handler for the `GtkTextBuffer::end-user-action` signal.
120 * @paste_done: The class handler for the `GtkTextBuffer::paste-done` signal.
121 * @undo: The class handler for the `GtkTextBuffer::undo` signal
122 * @redo: The class handler for the `GtkTextBuffer::redo` signal
123 *
124 * The class structure for `GtkTextBuffer`.
125 */
127{
129
130 void (* insert_text) (GtkTextBuffer *buffer,
131 GtkTextIter *pos,
132 const char *new_text,
133 int new_text_length);
134
136 GtkTextIter *iter,
137 GdkPaintable *paintable);
138
140 GtkTextIter *iter,
141 GtkTextChildAnchor *anchor);
142
143 void (* delete_range) (GtkTextBuffer *buffer,
144 GtkTextIter *start,
145 GtkTextIter *end);
146
147 void (* changed) (GtkTextBuffer *buffer);
148
149 void (* modified_changed) (GtkTextBuffer *buffer);
150
151 void (* mark_set) (GtkTextBuffer *buffer,
152 const GtkTextIter *location,
153 GtkTextMark *mark);
154
155 void (* mark_deleted) (GtkTextBuffer *buffer,
156 GtkTextMark *mark);
157
158 void (* apply_tag) (GtkTextBuffer *buffer,
159 GtkTextTag *tag,
160 const GtkTextIter *start,
161 const GtkTextIter *end);
162
163 void (* remove_tag) (GtkTextBuffer *buffer,
164 GtkTextTag *tag,
165 const GtkTextIter *start,
166 const GtkTextIter *end);
167
169
170 void (* end_user_action) (GtkTextBuffer *buffer);
171
172 void (* paste_done) (GtkTextBuffer *buffer,
173 GdkClipboard *clipboard);
174 void (* undo) (GtkTextBuffer *buffer);
175 void (* redo) (GtkTextBuffer *buffer);
176
177 /*< private >*/
178
179 /* Padding for future expansion */
180 void (*_gtk_reserved1) (void);
181 void (*_gtk_reserved2) (void);
182 void (*_gtk_reserved3) (void);
183 void (*_gtk_reserved4) (void);
184};
185
188
189
190
191/* table is NULL to create a new one */
198
199
202
203/* Delete whole buffer, then insert */
206 const char *text,
207 int len);
208
209/* Insert into the buffer */
212 GtkTextIter *iter,
213 const char *text,
214 int len);
217 const char *text,
218 int len);
219
222 GtkTextIter *iter,
223 const char *text,
224 int len,
225 gboolean default_editable);
228 const char *text,
229 int len,
230 gboolean default_editable);
231
234 GtkTextIter *iter,
235 const GtkTextIter *start,
236 const GtkTextIter *end);
239 GtkTextIter *iter,
240 const GtkTextIter *start,
241 const GtkTextIter *end,
242 gboolean default_editable);
243
246 GtkTextIter *iter,
247 const char *text,
248 int len,
249 GtkTextTag *first_tag,
251
254 GtkTextIter *iter,
255 const char *text,
256 int len,
257 const char *first_tag_name,
259
262 GtkTextIter *iter,
263 const char *markup,
264 int len);
265
266/* Delete from the buffer */
269 GtkTextIter *start,
270 GtkTextIter *end);
273 GtkTextIter *start_iter,
274 GtkTextIter *end_iter,
275 gboolean default_editable);
278 GtkTextIter *iter,
279 gboolean interactive,
280 gboolean default_editable);
281
282/* Obtain strings from the buffer */
285 const GtkTextIter *start,
286 const GtkTextIter *end,
287 gboolean include_hidden_chars);
288
291 const GtkTextIter *start,
292 const GtkTextIter *end,
293 gboolean include_hidden_chars);
294
295/* Insert a paintable */
298 GtkTextIter *iter,
299 GdkPaintable *paintable);
300
301/* Insert a child anchor */
304 GtkTextIter *iter,
305 GtkTextChildAnchor *anchor);
306
307/* Convenience, create and insert a child anchor */
310 GtkTextIter *iter);
311
312/* Mark manipulation */
315 GtkTextMark *mark,
316 const GtkTextIter *where);
319 const char *mark_name,
320 const GtkTextIter *where,
321 gboolean left_gravity);
324 GtkTextMark *mark,
325 const GtkTextIter *where);
328 GtkTextMark *mark);
331 const char *name);
332
335 const char *name,
336 const GtkTextIter *where);
339 const char *name);
340
345
346/* efficiently move insert and selection_bound at the same time */
349 const GtkTextIter *where);
352 const GtkTextIter *ins,
353 const GtkTextIter *bound);
354
355
356
357/* Tag manipulation */
360 GtkTextTag *tag,
361 const GtkTextIter *start,
362 const GtkTextIter *end);
365 GtkTextTag *tag,
366 const GtkTextIter *start,
367 const GtkTextIter *end);
370 const char *name,
371 const GtkTextIter *start,
372 const GtkTextIter *end);
375 const char *name,
376 const GtkTextIter *start,
377 const GtkTextIter *end);
380 const GtkTextIter *start,
381 const GtkTextIter *end);
382
383
384/* You can either ignore the return value, or use it to
385 * set the attributes of the tag. tag_name can be NULL
386 */
389 const char *tag_name,
390 const char *first_property_name,
391 ...);
392
393/* Obtain iterators pointed at various places, then you can move the
394 * iterator around using the GtkTextIter operators
395 */
398 GtkTextIter *iter,
399 int line_number,
400 int char_offset);
403 GtkTextIter *iter,
404 int line_number,
405 int byte_index);
408 GtkTextIter *iter,
409 int char_offset);
412 GtkTextIter *iter,
413 int line_number);
416 GtkTextIter *iter);
419 GtkTextIter *iter);
422 GtkTextIter *start,
423 GtkTextIter *end);
426 GtkTextIter *iter,
427 GtkTextMark *mark);
428
431 GtkTextIter *iter,
432 GtkTextChildAnchor *anchor);
433
434/* There's no get_first_iter because you just get the iter for
435 line or char 0 */
436
437/* Used to keep track of whether the buffer needs saving; anytime the
438 buffer contents change, the modified flag is turned on. Whenever
439 you save, turn it off. Tags and marks do not affect the modified
440 flag, but if you would like them to you can connect a handler to
441 the tag/mark signals and call set_modified in your handler */
442
447 gboolean setting);
448
451
454 GdkClipboard *clipboard);
457 GdkClipboard *clipboard);
458
461 GdkClipboard *clipboard,
462 gboolean default_editable);
465 GdkClipboard *clipboard);
468 GdkClipboard *clipboard,
469 GtkTextIter *override_location,
470 gboolean default_editable);
471
474 GtkTextIter *start,
475 GtkTextIter *end);
478 gboolean interactive,
479 gboolean default_editable);
480
484
493 gboolean enable_undo);
498 guint max_undo_levels);
514 GtkTextBufferCommitNotify commit_notify,
515 gpointer user_data,
516 GDestroyNotify destroy);
519 guint commit_notify_handler);
520
522
524
#define GDK_AVAILABLE_IN_4_16
#define GDK_AVAILABLE_IN_ALL
struct _GdkClipboard GdkClipboard
Definition gdktypes.h:88
#define G_END_DECLS
Definition gmacros.h:910
#define G_GNUC_NULL_TERMINATED
Definition gmacros.h:326
#define G_BEGIN_DECLS
Definition gmacros.h:909
#define G_GNUC_CONST
Definition gmacros.h:637
#define G_DEFINE_AUTOPTR_CLEANUP_FUNC(TypeName, func)
Definition gmacros.h:1400
GOBJECT_AVAILABLE_IN_ALL void g_object_unref(gpointer object)
GtkTextBufferNotifyFlags
Definition gtkenums.h:1899
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_delete(GtkTextBuffer *buffer, GtkTextIter *start, GtkTextIter *end)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_copy_clipboard(GtkTextBuffer *buffer, GdkClipboard *clipboard)
GDK_AVAILABLE_IN_4_16 void gtk_text_buffer_remove_commit_notify(GtkTextBuffer *buffer, guint commit_notify_handler)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_place_cursor(GtkTextBuffer *buffer, const GtkTextIter *where)
GDK_AVAILABLE_IN_ALL int gtk_text_buffer_get_char_count(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_remove_selection_clipboard(GtkTextBuffer *buffer, GdkClipboard *clipboard)
void(* GtkTextBufferCommitNotify)(GtkTextBuffer *buffer, GtkTextBufferNotifyFlags flags, guint position, guint length, gpointer user_data)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_get_end_iter(GtkTextBuffer *buffer, GtkTextIter *iter)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_insert_with_tags_by_name(GtkTextBuffer *buffer, GtkTextIter *iter, const char *text, int len, const char *first_tag_name,...) G_GNUC_NULL_TERMINATED
GDK_AVAILABLE_IN_ALL GdkContentProvider * gtk_text_buffer_get_selection_content(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_paste_clipboard(GtkTextBuffer *buffer, GdkClipboard *clipboard, GtkTextIter *override_location, gboolean default_editable)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_remove_tag_by_name(GtkTextBuffer *buffer, const char *name, const GtkTextIter *start, const GtkTextIter *end)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_delete_interactive(GtkTextBuffer *buffer, GtkTextIter *start_iter, GtkTextIter *end_iter, gboolean default_editable)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_insert_interactive_at_cursor(GtkTextBuffer *buffer, const char *text, int len, gboolean default_editable)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_get_bounds(GtkTextBuffer *buffer, GtkTextIter *start, GtkTextIter *end)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_set_enable_undo(GtkTextBuffer *buffer, gboolean enable_undo)
GDK_AVAILABLE_IN_ALL GtkTextBuffer * gtk_text_buffer_new(GtkTextTagTable *table)
GDK_AVAILABLE_IN_ALL GtkTextMark * gtk_text_buffer_get_selection_bound(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL char * gtk_text_buffer_get_text(GtkTextBuffer *buffer, const GtkTextIter *start, const GtkTextIter *end, gboolean include_hidden_chars)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_remove_tag(GtkTextBuffer *buffer, GtkTextTag *tag, const GtkTextIter *start, const GtkTextIter *end)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_iter_at_line_offset(GtkTextBuffer *buffer, GtkTextIter *iter, int line_number, int char_offset)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_modified(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL GtkTextTag * gtk_text_buffer_create_tag(GtkTextBuffer *buffer, const char *tag_name, const char *first_property_name,...)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_begin_user_action(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_set_max_undo_levels(GtkTextBuffer *buffer, guint max_undo_levels)
GDK_AVAILABLE_IN_ALL char * gtk_text_buffer_get_slice(GtkTextBuffer *buffer, const GtkTextIter *start, const GtkTextIter *end, gboolean include_hidden_chars)
GDK_AVAILABLE_IN_ALL GtkTextMark * gtk_text_buffer_create_mark(GtkTextBuffer *buffer, const char *mark_name, const GtkTextIter *where, gboolean left_gravity)
GDK_AVAILABLE_IN_ALL int gtk_text_buffer_get_line_count(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_set_text(GtkTextBuffer *buffer, const char *text, int len)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_set_modified(GtkTextBuffer *buffer, gboolean setting)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_backspace(GtkTextBuffer *buffer, GtkTextIter *iter, gboolean interactive, gboolean default_editable)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_end_irreversible_action(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_insert_at_cursor(GtkTextBuffer *buffer, const char *text, int len)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_delete_mark(GtkTextBuffer *buffer, GtkTextMark *mark)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_delete_mark_by_name(GtkTextBuffer *buffer, const char *name)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_remove_all_tags(GtkTextBuffer *buffer, const GtkTextIter *start, const GtkTextIter *end)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_move_mark_by_name(GtkTextBuffer *buffer, const char *name, const GtkTextIter *where)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_undo(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_begin_irreversible_action(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_end_user_action(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_move_mark(GtkTextBuffer *buffer, GtkTextMark *mark, const GtkTextIter *where)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_can_redo(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_insert_interactive(GtkTextBuffer *buffer, GtkTextIter *iter, const char *text, int len, gboolean default_editable)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_can_undo(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_iter_at_line(GtkTextBuffer *buffer, GtkTextIter *iter, int line_number)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_select_range(GtkTextBuffer *buffer, const GtkTextIter *ins, const GtkTextIter *bound)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_insert_paintable(GtkTextBuffer *buffer, GtkTextIter *iter, GdkPaintable *paintable)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_enable_undo(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL GtkTextMark * gtk_text_buffer_get_insert(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_insert_range(GtkTextBuffer *buffer, GtkTextIter *iter, const GtkTextIter *start, const GtkTextIter *end)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_get_iter_at_mark(GtkTextBuffer *buffer, GtkTextIter *iter, GtkTextMark *mark)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_get_iter_at_child_anchor(GtkTextBuffer *buffer, GtkTextIter *iter, GtkTextChildAnchor *anchor)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_apply_tag_by_name(GtkTextBuffer *buffer, const char *name, const GtkTextIter *start, const GtkTextIter *end)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_add_selection_clipboard(GtkTextBuffer *buffer, GdkClipboard *clipboard)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_redo(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_has_selection(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_insert_child_anchor(GtkTextBuffer *buffer, GtkTextIter *iter, GtkTextChildAnchor *anchor)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_apply_tag(GtkTextBuffer *buffer, GtkTextTag *tag, const GtkTextIter *start, const GtkTextIter *end)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_add_mark(GtkTextBuffer *buffer, GtkTextMark *mark, const GtkTextIter *where)
GDK_AVAILABLE_IN_ALL GtkTextTagTable * gtk_text_buffer_get_tag_table(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_iter_at_line_index(GtkTextBuffer *buffer, GtkTextIter *iter, int line_number, int byte_index)
GDK_AVAILABLE_IN_ALL guint gtk_text_buffer_get_max_undo_levels(GtkTextBuffer *buffer)
GDK_AVAILABLE_IN_ALL GType gtk_text_buffer_get_type(void) G_GNUC_CONST
GDK_AVAILABLE_IN_ALL GtkTextMark * gtk_text_buffer_get_mark(GtkTextBuffer *buffer, const char *name)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_insert_range_interactive(GtkTextBuffer *buffer, GtkTextIter *iter, const GtkTextIter *start, const GtkTextIter *end, gboolean default_editable)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_insert_markup(GtkTextBuffer *buffer, GtkTextIter *iter, const char *markup, int len)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_insert(GtkTextBuffer *buffer, GtkTextIter *iter, const char *text, int len)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_get_iter_at_offset(GtkTextBuffer *buffer, GtkTextIter *iter, int char_offset)
struct _GtkTextBufferPrivate GtkTextBufferPrivate
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_delete_selection(GtkTextBuffer *buffer, gboolean interactive, gboolean default_editable)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_get_start_iter(GtkTextBuffer *buffer, GtkTextIter *iter)
GDK_AVAILABLE_IN_ALL gboolean gtk_text_buffer_get_selection_bounds(GtkTextBuffer *buffer, GtkTextIter *start, GtkTextIter *end)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_insert_with_tags(GtkTextBuffer *buffer, GtkTextIter *iter, const char *text, int len, GtkTextTag *first_tag,...) G_GNUC_NULL_TERMINATED
GDK_AVAILABLE_IN_ALL GtkTextChildAnchor * gtk_text_buffer_create_child_anchor(GtkTextBuffer *buffer, GtkTextIter *iter)
GDK_AVAILABLE_IN_4_16 guint gtk_text_buffer_add_commit_notify(GtkTextBuffer *buffer, GtkTextBufferNotifyFlags flags, GtkTextBufferCommitNotify commit_notify, gpointer user_data, GDestroyNotify destroy)
GDK_AVAILABLE_IN_ALL void gtk_text_buffer_cut_clipboard(GtkTextBuffer *buffer, GdkClipboard *clipboard, gboolean default_editable)
typedefG_BEGIN_DECLS struct _GtkTextChildAnchor GtkTextChildAnchor
typedefG_BEGIN_DECLS struct _GtkTextMark GtkTextMark
Definition gtktextmark.h:58
struct _GtkTextTagTable GtkTextTagTable
Definition gtktexttag.h:64
typedefG_BEGIN_DECLS struct _GtkTextIter GtkTextIter
Definition gtktexttag.h:63
gsize GType
Definition gtype.h:427
gint gboolean
Definition gtypes.h:56
void * gpointer
Definition gtypes.h:109
void(* GDestroyNotify)(gpointer data)
Definition gtypes.h:140
unsigned int guint
Definition gtypes.h:61
const char * name
Definition lsqlite3.c:2154
void(* changed)(GtkTextBuffer *buffer)
void(* redo)(GtkTextBuffer *buffer)
void(* paste_done)(GtkTextBuffer *buffer, GdkClipboard *clipboard)
void(* modified_changed)(GtkTextBuffer *buffer)
void(* mark_deleted)(GtkTextBuffer *buffer, GtkTextMark *mark)
void(* undo)(GtkTextBuffer *buffer)
void(* insert_child_anchor)(GtkTextBuffer *buffer, GtkTextIter *iter, GtkTextChildAnchor *anchor)
GObjectClass parent_class
void(* delete_range)(GtkTextBuffer *buffer, GtkTextIter *start, GtkTextIter *end)
void(* begin_user_action)(GtkTextBuffer *buffer)
void(* _gtk_reserved3)(void)
void(* remove_tag)(GtkTextBuffer *buffer, GtkTextTag *tag, const GtkTextIter *start, const GtkTextIter *end)
void(* apply_tag)(GtkTextBuffer *buffer, GtkTextTag *tag, const GtkTextIter *start, const GtkTextIter *end)
void(* insert_paintable)(GtkTextBuffer *buffer, GtkTextIter *iter, GdkPaintable *paintable)
void(* insert_text)(GtkTextBuffer *buffer, GtkTextIter *pos, const char *new_text, int new_text_length)
void(* _gtk_reserved1)(void)
void(* end_user_action)(GtkTextBuffer *buffer)
void(* _gtk_reserved2)(void)
void(* _gtk_reserved4)(void)
void(* mark_set)(GtkTextBuffer *buffer, const GtkTextIter *location, GtkTextMark *mark)
GObject parent_instance
GtkTextBufferPrivate * priv