## GimpFileEntry

GimpFileEntry — Widget for entering a filename.

## Synopsis

                GimpFileEntry;
    GtkWidget*  gimp_file_entry_new             (const gchar *title,
                                                 const gchar *filename,
                                                 gboolean dir_only,
                                                 gboolean check_valid);
    gchar*      gimp_file_entry_get_filename    (GimpFileEntry *entry);
    void        gimp_file_entry_set_filename    (GimpFileEntry *entry,
                                                 const gchar *filename);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBox
                                     +----GtkHBox
                                           +----GimpFileEntry

## Implemented Interfaces

GimpFileEntry implements AtkImplementorIface.

## Signals

    "filename-changed"
                void        user_function      (GimpFileEntry *arg0,
                                                gpointer       user_data)      : Run first

## Description

This widget is used to enter filenames or directories.

There is a GtkEntry for entering the filename manually and a "..." button which will pop up a GtkFileSelection dialog.

You can restrict the GimpFileSelection to directories. In this case the filename listbox of the GtkFileSelection dialog will be hidden.

If you specify `check_valid` as TRUE in `gimp_file_entry_new()` the entered filename will be checked for validity and a pixmap will be shown which indicates if the file exists or not.

Whenever the user changes the filename, the "filename_changed" signal will be emitted.

## Details

### GimpFileEntry

    typedef struct _GimpFileEntry GimpFileEntry;

### gimp_file_entry_new ()

    GtkWidget*  gimp_file_entry_new             (const gchar *title,
                                                 const gchar *filename,
                                                 gboolean dir_only,
                                                 gboolean check_valid);

Creates a new GimpFileEntry widget.

`title` : | The title of the GtkFileEntry dialog.
`filename` : | The initial filename.
`dir_only` : | `TRUE` if the file entry should accept directories only.
`check_valid` : | `TRUE` if the widget should check if the entered file really exists.
Returns : | A pointer to the new GimpFileEntry widget.

### gimp_file_entry_get_filename ()

    gchar*      gimp_file_entry_get_filename    (GimpFileEntry *entry);

Note that you have to `g_free()` the returned string.

`entry` : | The file entry you want to know the filename from.
Returns : | The file or directory the user has entered.

### gimp_file_entry_set_filename ()

    void        gimp_file_entry_set_filename    (GimpFileEntry *entry,
                                                 const gchar *filename);

If you specified `check_valid` as `TRUE` in `gimp_file_entry_new()` the GimpFileEntry will immediately check the validity of the file name.

`entry` : | The file entry you want to set the filename for.
`filename` : | The new filename.

## Signal Details

### The "filename-changed" signal

    void        user_function                  (GimpFileEntry *arg0,
                                                gpointer       user_data)      : Run first

This signal is emitted whenever the user changes the filename.

`user_data` : | user data set when the signal handler was connected.

## See Also

GimpPathEditor