Remove commented out code.
[geeqie.git] / src / collect.h
1 /*
2  * Geeqie
3  * (C) 2004 John Ellis
4  * Copyright (C) 2008 - 2012 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 COLLECT_H
15 #define COLLECT_H
16
17
18 CollectInfo *collection_info_new(FileData *fd, struct stat *st, GdkPixbuf *pixbuf);
19
20 void collection_info_free_thumb(CollectInfo *ci);
21 void collection_info_free(CollectInfo *ci);
22
23 void collection_info_set_thumb(CollectInfo *ci, GdkPixbuf *pixbuf);
24 gboolean collection_info_load_thumb(CollectInfo *ci);
25
26 void collection_list_free(GList *list);
27
28 GList *collection_list_sort(GList *list, SortType method);
29 GList *collection_list_add(GList *list, CollectInfo *ci, SortType method);
30 GList *collection_list_insert(GList *list, CollectInfo *ci, CollectInfo *insert_ci, SortType method);
31 GList *collection_list_remove(GList *list, CollectInfo *ci);
32 CollectInfo *collection_list_find_fd(GList *list, FileData *fd);
33 GList *collection_list_to_filelist(GList *list);
34
35 CollectionData *collection_new(const gchar *path);
36 void collection_free(CollectionData *cd);
37
38 void collection_ref(CollectionData *cd);
39 void collection_unref(CollectionData *cd);
40
41 void collection_path_changed(CollectionData *cd);
42
43 gint collection_to_number(CollectionData *cd);
44 CollectionData *collection_from_number(gint n);
45
46 /* pass a NULL pointer to whatever you don't need
47  * use free_selected_list to free list, and
48  * g_list_free to free info_list, which is a list of
49  * CollectInfo pointers into CollectionData
50  */
51 CollectionData *collection_from_dnd_data(const gchar *data, GList **list, GList **info_list);
52 gchar *collection_info_list_to_dnd_data(CollectionData *cd, GList *list, gint *length);
53
54 gint collection_info_valid(CollectionData *cd, CollectInfo *info);
55
56 CollectInfo *collection_next_by_info(CollectionData *cd, CollectInfo *info);
57 CollectInfo *collection_prev_by_info(CollectionData *cd, CollectInfo *info);
58 CollectInfo *collection_get_first(CollectionData *cd);
59 CollectInfo *collection_get_last(CollectionData *cd);
60
61 void collection_set_sort_method(CollectionData *cd, SortType method);
62 void collection_randomize(CollectionData *cd);
63 void collection_set_update_info_func(CollectionData *cd,
64                                      void (*func)(CollectionData *, CollectInfo *, gpointer), gpointer data);
65
66 gboolean collection_add(CollectionData *cd, FileData *fd, gboolean sorted);
67 gboolean collection_add_check(CollectionData *cd, FileData *fd, gboolean sorted, gboolean must_exist);
68 gboolean collection_insert(CollectionData *cd, FileData *fd, CollectInfo *insert_ci, gboolean sorted);
69 gboolean collection_remove(CollectionData *cd, FileData *fd);
70 void collection_remove_by_info_list(CollectionData *cd, GList *list);
71 gboolean collection_rename(CollectionData *cd, FileData *fd);
72
73 void collection_update_geometry(CollectionData *cd);
74
75 CollectWindow *collection_window_new(const gchar *path);
76 void collection_window_close_by_collection(CollectionData *cd);
77 CollectWindow *collection_window_find(CollectionData *cd);
78 CollectWindow *collection_window_find_by_path(const gchar *path);
79 gboolean collection_window_modified_exists(void);
80
81
82 #endif
83 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */