changeset 1597:6657e7cf446e

added some structure to the metadata preferences dialog
author nadvornik
date Sat, 09 May 2009 17:02:35 +0000
parents b88069021d25
children 7de9a6897060
files src/preferences.c
diffstat 1 files changed, 34 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/src/preferences.c	Thu May 07 20:24:35 2009 +0000
+++ b/src/preferences.c	Sat May 09 17:02:35 2009 +0000
@@ -1323,21 +1323,36 @@
 	GtkWidget *hbox;
 	GtkWidget *group;
 	GtkWidget *ct_button;
+	GtkWidget *label;
+	gchar *text;
 
 	vbox = scrolled_notebook_page(notebook, _("Metadata"));
 
-	group = pref_group_new(vbox, FALSE, _("Metadata"), GTK_ORIENTATION_VERTICAL);
+#ifndef HAVE_EXIV2
+	gtk_widget_set_sensitive(vbox, FALSE);
+#endif
 
-	pref_checkbox_new_int(group, _("Store metadata in '.metadata' folder, local to image folder (non-standard)"),
+	group = pref_group_new(vbox, FALSE, _("Metadata writing process"), GTK_ORIENTATION_VERTICAL);
+	label = pref_label_new(group, _("Metadata are written in the following order. The process ends after first success."));
+	gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
+
+	ct_button = pref_checkbox_new_int(group, _("1) Save metadata in image files, resp. sidecar files, according to the XMP standard"),
+			      options->metadata.save_in_image_file, &c_options->metadata.save_in_image_file);
+
+	pref_checkbox_new_int(group, _("2) Save metadata in '.metadata' folder, local to image folder (non-standard)"),
 			      options->metadata.enable_metadata_dirs, &c_options->metadata.enable_metadata_dirs);
 
-	ct_button = pref_checkbox_new_int(group, _("Store keywords and comments as XMP tags in image files (standard)"),
-			      options->metadata.save_in_image_file, &c_options->metadata.save_in_image_file);
+	text = g_strdup_printf(_("3) Save metadata in Geeqie private directory '%s'"), get_metadata_cache_dir());
+	label = pref_label_new(group, text);
+	gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
+	g_free(text);
+
+	group = pref_group_new(vbox, FALSE, _("Step 1: Write to image files"), GTK_ORIENTATION_VERTICAL);
 
 	hbox = pref_box_new(group, FALSE, GTK_ORIENTATION_VERTICAL, PREF_PAD_SPACE);
 	pref_checkbox_link_sensitivity(ct_button, hbox);
 
-	pref_checkbox_new_int(hbox, _("Store keywords and comments also in legacy IPTC tags"),
+	pref_checkbox_new_int(hbox, _("Store metadata also in legacy IPTC tags (converted according to IPTC4XMP standard)"),
 			      options->metadata.save_legacy_IPTC, &c_options->metadata.save_legacy_IPTC);
 
 	pref_checkbox_new_int(hbox, _("Warn if the image files are unwritable"),
@@ -1346,12 +1361,24 @@
 	pref_checkbox_new_int(hbox, _("Ask before writing to image files"),
 			      options->metadata.confirm_write, &c_options->metadata.confirm_write);
 
-	pref_checkbox_new_int(group, _("Save metadata in GQview legacy metadata format"),
+	group = pref_group_new(vbox, FALSE, _("Step 2 and 3: write to Geeqie private files"), GTK_ORIENTATION_VERTICAL);
+
+	pref_checkbox_new_int(group, _("Use GQview legacy metadata format (supports only keywords and comments) instead of XMP"),
 			      options->metadata.save_legacy_format, &c_options->metadata.save_legacy_format);
 
-	pref_checkbox_new_int(group, _("Write the same keywords and comment to all files in a group"),
+
+	group = pref_group_new(vbox, FALSE, _("Miscellaneous"), GTK_ORIENTATION_VERTICAL);
+	pref_checkbox_new_int(group, _("Write the same description tags (keywords, comment, etc.) to all files in a group"),
 			      options->metadata.sync_grouped_files, &c_options->metadata.sync_grouped_files);
 
+	pref_checkbox_new_int(group, _("Allow keywords to differ only in case"),
+			      options->metadata.keywords_case_sensitive, &c_options->metadata.keywords_case_sensitive);
+
+	pref_checkbox_new_int(group, _("Write altered image orientation to the metadata"),
+			      options->metadata.write_orientation, &c_options->metadata.write_orientation);
+
+	group = pref_group_new(vbox, FALSE, _("Auto-save options"), GTK_ORIENTATION_VERTICAL);
+
 	ct_button = pref_checkbox_new_int(group, _("Write metadata after timeout"),
 			      options->metadata.confirm_after_timeout, &c_options->metadata.confirm_after_timeout);
 
@@ -1366,12 +1393,6 @@
 
 	pref_checkbox_new_int(group, _("Write metadata on directory change"),
 			      options->metadata.confirm_on_dir_change, &c_options->metadata.confirm_on_dir_change);
-
-	pref_checkbox_new_int(group, _("Allow keywords to differ only in case"),
-			      options->metadata.keywords_case_sensitive, &c_options->metadata.keywords_case_sensitive);
-
-	pref_checkbox_new_int(group, _("Write altered image orientation to the metadata"),
-			      options->metadata.write_orientation, &c_options->metadata.write_orientation);
 }
 
 /* metadata tab */