}
if (((type != CACHE_TYPE_METADATA && options->thumbnails.cache_into_dirs) ||
- (type == CACHE_TYPE_METADATA && options->enable_metadata_dirs)) &&
+ (type == CACHE_TYPE_METADATA && options->metadata.enable_metadata_dirs)) &&
access_file(base, W_OK))
{
path = g_build_filename(base, cache_local, name, NULL);
if (type == CACHE_TYPE_METADATA)
{
- prefer_local = options->enable_metadata_dirs;
+ prefer_local = options->metadata.enable_metadata_dirs;
}
else
{
gboolean metadata_write_perform(FileData *fd)
{
- if (options->save_metadata_in_image_file &&
+ if (options->metadata.save_in_image_file &&
exif_write_fd(fd))
{
metadata_legacy_delete(fd);
options->documentation.htmldir = NULL;
options->documentation.helpdir = NULL;
options->duplicates_similarity_threshold = 99;
- options->enable_metadata_dirs = FALSE;
options->file_filter.disable = FALSE;
options->file_filter.show_dot_directory = FALSE;
options->progressive_key_scrolling = TRUE;
- options->save_metadata_in_image_file = FALSE;
+ options->metadata.enable_metadata_dirs = FALSE;
+ options->metadata.save_in_image_file = FALSE;
+ options->metadata.save_legacy_IPTC = FALSE;
+ options->metadata.warn_on_write_problems = TRUE;
+ options->metadata.save_legacy_format = FALSE;
+ options->metadata.sync_grouped_files = TRUE;
+ options->metadata.confirm_write = TRUE;
+ options->metadata.confirm_timeout = 0;
+ options->metadata.confirm_on_image_change = FALSE;
+ options->metadata.confirm_on_dir_change = TRUE;
options->show_copy_path = TRUE;
options->show_icon_names = TRUE;
gboolean show_copy_path;
/* various */
- gboolean enable_metadata_dirs;
-
gboolean tree_descend_subdirs;
gboolean lazy_image_sync;
gint open_recent_list_maxsize;
gint dnd_icon_size;
- gboolean save_metadata_in_image_file;
/* start up */
struct {
gchar *helpdir;
gchar *htmldir;
} documentation;
+
+ /* Metadata */
+ struct {
+ gboolean enable_metadata_dirs;
+
+ gboolean save_in_image_file;
+ gboolean save_legacy_IPTC;
+ gboolean warn_on_write_problems;
+
+ gboolean save_legacy_format;
+
+ gboolean sync_grouped_files;
+
+ gboolean confirm_write;
+ gint confirm_timeout;
+ gboolean confirm_on_image_change;
+ gboolean confirm_on_dir_change;
+ } metadata;
+
};
ConfOptions *options;
options->thumbnails.use_xvpics = c_options->thumbnails.use_xvpics;
#endif
options->thumbnails.spec_standard = c_options->thumbnails.spec_standard;
- options->enable_metadata_dirs = c_options->enable_metadata_dirs;
+ options->metadata.enable_metadata_dirs = c_options->metadata.enable_metadata_dirs;
options->file_filter.show_hidden_files = c_options->file_filter.show_hidden_files;
options->file_filter.show_dot_directory = c_options->file_filter.show_dot_directory;
layout_copy_path_update_all();
}
- options->save_metadata_in_image_file = c_options->save_metadata_in_image_file;
+ options->metadata.save_in_image_file = c_options->metadata.save_in_image_file;
#ifdef DEBUG
set_debug_level(debug_c);
group = pref_group_new(vbox, FALSE, _("Miscellaneous"), GTK_ORIENTATION_VERTICAL);
pref_checkbox_new_int(group, _("Store metadata and cache files in source image's directory"),
- options->enable_metadata_dirs, &c_options->enable_metadata_dirs);
+ options->metadata.enable_metadata_dirs, &c_options->metadata.enable_metadata_dirs);
pref_checkbox_new_int(group, _("Store keywords and comments as XMP tags in image files"),
- options->save_metadata_in_image_file, &c_options->save_metadata_in_image_file);
+ options->metadata.save_in_image_file, &c_options->metadata.save_in_image_file);
pref_spin_new_int(group, _("Custom similarity threshold:"), NULL,
0, 100, 1, options->duplicates_similarity_threshold, (int *)&c_options->duplicates_similarity_threshold);
WRITE_SEPARATOR();
WRITE_BOOL(progressive_key_scrolling);
- WRITE_BOOL(enable_metadata_dirs);
- WRITE_BOOL(save_metadata_in_image_file);
WRITE_UINT(duplicates_similarity_threshold);
WRITE_SEPARATOR();
write_int_option(ssi, (gchar *)ExifUIList[i].key, ExifUIList[i].current);
}
+ WRITE_SUBTITLE("Metadata Options");
+ WRITE_BOOL(metadata.enable_metadata_dirs);
+ WRITE_BOOL(metadata.save_in_image_file);
+ WRITE_BOOL(metadata.save_legacy_IPTC);
+ WRITE_BOOL(metadata.warn_on_write_problems);
+ WRITE_BOOL(metadata.save_legacy_format);
+ WRITE_BOOL(metadata.sync_grouped_files);
+ WRITE_BOOL(metadata.confirm_write);
+ WRITE_INT(metadata.confirm_timeout);
+ WRITE_BOOL(metadata.confirm_on_image_change);
+ WRITE_BOOL(metadata.confirm_on_dir_change);
+
WRITE_SUBTITLE("Documentation Options");
WRITE_CHAR(documentation.helpdir);
WRITE_CHAR(documentation.htmldir);
READ_BOOL(progressive_key_scrolling);
- READ_BOOL(enable_metadata_dirs);
- READ_BOOL(save_metadata_in_image_file);
-
READ_BOOL(mousewheel_scrolls);
READ_INT(open_recent_list_maxsize);
ExifUIList[i].current = strtol(value, NULL, 10);
continue;
}
-
+
+ /* metadata */
+ COMPAT_READ_BOOL(enable_metadata_dirs, metadata.enable_metadata_dirs);
+ COMPAT_READ_BOOL(save_metadata_in_image_file, metadata.save_in_image_file); /* 2008/12/20 */
+ READ_BOOL(metadata.save_legacy_IPTC);
+ READ_BOOL(metadata.warn_on_write_problems);
+ READ_BOOL(metadata.save_legacy_format);
+ READ_BOOL(metadata.sync_grouped_files);
+ READ_BOOL(metadata.confirm_write);
+ READ_INT(metadata.confirm_timeout);
+ READ_BOOL(metadata.confirm_on_image_change);
+ READ_BOOL(metadata.confirm_on_dir_change);
+
/* Documentation */
READ_CHAR(documentation.helpdir);
READ_CHAR(documentation.htmldir);