GtkEditable

## GtkEditable GtkEditable — Interface for text-editing widgets |

## Includes

    #include <gtk/gtk.h>

## Description

The GtkEditable interface is an interface which should be implemented by text editing widgets, such as GtkEntry and GtkText. 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 "insert_text", an application can convert all entry into a widget into uppercase.

Example 12. Forcing entry to uppercase.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    #include <ctype.h>
    void
    insert_text_handler (GtkEditable *editable,
                         const gchar *text,
                         gint         length,
                         gint        *position,
                         gpointer     data)
    {
      int i;
      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);
    }

## Functions

## Types and Values