Mercurial > geeqie
view src/metadata.h @ 1394:bec57fa486f4
allow dropping of multiple keywords
author | nadvornik |
---|---|
date | Sun, 08 Mar 2009 10:38:51 +0000 |
parents | d1b32a69b40a |
children | 58f0b4586c8c |
line wrap: on
line source
/* * Geeqie * (C) 2004 John Ellis * Copyright (C) 2008 - 2009 The Geeqie Team * * Author: John Ellis, Laurent Monin * * This software is released under the GNU General Public License (GNU GPL). * Please read the included file COPYING for more information. * This software comes with no warranty of any kind, use at your own risk! */ #ifndef METADATA_H #define METADATA_H #define COMMENT_KEY "Xmp.dc.description" #define KEYWORD_KEY "Xmp.dc.subject" gboolean metadata_write_queue_remove(FileData *fd); gboolean metadata_write_queue_remove_list(GList *list); gboolean metadata_write_perform(FileData *fd); gboolean metadata_write_queue_confirm(FileUtilDoneFunc done_func, gpointer done_data); gint metadata_queue_length(void); gboolean metadata_write_list(FileData *fd, const gchar *key, const GList *values); gboolean metadata_write_string(FileData *fd, const gchar *key, const char *value); GList *metadata_read_list(FileData *fd, const gchar *key, MetadataFormat format); gchar *metadata_read_string(FileData *fd, const gchar *key, MetadataFormat format); guint64 metadata_read_int(FileData *fd, const gchar *key, guint64 fallback); gboolean metadata_append_string(FileData *fd, const gchar *key, const char *value); gboolean metadata_append_list(FileData *fd, const gchar *key, const GList *values); GList *string_to_keywords_list(const gchar *text); gchar *find_string_in_list_utf8nocase(GList *list, const gchar *string); gboolean meta_data_get_keyword_mark(FileData *fd, gint n, gpointer data); gboolean meta_data_set_keyword_mark(FileData *fd, gint n, gboolean value, gpointer data); enum { KEYWORD_COLUMN_MARK, KEYWORD_COLUMN_NAME, KEYWORD_COLUMN_CASEFOLD, KEYWORD_COLUMN_IS_KEYWORD, KEYWORD_COLUMN_COUNT }; extern GtkTreeStore *keyword_tree; gchar *keyword_get_name(GtkTreeModel *keyword_tree, GtkTreeIter *iter); gchar *keyword_get_casefold(GtkTreeModel *keyword_tree, GtkTreeIter *iter); gboolean keyword_get_is_keyword(GtkTreeModel *keyword_tree, GtkTreeIter *iter); void keyword_copy(GtkTreeStore *keyword_tree, GtkTreeIter *to, GtkTreeIter *from); void keyword_copy_recursive(GtkTreeStore *keyword_tree, GtkTreeIter *to, GtkTreeIter *from); void keyword_move_recursive(GtkTreeStore *keyword_tree, GtkTreeIter *to, GtkTreeIter *from); GList *keyword_tree_get_path(GtkTreeModel *keyword_tree, GtkTreeIter *iter_ptr); gboolean keyword_tree_get_iter(GtkTreeModel *keyword_tree, GtkTreeIter *iter_ptr, GList *path); void keyword_set(GtkTreeStore *keyword_tree, GtkTreeIter *iter, const gchar *name, gboolean is_keyword); gboolean keyword_tree_is_set(GtkTreeModel *keyword_tree, GtkTreeIter *iter, GList *kw_list); void keyword_tree_set(GtkTreeModel *keyword_tree, GtkTreeIter *iter_ptr, GList **kw_list); void keyword_tree_reset(GtkTreeModel *keyword_tree, GtkTreeIter *iter_ptr, GList **kw_list); void keyword_tree_new_default(void); #endif /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */