[gimp/wip/wormnest/iptc-multiple-keys: 13/14] plug-ins: fix metadata-editor not saving Xmp.photoshop.Urgency and Xmp.xmpRights.Marked.
- From: Jehan <jehanp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp/wip/wormnest/iptc-multiple-keys: 13/14] plug-ins: fix metadata-editor not saving Xmp.photoshop.Urgency and Xmp.xmpRights.Marked.
- Date: Thu, 19 Nov 2020 23:25:29 +0000 (UTC)
commit d004305019da3496ac50942f50fdfa81b4abf370
Author: Jacob Boerema <jgboerema gmail com>
Date: Thu Nov 19 16:48:13 2020 -0500
plug-ins: fix metadata-editor not saving Xmp.photoshop.Urgency and Xmp.xmpRights.Marked.
The values of Description tab - Copyright Status and IPTC tab - Urgency were not saved.
We are fixing that with this commit. Urgency is also saved to Iptc.Application2.Urgency.
plug-ins/metadata/metadata-editor.c | 51 ++++++++++++++++++++++++++++++++++++-
1 file changed, 50 insertions(+), 1 deletion(-)
---
diff --git a/plug-ins/metadata/metadata-editor.c b/plug-ins/metadata/metadata-editor.c
index 1091bca0f4..e5eccd9e24 100644
--- a/plug-ins/metadata/metadata-editor.c
+++ b/plug-ins/metadata/metadata-editor.c
@@ -5492,7 +5492,56 @@ metadata_editor_write_callback (GtkWidget *dialog,
combo = GTK_COMBO_BOX_TEXT (object);
value = gtk_combo_box_get_active (GTK_COMBO_BOX (combo));
- if (! strcmp ("Xmp.xmp.Rating", default_metadata_tags[i].tag))
+ if (! strcmp ("Xmp.photoshop.Urgency", default_metadata_tags[i].tag))
+ {
+ /* IPTC tab - Urgency */
+ if (value == 0)
+ {
+ gexiv2_metadata_clear_tag (GEXIV2_METADATA (g_metadata),
+ default_metadata_tags[i].tag);
+ gexiv2_metadata_clear_tag (GEXIV2_METADATA (g_metadata),
+ "Iptc.Application2.Urgency");
+ }
+ else
+ {
+ gchar *save;
+
+ save = g_strdup_printf ("%d", value);
+
+ gexiv2_metadata_set_tag_string (GEXIV2_METADATA (g_metadata),
+ default_metadata_tags[i].tag,
+ save);
+ gexiv2_metadata_set_tag_string (GEXIV2_METADATA (g_metadata),
+ "Iptc.Application2.Urgency",
+ save);
+ g_free (save);
+ }
+ }
+ else if (! strcmp ("Xmp.xmpRights.Marked",
+ default_metadata_tags[i].tag))
+ {
+ /* Description tab - Copyright Status */
+ if (value == 0)
+ {
+ gexiv2_metadata_clear_tag (GEXIV2_METADATA (g_metadata),
+ default_metadata_tags[i].tag);
+ }
+ else
+ {
+ gchar *save_value;
+
+ if (value == 1)
+ save_value = g_strdup_printf ("%s", "True");
+ else /* (value == 2) */
+ save_value = g_strdup_printf ("%s", "False");
+
+ gexiv2_metadata_set_tag_string (GEXIV2_METADATA (g_metadata),
+ default_metadata_tags[i].tag,
+ save_value);
+ g_free (save_value);
+ }
+ }
+ else if (! strcmp ("Xmp.xmp.Rating", default_metadata_tags[i].tag))
{
if (value == 0)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]