1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
<title>inf-text-buffer</title>
6
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
<link rel="home" href="index.html" title="libinftext-0.4 Reference Manual">
8
<link rel="up" href="ch01.html" title="libinftext API reference">
9
<link rel="prev" href="InfTextSession.html" title="InfTextSession">
10
<link rel="next" href="InfTextUser.html" title="InfTextUser">
11
<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
12
<link rel="stylesheet" href="style.css" type="text/css">
13
<link rel="chapter" href="ch01.html" title="libinftext API reference">
15
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
16
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
18
<td><a accesskey="p" href="InfTextSession.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
19
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
20
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
21
<th width="100%" align="center">libinftext-0.4 Reference Manual</th>
22
<td><a accesskey="n" href="InfTextUser.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
24
<tr><td colspan="5" class="shortcuts">
25
<a href="#libinftext-04-inf-text-buffer.synopsis" class="shortcut">Top</a>
27
<a href="#libinftext-04-inf-text-buffer.description" class="shortcut">Description</a>
29
<a href="#libinftext-04-inf-text-buffer.object-hierarchy" class="shortcut">Object Hierarchy</a>
31
<a href="#libinftext-04-inf-text-buffer.prerequisites" class="shortcut">Prerequisites</a>
33
<a href="#libinftext-04-inf-text-buffer.implementations" class="shortcut">Known Implementations</a>
35
<a href="#libinftext-04-inf-text-buffer.signals" class="shortcut">Signals</a>
38
<div class="refentry" title="inf-text-buffer">
39
<a name="libinftext-04-inf-text-buffer"></a><div class="titlepage"></div>
40
<div class="refnamediv"><table width="100%"><tr>
42
<h2><span class="refentrytitle"><a name="libinftext-04-inf-text-buffer.top_of_page"></a>inf-text-buffer</span></h2>
43
<p>inf-text-buffer</p>
45
<td valign="top" align="right"></td>
47
<div class="refsynopsisdiv" title="Synopsis">
48
<a name="libinftext-04-inf-text-buffer.synopsis"></a><h2>Synopsis</h2>
49
<a name="InfTextBuffer"></a><pre class="synopsis">
50
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer-struct" title="InfTextBuffer">InfTextBuffer</a>;
51
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIface" title="InfTextBufferIface">InfTextBufferIface</a>;
52
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a>;
54
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
55
>gchar</a> * <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-get-encoding" title="inf_text_buffer_get_encoding ()">inf_text_buffer_get_encoding</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer);
57
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
58
>guint</a> <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-get-length" title="inf_text_buffer_get_length ()">inf_text_buffer_get_length</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer);
59
<a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk">InfTextChunk</a> * <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-get-slice" title="inf_text_buffer_get_slice ()">inf_text_buffer_get_slice</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
61
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
64
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
66
void <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-insert-text" title="inf_text_buffer_insert_text ()">inf_text_buffer_insert_text</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
68
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
71
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"
72
>gconstpointer</a> text,
74
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"
77
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
80
href="../libinfinity-0.4/InfUser.html"
82
void <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-insert-chunk" title="inf_text_buffer_insert_chunk ()">inf_text_buffer_insert_chunk</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
84
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
86
<a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk">InfTextChunk</a> *chunk,
88
href="../libinfinity-0.4/InfUser.html"
90
void <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-erase-text" title="inf_text_buffer_erase_text ()">inf_text_buffer_erase_text</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
92
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
95
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
98
href="../libinfinity-0.4/InfUser.html"
100
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> * <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-create-iter" title="inf_text_buffer_create_iter ()">inf_text_buffer_create_iter</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer);
101
void <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-destroy-iter" title="inf_text_buffer_destroy_iter ()">inf_text_buffer_destroy_iter</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
102
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);
104
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
105
>gboolean</a> <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-iter-next" title="inf_text_buffer_iter_next ()">inf_text_buffer_iter_next</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
106
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);
108
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
109
>gboolean</a> <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-iter-prev" title="inf_text_buffer_iter_prev ()">inf_text_buffer_iter_prev</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
110
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);
112
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
113
>gpointer</a> <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-iter-get-text" title="inf_text_buffer_iter_get_text ()">inf_text_buffer_iter_get_text</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
114
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);
116
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
117
>guint</a> <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-iter-get-length" title="inf_text_buffer_iter_get_length ()">inf_text_buffer_iter_get_length</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
118
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);
120
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"
121
>gsize</a> <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-iter-get-bytes" title="inf_text_buffer_iter_get_bytes ()">inf_text_buffer_iter_get_bytes</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
122
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);
124
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
125
>guint</a> <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-iter-get-author" title="inf_text_buffer_iter_get_author ()">inf_text_buffer_iter_get_author</a> (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
126
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);
129
<div class="refsect1" title="Object Hierarchy">
130
<a name="libinftext-04-inf-text-buffer.object-hierarchy"></a><h2>Object Hierarchy</h2>
131
<pre class="synopsis">
136
<div class="refsect1" title="Prerequisites">
137
<a name="libinftext-04-inf-text-buffer.prerequisites"></a><h2>Prerequisites</h2>
139
InfTextBuffer requires
141
href="../libinfinity-0.4/InfBuffer.html"
142
>InfBuffer</a> and <a
143
href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"
146
<div class="refsect1" title="Known Implementations">
147
<a name="libinftext-04-inf-text-buffer.implementations"></a><h2>Known Implementations</h2>
149
InfTextBuffer is implemented by
150
<a class="link" href="InfTextDefaultBuffer.html" title="InfTextDefaultBuffer">InfTextDefaultBuffer</a>.</p>
152
<div class="refsect1" title="Signals">
153
<a name="libinftext-04-inf-text-buffer.signals"></a><h2>Signals</h2>
154
<pre class="synopsis">
155
"<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer-erase-text" title='The "erase-text" signal'>erase-text</a>" : Run Last
156
"<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer-insert-text" title='The "insert-text" signal'>insert-text</a>" : Run Last
159
<div class="refsect1" title="Description">
160
<a name="libinftext-04-inf-text-buffer.description"></a><h2>Description</h2>
164
<div class="refsect1" title="Details">
165
<a name="libinftext-04-inf-text-buffer.details"></a><h2>Details</h2>
166
<div class="refsect2" title="InfTextBuffer">
167
<a name="InfTextBuffer-struct"></a><h3>InfTextBuffer</h3>
168
<pre class="programlisting">typedef struct _InfTextBuffer InfTextBuffer;</pre>
173
<div class="refsect2" title="InfTextBufferIface">
174
<a name="InfTextBufferIface"></a><h3>InfTextBufferIface</h3>
175
<pre class="programlisting">typedef struct {
176
GTypeInterface parent;
179
const gchar* (*get_encoding)(InfTextBuffer* buffer);
181
guint(*get_length)(InfTextBuffer* buffer);
183
InfTextChunk*(*get_slice)(InfTextBuffer* buffer,
187
InfTextBufferIter*(*create_iter)(InfTextBuffer* buffer);
189
void(*destroy_iter)(InfTextBuffer* buffer,
190
InfTextBufferIter* iter);
192
gboolean(*iter_next)(InfTextBuffer* buffer,
193
InfTextBufferIter* iter);
195
gboolean(*iter_prev)(InfTextBuffer* buffer,
196
InfTextBufferIter* iter);
198
gpointer(*iter_get_text)(InfTextBuffer* buffer,
199
InfTextBufferIter* iter);
201
guint(*iter_get_length)(InfTextBuffer* buffer,
202
InfTextBufferIter* iter);
204
gsize(*iter_get_bytes)(InfTextBuffer* buffer,
205
InfTextBufferIter* iter);
207
guint(*iter_get_author)(InfTextBuffer* buffer,
208
InfTextBufferIter* iter);
211
void(*insert_text)(InfTextBuffer* buffer,
216
void(*erase_text)(InfTextBuffer* buffer,
220
} InfTextBufferIface;
226
<div class="refsect2" title="InfTextBufferIter">
227
<a name="InfTextBufferIter"></a><h3>InfTextBufferIter</h3>
228
<pre class="programlisting">typedef struct _InfTextBufferIter InfTextBufferIter;</pre>
233
<div class="refsect2" title="inf_text_buffer_get_encoding ()">
234
<a name="inf-text-buffer-get-encoding"></a><h3>inf_text_buffer_get_encoding ()</h3>
235
<pre class="programlisting">const <a
236
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
237
>gchar</a> * inf_text_buffer_get_encoding (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer);</pre>
239
Returns the character encoding that the buffer uses. This means that all
240
<a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk"><span class="type">InfTextChunk</span></a> return values are encoded in this encoding and all
241
<a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk"><span class="type">InfTextChunk</span></a> parameters are expected to be encoded in that encoding.</p>
244
<div class="variablelist"><table border="0">
245
<col align="left" valign="top">
248
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
249
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
253
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
254
<td> The character encoding for <em class="parameter"><code>buffer</code></em>.
261
<div class="refsect2" title="inf_text_buffer_get_length ()">
262
<a name="inf-text-buffer-get-length"></a><h3>inf_text_buffer_get_length ()</h3>
263
<pre class="programlisting"><a
264
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
265
>guint</a> inf_text_buffer_get_length (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer);</pre>
267
Returns the number of characters in <em class="parameter"><code>buffer</code></em>.</p>
270
<div class="variablelist"><table border="0">
271
<col align="left" valign="top">
274
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
275
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
279
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
280
<td> The length of <em class="parameter"><code>buffer</code></em>.
287
<div class="refsect2" title="inf_text_buffer_get_slice ()">
288
<a name="inf-text-buffer-get-slice"></a><h3>inf_text_buffer_get_slice ()</h3>
289
<pre class="programlisting"><a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk">InfTextChunk</a> * inf_text_buffer_get_slice (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
291
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
294
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
295
>guint</a> len);</pre>
297
Reads <em class="parameter"><code>len</code></em> characters, starting at <em class="parameter"><code>pos</code></em>, from the buffer, and returns them
298
as a <a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk"><span class="type">InfTextChunk</span></a>.</p>
301
<div class="variablelist"><table border="0">
302
<col align="left" valign="top">
305
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
306
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
310
<td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
311
<td> Character offset of where to start extracting.
315
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
316
<td> Number of characters to extract.
320
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
321
<td> A <a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk"><span class="type">InfTextChunk</span></a>.
328
<div class="refsect2" title="inf_text_buffer_insert_text ()">
329
<a name="inf-text-buffer-insert-text"></a><h3>inf_text_buffer_insert_text ()</h3>
330
<pre class="programlisting">void inf_text_buffer_insert_text (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
332
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
335
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"
336
>gconstpointer</a> text,
338
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"
341
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
344
href="../libinfinity-0.4/InfUser.html"
345
>InfUser</a> *user);</pre>
347
Inserts <em class="parameter"><code>text</code></em> into <em class="parameter"><code>buffer</code></em> as written by <em class="parameter"><code>author</code></em>. <em class="parameter"><code>text</code></em> must be encoded in
348
the character encoding of the buffer, see <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-get-encoding" title="inf_text_buffer_get_encoding ()"><code class="function">inf_text_buffer_get_encoding()</code></a>.</p>
351
<div class="variablelist"><table border="0">
352
<col align="left" valign="top">
355
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
356
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
360
<td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
361
<td> A character offset into <em class="parameter"><code>buffer</code></em>.
365
<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
366
<td> A pointer to the text to insert.
370
<td><p><span class="term"><em class="parameter"><code>bytes</code></em> :</span></p></td>
371
<td> The length (in bytes) of <em class="parameter"><code>text</code></em>.
375
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
376
<td> The length (in characters) of <em class="parameter"><code>text</code></em>.
380
<td><p><span class="term"><em class="parameter"><code>user</code></em> :</span></p></td>
382
href="../libinfinity-0.4/InfUser.html"
383
><span class="type">InfUser</span></a> that has inserted the new text, or <a
384
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL--CAPS"
385
><code class="literal">NULL</code></a>.
392
<div class="refsect2" title="inf_text_buffer_insert_chunk ()">
393
<a name="inf-text-buffer-insert-chunk"></a><h3>inf_text_buffer_insert_chunk ()</h3>
394
<pre class="programlisting">void inf_text_buffer_insert_chunk (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
396
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
398
<a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk">InfTextChunk</a> *chunk,
400
href="../libinfinity-0.4/InfUser.html"
401
>InfUser</a> *user);</pre>
403
Inserts a <a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk"><span class="type">InfTextChunk</span></a> into <em class="parameter"><code>buffer</code></em>. <em class="parameter"><code>user</code></em> must not necessarily be the
404
author of <em class="parameter"><code>chunk</code></em> (<em class="parameter"><code>chunk</code></em> may even consist of multiple segments). This
405
happens when undoing a delete operation that erased another user's text.</p>
408
<div class="variablelist"><table border="0">
409
<col align="left" valign="top">
412
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
413
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
417
<td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
418
<td> A character offset into <em class="parameter"><code>buffer</code></em>.
422
<td><p><span class="term"><em class="parameter"><code>chunk</code></em> :</span></p></td>
423
<td> A <a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk"><span class="type">InfTextChunk</span></a>.
427
<td><p><span class="term"><em class="parameter"><code>user</code></em> :</span></p></td>
429
href="../libinfinity-0.4/InfUser.html"
430
><span class="type">InfUser</span></a> inserting <em class="parameter"><code>chunk</code></em>, or <a
431
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL--CAPS"
432
><code class="literal">NULL</code></a>.
439
<div class="refsect2" title="inf_text_buffer_erase_text ()">
440
<a name="inf-text-buffer-erase-text"></a><h3>inf_text_buffer_erase_text ()</h3>
441
<pre class="programlisting">void inf_text_buffer_erase_text (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
443
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
446
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
449
href="../libinfinity-0.4/InfUser.html"
450
>InfUser</a> *user);</pre>
452
Erases characters from the text buffer.</p>
455
<div class="variablelist"><table border="0">
456
<col align="left" valign="top">
459
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
460
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
464
<td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
465
<td> The position to begin deleting characters from.
469
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
470
<td> The amount of characters to delete.
474
<td><p><span class="term"><em class="parameter"><code>user</code></em> :</span></p></td>
476
href="../libinfinity-0.4/InfUser.html"
477
><span class="type">InfUser</span></a> that erases the text, or <a
478
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL--CAPS"
479
><code class="literal">NULL</code></a>.
486
<div class="refsect2" title="inf_text_buffer_create_iter ()">
487
<a name="inf-text-buffer-create-iter"></a><h3>inf_text_buffer_create_iter ()</h3>
488
<pre class="programlisting"><a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> * inf_text_buffer_create_iter (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer);</pre>
490
Creates a <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> pointing to the first segment of <em class="parameter"><code>buffer</code></em>.
491
A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> is used to traverse the buffer contents in steps of
492
so-called segments each of which is written by the same user. The function
494
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL--CAPS"
495
><code class="literal">NULL</code></a> if there are no segments (i.e. the buffer is empty).
498
The iterator stays valid as long as the buffer remains unmodified and
499
must be freed with <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-destroy-iter" title="inf_text_buffer_destroy_iter ()"><code class="function">inf_text_buffer_destroy_iter()</code></a> before.</p>
502
<div class="variablelist"><table border="0">
503
<col align="left" valign="top">
506
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
507
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
511
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
512
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> to be freed by
513
<a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-destroy-iter" title="inf_text_buffer_destroy_iter ()"><code class="function">inf_text_buffer_destroy_iter()</code></a> when done using it, or <a
514
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL--CAPS"
515
><code class="literal">NULL</code></a>.
522
<div class="refsect2" title="inf_text_buffer_destroy_iter ()">
523
<a name="inf-text-buffer-destroy-iter"></a><h3>inf_text_buffer_destroy_iter ()</h3>
524
<pre class="programlisting">void inf_text_buffer_destroy_iter (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
525
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);</pre>
527
Destroys a <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> created by <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-create-iter" title="inf_text_buffer_create_iter ()"><code class="function">inf_text_buffer_create_iter()</code></a>.</p>
530
<div class="variablelist"><table border="0">
531
<col align="left" valign="top">
534
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
535
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
539
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
540
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> pointing into <em class="parameter"><code>buffer</code></em>.
547
<div class="refsect2" title="inf_text_buffer_iter_next ()">
548
<a name="inf-text-buffer-iter-next"></a><h3>inf_text_buffer_iter_next ()</h3>
549
<pre class="programlisting"><a
550
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
551
>gboolean</a> inf_text_buffer_iter_next (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
552
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);</pre>
554
Moves <em class="parameter"><code>iter</code></em> to point to the next segment in the buffer. If <em class="parameter"><code>iter</code></em> already
555
points to the last segment, <em class="parameter"><code>iter</code></em> is left unmodified and the function
557
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE--CAPS"
558
><code class="literal">FALSE</code></a>.</p>
561
<div class="variablelist"><table border="0">
562
<col align="left" valign="top">
565
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
566
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
570
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
571
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> pointing into <em class="parameter"><code>buffer</code></em>.
575
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
576
<td> Whether <em class="parameter"><code>iter</code></em> was moved.
583
<div class="refsect2" title="inf_text_buffer_iter_prev ()">
584
<a name="inf-text-buffer-iter-prev"></a><h3>inf_text_buffer_iter_prev ()</h3>
585
<pre class="programlisting"><a
586
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
587
>gboolean</a> inf_text_buffer_iter_prev (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
588
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);</pre>
590
Moves <em class="parameter"><code>iter</code></em> to point to the previous segment in the buffer. If <em class="parameter"><code>iter</code></em>
591
already points to the first segment, <em class="parameter"><code>iter</code></em> is left unmodified and the
593
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE--CAPS"
594
><code class="literal">FALSE</code></a>.</p>
597
<div class="variablelist"><table border="0">
598
<col align="left" valign="top">
601
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
602
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
606
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
607
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> pointing into <em class="parameter"><code>buffer</code></em>.
611
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
612
<td> Whether <em class="parameter"><code>iter</code></em> was moved.
619
<div class="refsect2" title="inf_text_buffer_iter_get_text ()">
620
<a name="inf-text-buffer-iter-get-text"></a><h3>inf_text_buffer_iter_get_text ()</h3>
621
<pre class="programlisting"><a
622
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
623
>gpointer</a> inf_text_buffer_iter_get_text (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
624
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);</pre>
626
Returns the text of the segment <em class="parameter"><code>iter</code></em> points to. It is encoded in
627
<em class="parameter"><code>buffer</code></em>'s encoding (see <a class="link" href="libinftext-04-inf-text-buffer.html#inf-text-buffer-get-encoding" title="inf_text_buffer_get_encoding ()"><code class="function">inf_text_buffer_get_encoding()</code></a>).</p>
630
<div class="variablelist"><table border="0">
631
<col align="left" valign="top">
634
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
635
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
639
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
640
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> pointing into <em class="parameter"><code>buffer</code></em>.
644
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
645
<td> The text of the segment <em class="parameter"><code>iter</code></em> points to. Free with <a
646
href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"
647
><code class="function">g_free()</code></a>
655
<div class="refsect2" title="inf_text_buffer_iter_get_length ()">
656
<a name="inf-text-buffer-iter-get-length"></a><h3>inf_text_buffer_iter_get_length ()</h3>
657
<pre class="programlisting"><a
658
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
659
>guint</a> inf_text_buffer_iter_get_length (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
660
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);</pre>
662
Returns the length of the segment <em class="parameter"><code>iter</code></em> points to, in characters.</p>
665
<div class="variablelist"><table border="0">
666
<col align="left" valign="top">
669
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
670
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
674
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
675
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> pointing into <em class="parameter"><code>buffer</code></em>.
679
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
680
<td> The number of characters of the segment <em class="parameter"><code>iter</code></em> points to.
687
<div class="refsect2" title="inf_text_buffer_iter_get_bytes ()">
688
<a name="inf-text-buffer-iter-get-bytes"></a><h3>inf_text_buffer_iter_get_bytes ()</h3>
689
<pre class="programlisting"><a
690
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"
691
>gsize</a> inf_text_buffer_iter_get_bytes (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
692
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);</pre>
694
Returns the length of the segment <em class="parameter"><code>iter</code></em> points to, in bytes.</p>
697
<div class="variablelist"><table border="0">
698
<col align="left" valign="top">
701
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
702
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
706
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
707
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> pointing into <em class="parameter"><code>buffer</code></em>.
711
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
712
<td> The number of bytes of the segment <em class="parameter"><code>iter</code></em> points to.
719
<div class="refsect2" title="inf_text_buffer_iter_get_author ()">
720
<a name="inf-text-buffer-iter-get-author"></a><h3>inf_text_buffer_iter_get_author ()</h3>
721
<pre class="programlisting"><a
722
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
723
>guint</a> inf_text_buffer_iter_get_author (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *buffer,
724
<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter">InfTextBufferIter</a> *iter);</pre>
726
Returns the user ID of the user that has written the segment <em class="parameter"><code>iter</code></em> points
730
<div class="variablelist"><table border="0">
731
<col align="left" valign="top">
734
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
735
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer"><span class="type">InfTextBuffer</span></a>.
739
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
740
<td> A <a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBufferIter" title="InfTextBufferIter"><span class="type">InfTextBufferIter</span></a> pointing into <em class="parameter"><code>buffer</code></em>.
744
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
745
<td> The user ID of the user that wrote the segment <em class="parameter"><code>iter</code></em> points
753
<div class="refsect1" title="Signal Details">
754
<a name="libinftext-04-inf-text-buffer.signal-details"></a><h2>Signal Details</h2>
755
<div class="refsect2" title='The "erase-text" signal'>
756
<a name="InfTextBuffer-erase-text"></a><h3>The <code class="literal">"erase-text"</code> signal</h3>
757
<pre class="programlisting">void user_function (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *inftextbuffer,
759
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
762
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
765
href="../libinfinity-0.4/InfUser.html"
768
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
769
>gpointer</a> user_data) : Run Last</pre>
772
<div class="variablelist"><table border="0">
773
<col align="left" valign="top">
776
<td><p><span class="term"><em class="parameter"><code>inftextbuffer</code></em> :</span></p></td>
777
<td>the object which received the signal.
781
<td><p><span class="term"><em class="parameter"><code>arg1</code></em> :</span></p></td>
786
<td><p><span class="term"><em class="parameter"><code>arg2</code></em> :</span></p></td>
791
<td><p><span class="term"><em class="parameter"><code>arg3</code></em> :</span></p></td>
796
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
797
<td>user data set when the signal handler was connected.</td>
803
<div class="refsect2" title='The "insert-text" signal'>
804
<a name="InfTextBuffer-insert-text"></a><h3>The <code class="literal">"insert-text"</code> signal</h3>
805
<pre class="programlisting">void user_function (<a class="link" href="libinftext-04-inf-text-buffer.html#InfTextBuffer">InfTextBuffer</a> *inftextbuffer,
807
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
809
<a class="link" href="libinftext-04-inf-text-chunk.html#InfTextChunk" title="InfTextChunk">InfTextChunk</a> *arg2,
811
href="../libinfinity-0.4/InfUser.html"
814
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
815
>gpointer</a> user_data) : Run Last</pre>
818
<div class="variablelist"><table border="0">
819
<col align="left" valign="top">
822
<td><p><span class="term"><em class="parameter"><code>inftextbuffer</code></em> :</span></p></td>
823
<td>the object which received the signal.
827
<td><p><span class="term"><em class="parameter"><code>arg1</code></em> :</span></p></td>
832
<td><p><span class="term"><em class="parameter"><code>arg2</code></em> :</span></p></td>
837
<td><p><span class="term"><em class="parameter"><code>arg3</code></em> :</span></p></td>
842
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
843
<td>user data set when the signal handler was connected.</td>
852
Generated by GTK-Doc V1.11</div>