e3352024b248d9587b1a823afa71a2df3eba72b6
[geeqie.git] / src / utilops.h
1 /*
2  * Geeqie
3  * (C) 2006 John Ellis
4  * Copyright (C) 2008 The Geeqie Team
5  *
6  * Author: John Ellis
7  *
8  * This software is released under the GNU General Public License (GNU GPL).
9  * Please read the included file COPYING for more information.
10  * This software comes with no warranty of any kind, use at your own risk!
11  */
12
13
14 #ifndef UTILOPS_H
15 #define UTILOPS_H
16
17
18 #include "ui_utildlg.h"
19
20 void file_maint_renamed(FileData *fd);
21 void file_maint_removed(FileData *fd, GList *ignore_list);
22 void file_maint_moved(FileData *fd, GList *ignore_list);
23 void file_maint_copied(FileData *fd);
24
25 GenericDialog *file_util_gen_dlg(const gchar *title,
26                                  const gchar *role,
27                                  GtkWidget *parent, gint auto_close,
28                                  void (*cancel_cb)(GenericDialog *, gpointer), gpointer data);
29 FileDialog *file_util_file_dlg(const gchar *title,
30                                const gchar *role,
31                                GtkWidget *parent,
32                                void (*cancel_cb)(FileDialog *, gpointer), gpointer data);
33 GenericDialog *file_util_warning_dialog(const gchar *heading, const gchar *message,
34                                         const gchar *icon_stock_id, GtkWidget *parent);
35
36 void file_util_delete(FileData *source_fd, GList *source_list, GtkWidget *parent);
37 void file_util_move(FileData *source_fd, GList *source_list, const gchar *dest_path, GtkWidget *parent);
38 void file_util_copy(FileData *source_fd, GList *source_list, const gchar *dest_path, GtkWidget *parent);
39 void file_util_rename(FileData *source_fd, GList *source_list, GtkWidget *parent);
40 void file_util_write_metadata(FileData *source_fd, GList *source_list, GtkWidget *parent, FileUtilDoneFunc done_func, gpointer done_data);
41
42 void file_util_create_dir(FileData *dir_fd, GtkWidget *parent, FileUtilDoneFunc done_func, gpointer done_data);
43
44 void file_util_rename_dir(FileData *source_fd, const gchar *new_path, GtkWidget *parent);
45
46 /* these avoid the location entry dialog, list must be files only and
47  * dest_path must be a valid directory path
48 */
49 void file_util_move_simple(GList *list, const gchar *dest_path, GtkWidget *parent);
50 void file_util_copy_simple(GList *list, const gchar *dest_path, GtkWidget *parent);
51 void file_util_rename_simple(FileData *fd, const gchar *dest_path, GtkWidget *parent);
52
53 void file_util_start_editor_from_file(gint n, FileData *fd, GtkWidget *parent);
54 void file_util_start_editor_from_filelist(gint n, GList *list, GtkWidget *parent);
55 void file_util_start_filter_from_file(gint n, FileData *fd, const gchar *dest_path, GtkWidget *parent);
56 void file_util_start_filter_from_filelist(gint n, GList *list, const gchar *dest_path, GtkWidget *parent);
57
58 void file_util_delete_dir(FileData *source_fd, GtkWidget *parent);
59
60 void file_util_copy_path_to_clipboard(FileData *fd);
61 void file_util_copy_path_list_to_clipboard(GList *list);
62
63 #endif
64 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */