GTK+ Reference Manual
<<< Previous Page | Home | Up | Next Page >>>

# GtkEntry

## Name

GtkEntry -- a single line text entry field.

## Synopsis

    #include <gtk/gtk.h>

    struct      GtkEntry;
    GtkWidget*  gtk_entry_new                   (void);
    GtkWidget*  gtk_entry_new_with_max_length   (guint16 max);
    void        gtk_entry_set_text              (GtkEntry *entry,
                                                 const gchar *text);
    void        gtk_entry_append_text           (GtkEntry *entry,
                                                 const gchar *text);
    void        gtk_entry_prepend_text          (GtkEntry *entry,
                                                 const gchar *text);
    void        gtk_entry_set_position          (GtkEntry *entry,
                                                 gint position);
    gchar*      gtk_entry_get_text              (GtkEntry *entry);
    void        gtk_entry_select_region         (GtkEntry *entry,
                                                 gint start,
                                                 gint end);
    void        gtk_entry_set_visibility        (GtkEntry *entry,
                                                 gboolean visible);
    void        gtk_entry_set_editable          (GtkEntry *entry,
                                                 gboolean editable);
    void        gtk_entry_set_max_length        (GtkEntry *entry,
                                                 guint16 max);

## Object Hierarchy

      GtkObject
       +----GtkWidget
             +----GtkEditable
                   +----GtkEntry

## Properties

      "max-length"           guint                : Read / Write
      "visibility"           gboolean             : Read / Write

## Description

The GtkEntry widget is a single line text entry widget. A fairly large set of key bindings are supported by default. If the entered text is longer than the allocation of the widget, the widget will scroll so that the cursor position is visible.

## Details

### struct GtkEntry

    struct GtkEntry;

The GtkEntry struct contains only private data.

### gtk_entry_new ()

    GtkWidget*  gtk_entry_new                   (void);

Creates a new GtkEntry widget.

Returns : | a new GtkEntry.

### gtk_entry_new_with_max_length ()

    GtkWidget*  gtk_entry_new_with_max_length   (guint16 max);

Creates a new GtkEntry widget with the given maximum length.

Note: the existance of this function is inconsistent with the rest of the GTK+ API. The normal setup would be to just require the user to make an extra call to gtk_entry_set_max_length() instead. It is not expected that this function will be removed, but it would be better practice not to use it.

`max` : | the new maximum length.
Returns : | a new GtkEntry.

### gtk_entry_set_text ()

    void        gtk_entry_set_text              (GtkEntry *entry,
                                                 const gchar *text);

Sets the text in the widget to the given value, replacing the current contents.

`entry` : | a GtkEntry.
`text` : | the new text.

### gtk_entry_append_text ()

    void        gtk_entry_append_text           (GtkEntry *entry,
                                                 const gchar *text);

Appends the given text to the contents of the widget.

`entry` : | a GtkEntry.
`text` : | the text to append.

### gtk_entry_prepend_text ()

    void        gtk_entry_prepend_text          (GtkEntry *entry,
                                                 const gchar *text);

Prepends the given text to the contents of th ewidget.

`entry` : | a GtkEntry.
`text` : | the text to prepend.

### gtk_entry_set_position ()

    void        gtk_entry_set_position          (GtkEntry *entry,
                                                 gint position);

Sets the cursor position in an entry to the given value. This function is obsolete. You should use gtk_editable_set_position() instead.

`entry` : | a GtkEntry.
`position` : | the position of the cursor. The cursor is displayed before the character with the given (base 0) index in the widget. The value must be less than or equal to the number of characters in the widget. A value of -1 indicates that the position should be set after the last character in the entry. Note that this position is in characters, not in bytes.

### gtk_entry_get_text ()

    gchar*      gtk_entry_get_text              (GtkEntry *entry);

Retrieve the contents of the entry widget. The returned pointer points to internally allocated storage in the widget and must not be freed, modified or stored. For this reason, this function is deprecated. Use gtk_editable_get_chars() instead.

`entry` : | a GtkEntry.
Returns : | the pointer the the contents of the text widget as a string.

### gtk_entry_select_region ()

    void        gtk_entry_select_region         (GtkEntry *entry,
                                                 gint start,
                                                 gint end);

Selects a region of text. The characters that are selected are those characters at positions from `start_pos` up to, but not including `end_pos`. If `end_pos` is negative, then the the characters selected will be those characters from `start_pos` to the end of the text. This function is obsolete. You should use gtk_editable_select_region() instead.

`entry` : | a GtkEntry.
`start` : | the starting position.
`end` : | the end position.

### gtk_entry_set_visibility ()

    void        gtk_entry_set_visibility        (GtkEntry *entry,
                                                 gboolean visible);

Sets whether the contents of the entry are visible or not. When visibility is set to `FALSE`, characters are displayed as asterisks (*'s), and will also appear that way when the text in the entry widget is copied elsewhere.

`entry` : | a GtkEntry.
`visible` : | `TRUE` if the contents of the entry are displayd as plaintext.

### gtk_entry_set_editable ()

    void        gtk_entry_set_editable          (GtkEntry *entry,
                                                 gboolean editable);

Determines if the user can edit the text in the editable widget or not. This function is obsolete. You should use gtk_editable_set_editable() instead.

`entry` : | a GtkEntry.
`editable` : | `TRUE` if the user is allowed to edit the text in the widget.

### gtk_entry_set_max_length ()

    void        gtk_entry_set_max_length        (GtkEntry *entry,
                                                 guint16 max);

Sets the maximum allowed length of the contents of the widget. If the current contents are longer than the given length, then they will be truncated to fit.

`entry` : | a GtkEntry.
`max` : | the new maximum length.

## Properties

"`max-length`" (guint : Read / Write)

"`visibility`" (gboolean : Read / Write)

  Determines whether the contents of the entry widget are visible or not. See gtk_entry_set_visibility().

## See Also

GtkText

  a widget for handling multi-line text entry.

<<< Previous Page | Home | Up | Next Page >>>
GtkEditable | GtkEventBox