Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
DISCONTINUED:openSUSE:11.2:Update
libexif-gtk
libexif-gtk-no-deprecated.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libexif-gtk-no-deprecated.patch of Package libexif-gtk
http://sourceforge.net/tracker/index.php?func=detail&aid=2014281&group_id=12272&atid=312272 ================================================================================ --- libexif-gtk/gtk-exif-content-list.c +++ libexif-gtk/gtk-exif-content-list.c @@ -262,6 +262,9 @@ gtk_menu_item_set_submenu (GTK_MENU_ITEM (item), smenu); /* Create a sorted list of tags. */ + /* UGLY: libexif does not provide API for "all known tags". */ + /* FIXME: List should offer only tags legal in current IFD */ + /* FIXME: Code is duplicate of gtk-exif-tag-menu:gtk_exif_tag_menu_new() */ t = n = 0; memset (tags, 0, sizeof (GtkOptions) * LIST_SIZE); while ((t < 0xffff) && (n < LIST_SIZE - 2)) { @@ -273,6 +276,15 @@ } t++; } + /* These two tags are only two known non-unique IFD spefic tags. */ + name = exif_tag_get_name_in_ifd (EXIF_TAG_GPS_LATITUDE_REF, EXIF_IFD_GPS); + tags[n].option = EXIF_TAG_GPS_LATITUDE_REF; + tags[n].name = name; + n++; + name = exif_tag_get_name_in_ifd (EXIF_TAG_GPS_LATITUDE, EXIF_IFD_GPS); + tags[n].option = EXIF_TAG_GPS_LATITUDE; + tags[n].name = name; + n++; gtk_options_sort (tags); g_assert (n > 1); @@ -428,7 +440,7 @@ gtk_list_store_append (list->priv->store, &iter); gtk_list_store_set (GTK_LIST_STORE (list->priv->store), &iter, - NAME_COLUMN, exif_tag_get_name (entry->tag), + NAME_COLUMN, exif_tag_get_name_in_ifd (entry->tag, exif_content_get_ifd(entry->parent)), VALUE_COLUMN, exif_entry_get_value (entry, buf, sizeof(buf)), ENTRY_COLUMN, entry, -1); g_signal_emit (list, signals[ENTRY_ADDED], 0, entry); --- libexif-gtk/gtk-exif-entry-ascii.c +++ libexif-gtk/gtk-exif-entry-ascii.c @@ -108,8 +108,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); widget = gtk_entry_new (); gtk_widget_show (widget); --- libexif-gtk/gtk-exif-entry-copyright.c +++ libexif-gtk/gtk-exif-entry-copyright.c @@ -143,8 +143,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); table = gtk_table_new (2, 2, FALSE); gtk_widget_show (table); --- libexif-gtk/gtk-exif-entry-date.c +++ libexif-gtk/gtk-exif-entry-date.c @@ -186,8 +186,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); c = gtk_calendar_new (); gtk_widget_show (c); --- libexif-gtk/gtk-exif-entry-exposure.c +++ libexif-gtk/gtk-exif-entry-exposure.c @@ -171,8 +171,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); hbox = gtk_hbox_new (FALSE, 5); gtk_widget_show (hbox); --- libexif-gtk/gtk-exif-entry-flash.c +++ libexif-gtk/gtk-exif-entry-flash.c @@ -113,8 +113,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); check = gtk_check_button_new_with_label ("Flash fired"); gtk_widget_show (check); --- libexif-gtk/gtk-exif-entry-generic.c +++ libexif-gtk/gtk-exif-entry-generic.c @@ -97,8 +97,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); table = gtk_table_new (2, 4, FALSE); gtk_widget_show (table); --- libexif-gtk/gtk-exif-entry-number.c +++ libexif-gtk/gtk-exif-entry-number.c @@ -218,8 +218,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); table = gtk_table_new (2, 1, FALSE); gtk_widget_show (table); --- libexif-gtk/gtk-exif-entry-option.c +++ libexif-gtk/gtk-exif-entry-option.c @@ -254,8 +254,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); hbox = gtk_hbox_new (FALSE, 5); gtk_widget_show (hbox); --- libexif-gtk/gtk-exif-entry-rational.c +++ libexif-gtk/gtk-exif-entry-rational.c @@ -220,8 +220,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); table = gtk_table_new (4, 1, FALSE); gtk_widget_show (table); --- libexif-gtk/gtk-exif-entry-user-comment.c +++ libexif-gtk/gtk-exif-entry-user-comment.c @@ -216,8 +216,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); hbox = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox); --- libexif-gtk/gtk-exif-entry-version.c +++ libexif-gtk/gtk-exif-entry-version.c @@ -235,8 +235,8 @@ entry->priv->entry = e; exif_entry_ref (e); gtk_exif_entry_construct (GTK_EXIF_ENTRY (entry), - exif_tag_get_title (e->tag), - exif_tag_get_description (e->tag)); + exif_tag_get_title_in_ifd (e->tag, exif_content_get_ifd(e->parent)), + exif_tag_get_description_in_ifd (e->tag, exif_content_get_ifd(e->parent))); hbox = gtk_hbox_new (FALSE, 5); gtk_widget_show (hbox); --- libexif-gtk/gtk-exif-tag-menu.c +++ libexif-gtk/gtk-exif-tag-menu.c @@ -120,10 +121,13 @@ menu = g_object_new (GTK_EXIF_TYPE_TAG_MENU, NULL); + /* UGLY: libexif does not provide API for "all known tags". */ + /* FIXME: List should offer only tags legal in current IFD */ + /* FIXME: Code is duplicate of gtk-exif-content-list:on_button_press_event() */ t = i = 0; memset (tags, 0, sizeof (GtkOptions) * LIST_SIZE); while ((t < 0xffff) && (i < LIST_SIZE - 1)) { - name = exif_tag_get_name (t); + name = exif_tag_get_name (t); /* FIXME: needs rewrite */ if (name) { tags[i].option = t; tags[i].name = name; @@ -131,6 +135,15 @@ } t++; } + /* These two tags are only two known non-unique IFD spefic tags. */ + name = exif_tag_get_name_in_ifd (EXIF_TAG_GPS_LATITUDE_REF, EXIF_IFD_GPS); + tags[t].option = EXIF_TAG_GPS_LATITUDE_REF; + tags[t].name = name; + t++; + name = exif_tag_get_name_in_ifd (EXIF_TAG_GPS_LATITUDE, EXIF_IFD_GPS); + tags[t].option = EXIF_TAG_GPS_LATITUDE; + tags[t].name = name; + t++; gtk_menu_option_construct (GTK_MENU_OPTION (menu), tags); g_signal_connect (GTK_OBJECT (menu), "option_selected",
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor