## fm-gtk-utils

fm-gtk-utils

## Synopsis

    int                 fm_ask                              (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             ...);
    int                 fm_ask_valist                       (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             va_list options);
    int                 fm_askv                             (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             const char **options);
    #define             fm_copy_file                        (parent,
                                                             file,
                                                             dest_dir)
    void                fm_copy_files                       (GtkWindow *parent,
                                                             FmPathList *files,
                                                             FmPath *dest_dir);
    #define             fm_copy_files_to                    (parent,
                                                             files)
    void                fm_delete_files                     (GtkWindow *parent,
                                                             FmPathList *files);
    gboolean            fm_eject_mount                      (GtkWindow *parent,
                                                             GMount *mount,
                                                             gboolean interactive);
    gboolean            fm_eject_volume                     (GtkWindow *parent,
                                                             GVolume *vol,
                                                             gboolean interactive);
    void                fm_empty_trash                      (GtkWindow *parent);
    char *              fm_get_user_input                   (GtkWindow *parent,
                                                             const char *title,
                                                             const char *msg,
                                                             const char *default_text);
    FmPath *            fm_get_user_input_path              (GtkWindow *parent,
                                                             const char *title,
                                                             const char *msg,
                                                             FmPath *default_path);
    gboolean            fm_mount_path                       (GtkWindow *parent,
                                                             FmPath *path,
                                                             gboolean interactive);
    gboolean            fm_mount_volume                     (GtkWindow *parent,
                                                             GVolume *vol,
                                                             gboolean interactive);
    #define             fm_move_file                        (parent,
                                                             file,
                                                             dest_dir)
    void                fm_move_files                       (GtkWindow *parent,
                                                             FmPathList *files,
                                                             FmPath *dest_dir);
    #define             fm_move_files_to                    (parent,
                                                             files)
    void                fm_move_or_copy_files_to            (GtkWindow *parent,
                                                             FmPathList *files,
                                                             gboolean is_move);
    gboolean            fm_ok_cancel                        (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             gboolean default_ok);
    void                fm_rename_file                      (GtkWindow *parent,
                                                             FmPath *file);
    FmPath *            fm_select_folder                    (GtkWindow *parent,
                                                             const char *title);
    void                fm_show_error                       (GtkWindow *parent,
                                                             const char *title,
                                                             const char *msg);
    void                fm_trash_files                      (GtkWindow *parent,
                                                             FmPathList *files);
    void                fm_trash_or_delete_files            (GtkWindow *parent,
                                                             FmPathList *files);
    gboolean            fm_unmount_mount                    (GtkWindow *parent,
                                                             GMount *mount,
                                                             gboolean interactive);
    gboolean            fm_unmount_volume                   (GtkWindow *parent,
                                                             GVolume *vol,
                                                             gboolean interactive);
    void                fm_untrash_files                    (GtkWindow *parent,
                                                             FmPathList *files);
    gboolean            fm_yes_no                           (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             gboolean default_yes);

## Description

## Details

### fm_ask ()

    int                 fm_ask                              (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             ...);

`parent` : | toplevel parent widget
`question` : | the question to show to the user
`...` : | a NULL terminated list of button labels Returns: the index of selected button, or -1 if the dialog is closed.

### fm_ask_valist ()

    int                 fm_ask_valist                       (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             va_list options);

`parent` : | toplevel parent widget
`question` : | the question to show to the user
`options` : | a NULL terminated list of button labels Returns: the index of selected button, or -1 if the dialog is closed.

### fm_askv ()

    int                 fm_askv                             (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             const char **options);

`parent` : | toplevel parent widget
`question` : | the question to show to the user
`options` : | a NULL terminated list of button labels Returns: the index of selected button, or -1 if the dialog is closed.

### fm_copy_file()

    #define             fm_copy_file(parent, file, dest_dir)

### fm_copy_files ()

    void                fm_copy_files                       (GtkWindow *parent,
                                                             FmPathList *files,
                                                             FmPath *dest_dir);

### fm_copy_files_to()

    #define fm_copy_files_to(parent, files)   fm_move_or_copy_files_to(parent, files, FALSE)

### fm_delete_files ()

    void                fm_delete_files                     (GtkWindow *parent,
                                                             FmPathList *files);

### fm_eject_mount ()

    gboolean            fm_eject_mount                      (GtkWindow *parent,
                                                             GMount *mount,
                                                             gboolean interactive);

### fm_eject_volume ()

    gboolean            fm_eject_volume                     (GtkWindow *parent,
                                                             GVolume *vol,
                                                             gboolean interactive);

### fm_empty_trash ()

    void                fm_empty_trash                      (GtkWindow *parent);

### fm_get_user_input ()

    char *              fm_get_user_input                   (GtkWindow *parent,
                                                             const char *title,
                                                             const char *msg,
                                                             const char *default_text);

### fm_get_user_input_path ()

    FmPath *            fm_get_user_input_path              (GtkWindow *parent,
                                                             const char *title,
                                                             const char *msg,
                                                             FmPath *default_path);

### fm_mount_path ()

    gboolean            fm_mount_path                       (GtkWindow *parent,
                                                             FmPath *path,
                                                             gboolean interactive);

### fm_mount_volume ()

    gboolean            fm_mount_volume                     (GtkWindow *parent,
                                                             GVolume *vol,
                                                             gboolean interactive);

### fm_move_file()

    #define             fm_move_file(parent, file, dest_dir)

### fm_move_files ()

    void                fm_move_files                       (GtkWindow *parent,
                                                             FmPathList *files,
                                                             FmPath *dest_dir);

### fm_move_files_to()

    #define fm_move_files_to(parent, files)   fm_move_or_copy_files_to(parent, files, TRUE)

### fm_move_or_copy_files_to ()

    void                fm_move_or_copy_files_to            (GtkWindow *parent,
                                                             FmPathList *files,
                                                             gboolean is_move);

### fm_ok_cancel ()

    gboolean            fm_ok_cancel                        (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             gboolean default_ok);

### fm_rename_file ()

    void                fm_rename_file                      (GtkWindow *parent,
                                                             FmPath *file);

### fm_select_folder ()

    FmPath *            fm_select_folder                    (GtkWindow *parent,
                                                             const char *title);

### fm_show_error ()

    void                fm_show_error                       (GtkWindow *parent,
                                                             const char *title,
                                                             const char *msg);

### fm_trash_files ()

    void                fm_trash_files                      (GtkWindow *parent,
                                                             FmPathList *files);

### fm_trash_or_delete_files ()

    void                fm_trash_or_delete_files            (GtkWindow *parent,
                                                             FmPathList *files);

### fm_unmount_mount ()

    gboolean            fm_unmount_mount                    (GtkWindow *parent,
                                                             GMount *mount,
                                                             gboolean interactive);

### fm_unmount_volume ()

    gboolean            fm_unmount_volume                   (GtkWindow *parent,
                                                             GVolume *vol,
                                                             gboolean interactive);

### fm_untrash_files ()

    void                fm_untrash_files                    (GtkWindow *parent,
                                                             FmPathList *files);

### fm_yes_no ()

    gboolean            fm_yes_no                           (GtkWindow *parent,
                                                             const char *title,
                                                             const char *question,
                                                             gboolean default_yes);