GtkEntryBuffer
GtkEntryBuffer — Text buffer for GtkEntry
Functions
GtkEntryBuffer * | gtk_entry_buffer_new () |
const gchar * | gtk_entry_buffer_get_text () |
void | gtk_entry_buffer_set_text () |
gsize | gtk_entry_buffer_get_bytes () |
guint | gtk_entry_buffer_get_length () |
gint | gtk_entry_buffer_get_max_length () |
void | gtk_entry_buffer_set_max_length () |
guint | gtk_entry_buffer_insert_text () |
guint | gtk_entry_buffer_delete_text () |
void | gtk_entry_buffer_emit_deleted_text () |
void | gtk_entry_buffer_emit_inserted_text () |
Properties
guint | length | Read |
int | max-length | Read / Write |
char * | text | Read / Write |
Signals
void | deleted-text | Run First |
void | inserted-text | Run First |
Types and Values
struct | GtkEntryBuffer |
Object Hierarchy
GObject ╰── GtkEntryBuffer
Includes
#include <gtk/gtk.h>
Description
The GtkEntryBuffer class contains the actual text displayed in a GtkEntry widget.
A single GtkEntryBuffer object can be shared by multiple GtkEntry widgets which will then share the same text content, but not the cursor position, visibility attributes, icon etc.
GtkEntryBuffer may be derived from. Such a derived class might allow text to be stored in an alternate location, such as non-pageable memory, useful in the case of important passwords. Or a derived class could integrate with an application’s concept of undo/redo.
Functions
gtk_entry_buffer_new ()
GtkEntryBuffer * gtk_entry_buffer_new (const gchar *initial_chars
,gint n_initial_chars
);
Create a new GtkEntryBuffer object.
Optionally, specify initial text to set in the buffer.
Parameters
initial_chars | initial buffer text, or | [allow-none] |
n_initial_chars | number of characters in |
Returns
A new GtkEntryBuffer object.
Since: 2.18
gtk_entry_buffer_get_text ()
const gchar *
gtk_entry_buffer_get_text (GtkEntryBuffer *buffer
);
Retrieves the contents of the buffer.
The memory pointer returned by this call will not change unless this object emits a signal, or is finalized.
Parameters
buffer |
Returns
a pointer to the contents of the widget as a string. This string points to internally allocated storage in the buffer and must not be freed, modified or stored.
Since: 2.18
gtk_entry_buffer_set_text ()
void gtk_entry_buffer_set_text (GtkEntryBuffer *buffer
,const gchar *chars
,gint n_chars
);
Sets the text in the buffer.
This is roughly equivalent to calling gtk_entry_buffer_delete_text()
and gtk_entry_buffer_insert_text()
.
Note that n_chars
is in characters, not in bytes.
Parameters
buffer | ||
chars | the new text | |
n_chars | the number of characters in |
Since: 2.18
gtk_entry_buffer_get_bytes ()
gsize
gtk_entry_buffer_get_bytes (GtkEntryBuffer *buffer
);
Retrieves the length in bytes of the buffer. See gtk_entry_buffer_get_length()
.
Parameters
buffer |
Returns
The byte length of the buffer.
Since: 2.18
gtk_entry_buffer_get_length ()
guint
gtk_entry_buffer_get_length (GtkEntryBuffer *buffer
);
Retrieves the length in characters of the buffer.
Parameters
buffer |
Returns
The number of characters in the buffer.
Since: 2.18
gtk_entry_buffer_get_max_length ()
gint
gtk_entry_buffer_get_max_length (GtkEntryBuffer *buffer
);
Retrieves the maximum allowed length of the text in buffer
. See gtk_entry_buffer_set_max_length()
.
Parameters
buffer |
Returns
the maximum allowed number of characters in GtkEntryBuffer, or 0 if there is no maximum.
Since: 2.18
gtk_entry_buffer_set_max_length ()
void gtk_entry_buffer_set_max_length (GtkEntryBuffer *buffer
,gint max_length
);
Sets the maximum allowed length of the contents of the buffer. If the current contents are longer than the given length, then they will be truncated to fit.
Parameters
buffer | ||
max_length | the maximum length of the entry buffer, or 0 for no maximum. (other than the maximum length of entries.) The value passed in will be clamped to the range 0-65536. |
Since: 2.18
gtk_entry_buffer_insert_text ()
guint gtk_entry_buffer_insert_text (GtkEntryBuffer *buffer
,guint position
,const gchar *chars
,gint n_chars
);
Inserts n_chars
characters of chars
into the contents of the buffer, at position position
.
If n_chars
is negative, then characters from chars will be inserted until a null-terminator is found. If position
or n_chars
are out of bounds, or the maximum buffer text length is exceeded, then they are coerced to sane values.
Note that the position and length are in characters, not in bytes.
Parameters
buffer | ||
position | the position at which to insert text. | |
chars | the text to insert into the buffer. | |
n_chars | the length of the text in characters, or -1 |
Returns
The number of characters actually inserted.
Since: 2.18
gtk_entry_buffer_delete_text ()
guint gtk_entry_buffer_delete_text (GtkEntryBuffer *buffer
,guint position
,gint n_chars
);
Deletes a sequence of characters from the buffer. n_chars
characters are deleted starting at position
. If n_chars
is negative, then all characters until the end of the text are deleted.
If position
or n_chars
are out of bounds, then they are coerced to sane values.
Note that the positions are specified in characters, not bytes.
Parameters
buffer | ||
position | position at which to delete text | |
n_chars | number of characters to delete |
Returns
The number of characters deleted.
Since: 2.18
gtk_entry_buffer_emit_deleted_text ()
void gtk_entry_buffer_emit_deleted_text (GtkEntryBuffer *buffer
,guint position
,guint n_chars
);
Used when subclassing GtkEntryBuffer
Parameters
buffer | ||
position | position at which text was deleted | |
n_chars | number of characters deleted |
Since: 2.18
gtk_entry_buffer_emit_inserted_text ()
void gtk_entry_buffer_emit_inserted_text (GtkEntryBuffer *buffer
,guint position
,const gchar *chars
,guint n_chars
);
Used when subclassing GtkEntryBuffer
Parameters
buffer | ||
position | position at which text was inserted | |
chars | text that was inserted | |
n_chars | number of characters inserted |
Since: 2.18
Types and Values
struct GtkEntryBuffer
struct GtkEntryBuffer;
Property Details
The “length”
property
“length” guint
The length (in characters) of the text in buffer.
Owner: GtkEntryBuffer
Flags: Read
Allowed values: <= 65535
Default value: 0
Since: 2.18
The “max-length”
property
“max-length” int
The maximum length (in characters) of the text in the buffer.
Owner: GtkEntryBuffer
Flags: Read / Write
Allowed values: [0,65535]
Default value: 0
Since: 2.18
The “text”
property
“text” char *
The contents of the buffer.
Owner: GtkEntryBuffer
Flags: Read / Write
Default value: ""
Since: 2.18
Signal Details
The “deleted-text”
signal
void user_function (GtkEntryBuffer *buffer, guint position, guint n_chars, gpointer user_data)
This signal is emitted after text is deleted from the buffer.
Parameters
buffer | ||
position | the position the text was deleted at. | |
n_chars | The number of characters that were deleted. | |
user_data | user data set when the signal handler was connected. |
Flags: Run First
Since: 2.18
The “inserted-text”
signal
void user_function (GtkEntryBuffer *buffer, guint position, char *chars, guint n_chars, gpointer user_data)
This signal is emitted after text is inserted into the buffer.
Parameters
buffer | ||
position | the position the text was inserted at. | |
chars | The text that was inserted. | |
n_chars | The number of characters that were inserted. | |
user_data | user data set when the signal handler was connected. |
Flags: Run First
Since: 2.18
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkEntryBuffer.html