write keywords and comments with separate functions
[geeqie.git] / src / metadata.h
1 /*
2  * Geeqie
3  * (C) 2004 John Ellis
4  * Copyright (C) 2008 The Geeqie Team
5  *
6  * Author: John Ellis, Laurent Monin
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 METADATA_H
15 #define METADATA_H
16
17 #define COMMENT_KEY "Xmp.dc.description"
18 #define KEYWORD_KEY "Xmp.dc.subject"
19
20 gboolean metadata_write_queue_remove(FileData *fd);
21 gboolean metadata_write_queue_remove_list(GList *list);
22 gboolean metadata_write_perform(FileData *fd);
23 gboolean metadata_write_queue_confirm(FileUtilDoneFunc done_func, gpointer done_data);
24
25
26
27 gboolean metadata_write_list(FileData *fd, const gchar *key, const GList *values);
28 gboolean metadata_write_string(FileData *fd, const gchar *key, const char *value);
29
30 gint metadata_read(FileData *fd, GList **keywords, gchar **comment);
31
32 void metadata_set(FileData *fd, GList *new_keywords, gchar *new_comment, gboolean append);
33 gboolean find_string_in_list(GList *list, const gchar *keyword);
34 GList *string_to_keywords_list(const gchar *text);
35
36 gboolean meta_data_get_keyword_mark(FileData *fd, gint n, gpointer data);
37 gboolean meta_data_set_keyword_mark(FileData *fd, gint n, gboolean value, gpointer data);
38
39 #endif
40 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */