gtk.editable

Module for [Editable] interface

Types 2

interfaceEditable

The #GtkEditable interface is an interface which should be implemented by text editing widgets, such as #GtkEntry and #GtkSpinButton. It contains functions for generically manipulating an editable widget, a large number of action signals used for key bindings, and several signals that an application can connect to to modify the behavior of a widget.

As an example of the latter usage, by connecting the following handler to #GtkEditable::insert-text, an application can convert all entry into a widget into uppercase.

Forcing entry to uppercase.

#include <ctype.h>;

void
insert_text_handler (GtkEditable *editable,
                    const gchar *text,
                    gint         length,
                    gint        *position,
                    gpointer     data)
{
 gchar *result = g_utf8_strup (text, length);

 g_signal_handlers_block_by_func (editable,
                              (gpointer) insert_text_handler, data);
 gtk_editable_insert_text (editable, result, length, position);
 g_signal_handlers_unblock_by_func (editable,
                                    (gpointer) insert_text_handler, data);

 g_signal_stop_emission_by_name (editable, "insert_text");

 g_free (result);
}

Methods
void copyClipboard()Copies the contents of the currently selected content in the editable and puts it on the clipboard.
void cutClipboard()Removes the contents of the currently selected content in the editable and puts it on the clipboard.
void deleteSelection()Deletes the currently selected text of the editable. This call doesn’t do anything if there is no selected text.
void deleteText(int startPos, int endPos)Deletes a sequence of characters. The characters that are deleted are those characters at positions from startpos up to, but not including endpos. If endpos is negative, then the characters deleted...
string getChars(int startPos, int endPos)Retrieves a sequence of characters. The characters that are retrieved are those characters at positions from startpos up to, but not including endpos. If endpos is negative, then the characters ret...
bool getEditable()Retrieves whether editable is editable. See [gtk.editable.Editable.setEditable]. Returns: true if editable is editable.
int getPosition()Retrieves the current position of the cursor relative to the start of the content of the editable.
bool getSelectionBounds(out int startPos, out int endPos)Retrieves the selection bound of the editable. startpos will be filled with the start of the selection and endpos with end. If no text was selected both will be identical and false will be returned.
void insertText(string newText, ref int position)Inserts newtextlength bytes of new_text into the contents of the widget, at position position.
void pasteClipboard()Pastes the content of the clipboard to the current position of the cursor in the editable.
void selectRegion(int startPos, int endPos)Selects a region of text. The characters that are selected are those characters at positions from startpos up to, but not including endpos. If endpos is negative, then the characters selected are t...
void setEditable(bool isEditable)Determines if the user can edit the text in the editable widget or not.
void setPosition(int position)Sets the cursor position in the editable to the given value.
gulong connectChanged(T)(T callback, Flag!"After" after = No.After)Connect to `Changed` signal.
gulong connectDeleteText(T)(T callback, Flag!"After" after = No.After)Connect to `DeleteText` signal.
gulong connectInsertText(T)(T callback, Flag!"After" after = No.After)Connect to `InsertText` signal.