| Index: libexif/sources/libexif/canon/mnote-canon-tag.c
|
| ===================================================================
|
| --- libexif/sources/libexif/canon/mnote-canon-tag.c (revision 0)
|
| +++ libexif/sources/libexif/canon/mnote-canon-tag.c (revision 0)
|
| @@ -0,0 +1,205 @@
|
| +/* mnote-canon-tag.c
|
| + *
|
| + * Copyright (c) 2002 Lutz Mueller <lutz@users.sourceforge.net>
|
| + *
|
| + * This library is free software; you can redistribute it and/or
|
| + * modify it under the terms of the GNU Lesser General Public
|
| + * License as published by the Free Software Foundation; either
|
| + * version 2 of the License, or (at your option) any later version.
|
| + *
|
| + * This library is distributed in the hope that it will be useful,
|
| + * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
| + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
| + * Lesser General Public License for more details.
|
| + *
|
| + * You should have received a copy of the GNU Lesser General Public
|
| + * License along with this library; if not, write to the
|
| + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
| + * Boston, MA 02110-1301 USA.
|
| + */
|
| +
|
| +#include <config.h>
|
| +#include "mnote-canon-tag.h"
|
| +
|
| +#include <stdlib.h>
|
| +
|
| +#include <libexif/i18n.h>
|
| +
|
| +static const struct {
|
| + MnoteCanonTag tag;
|
| + const char *name;
|
| + const char *title;
|
| + const char *description;
|
| +} table[] = {
|
| +#ifndef NO_VERBOSE_TAG_STRINGS
|
| + {MNOTE_CANON_TAG_SETTINGS_1, "Settings1", N_("Settings (First Part)"), ""},
|
| + {MNOTE_CANON_TAG_FOCAL_LENGTH, "FocalLength", N_("Focal Length"), ""},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, "Settings2", N_("Settings (Second Part)"), ""},
|
| + {MNOTE_CANON_TAG_PANORAMA, "Panorama", N_("Panorama"), ""},
|
| + {MNOTE_CANON_TAG_IMAGE_TYPE, "ImageType", N_("Image Type"), ""},
|
| + {MNOTE_CANON_TAG_FIRMWARE, "FirmwareVersion", N_("Firmware Version"), ""},
|
| + {MNOTE_CANON_TAG_IMAGE_NUMBER, "ImageNumber", N_("Image Number"), ""},
|
| + {MNOTE_CANON_TAG_OWNER, "OwnerName", N_("Owner Name"), ""},
|
| + {MNOTE_CANON_TAG_COLOR_INFORMATION, "ColorInformation", N_("Color Information"), ""},
|
| + {MNOTE_CANON_TAG_SERIAL_NUMBER, "SerialNumber", N_("Serial Number"), ""},
|
| + {MNOTE_CANON_TAG_CUSTOM_FUNCS, "CustomFunctions", N_("Custom Functions"), ""},
|
| +#endif
|
| + {0, NULL, NULL, NULL}
|
| +};
|
| +
|
| +static const struct {
|
| + MnoteCanonTag tag;
|
| + unsigned int subtag;
|
| + const char *name;
|
| +} table_sub[] = {
|
| +#ifndef NO_VERBOSE_TAG_STRINGS
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 0, N_("Macro Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 1, N_("Self-timer")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 2, N_("Quality")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 3, N_("Flash Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 4, N_("Drive Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 6, N_("Focus Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 8, N_("Record Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 9, N_("Image Size")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 10, N_("Easy Shooting Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 11, N_("Digital Zoom")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 12, N_("Contrast")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 13, N_("Saturation")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 14, N_("Sharpness")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 15, N_("ISO")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 16, N_("Metering Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 17, N_("Focus Range")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 18, N_("AF Point")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 19, N_("Exposure Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 21, N_("Lens Type")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 22, N_("Long Focal Length of Lens")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 23, N_("Short Focal Length of Lens")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 24, N_("Focal Units per mm")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 25, N_("Maximal Aperture")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 26, N_("Minimal Aperture")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 27, N_("Flash Activity")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 28, N_("Flash Details")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 31, N_("Focus Mode")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 32, N_("AE Setting")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 33, N_("Image Stabilization")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 34, N_("Display Aperture")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 35, N_("Zoom Source Width")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 36, N_("Zoom Target Width")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 39, N_("Photo Effect")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 40, N_("Manual Flash Output")},
|
| + {MNOTE_CANON_TAG_SETTINGS_1, 41, N_("Color Tone")},
|
| + {MNOTE_CANON_TAG_FOCAL_LENGTH, 0, N_("Focal Type")},
|
| + {MNOTE_CANON_TAG_FOCAL_LENGTH, 1, N_("Focal Length")},
|
| + {MNOTE_CANON_TAG_FOCAL_LENGTH, 2, N_("Focal Plane X Size")},
|
| + {MNOTE_CANON_TAG_FOCAL_LENGTH, 3, N_("Focal Plane Y Size")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 0, N_("Auto ISO")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 1, N_("Shot ISO")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 2, N_("Measured EV")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 3, N_("Target Aperture")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 4, N_("Target Exposure Time")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 5, N_("Exposure Compensation")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 6, N_("White Balance")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 7, N_("Slow Shutter")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 8, N_("Sequence Number")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 12, N_("Flash Guide Number")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 13, N_("AF Point")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 14, N_("Flash Exposure Compensation")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 15, N_("AE Bracketing")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 16, N_("AE Bracket Value")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 18, N_("Focus Distance Upper")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 19, N_("Focus Distance Lower")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 20, N_("FNumber")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 21, N_("Exposure Time")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 23, N_("Bulb Duration")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 25, N_("Camera Type")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 26, N_("Auto Rotate")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 27, N_("ND Filter")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 28, N_("Self-timer")},
|
| + {MNOTE_CANON_TAG_SETTINGS_2, 32, N_("Manual Flash Output")},
|
| + {MNOTE_CANON_TAG_PANORAMA, 2, N_("Panorama Frame")},
|
| + {MNOTE_CANON_TAG_PANORAMA, 5, N_("Panorama Direction")},
|
| + {MNOTE_CANON_TAG_COLOR_INFORMATION, 0, N_("Tone Curve")},
|
| + {MNOTE_CANON_TAG_COLOR_INFORMATION, 2, N_("Sharpness Frequency")},
|
| + {MNOTE_CANON_TAG_COLOR_INFORMATION, 7, N_("White Balance")},
|
| + {MNOTE_CANON_TAG_COLOR_INFORMATION, 9, N_("Picture Style")},
|
| +#endif
|
| + {0, 0, NULL}
|
| +};
|
| +
|
| +const char *
|
| +mnote_canon_tag_get_name (MnoteCanonTag t)
|
| +{
|
| + unsigned int i;
|
| +
|
| + for (i = 0; i < sizeof (table) / sizeof (table[0]); i++)
|
| + if (table[i].tag == t) return table[i].name; /* do not translate */
|
| + return NULL;
|
| +}
|
| +
|
| +const char *
|
| +mnote_canon_tag_get_name_sub (MnoteCanonTag t, unsigned int s, ExifDataOption o)
|
| +{
|
| + unsigned int i;
|
| + int tag_found = 0;
|
| +
|
| + for (i = 0; i < sizeof (table_sub) / sizeof (table_sub[0]); i++) {
|
| + if (table_sub[i].tag == t) {
|
| + if (table_sub[i].subtag == s)
|
| + return table_sub[i].name;
|
| + tag_found = 1;
|
| + }
|
| + }
|
| + if (!tag_found || !(o & EXIF_DATA_OPTION_IGNORE_UNKNOWN_TAGS))
|
| + return mnote_canon_tag_get_name (t);
|
| + else
|
| + return NULL;
|
| +}
|
| +
|
| +const char *
|
| +mnote_canon_tag_get_title (MnoteCanonTag t)
|
| +{
|
| + unsigned int i;
|
| +
|
| +#if defined(BIND_TEXTDOMAIN)
|
| + bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
|
| +#endif
|
| + for (i = 0; i < sizeof (table) / sizeof (table[0]); i++)
|
| + if (table[i].tag == t) return (_(table[i].title));
|
| + return NULL;
|
| +}
|
| +
|
| +const char *
|
| +mnote_canon_tag_get_title_sub (MnoteCanonTag t, unsigned int s, ExifDataOption o)
|
| +{
|
| + unsigned int i;
|
| + int tag_found = 0;
|
| +
|
| + for (i = 0; i < sizeof (table_sub) / sizeof (table_sub[0]); i++) {
|
| + if (table_sub[i].tag == t) {
|
| + if (table_sub[i].subtag == s)
|
| + return _(table_sub[i].name);
|
| + tag_found = 1;
|
| + }
|
| + }
|
| + if (!tag_found || !(o & EXIF_DATA_OPTION_IGNORE_UNKNOWN_TAGS))
|
| + return mnote_canon_tag_get_title (t);
|
| + else
|
| + return NULL;
|
| +}
|
| +
|
| +const char *
|
| +mnote_canon_tag_get_description (MnoteCanonTag t)
|
| +{
|
| + unsigned int i;
|
| +
|
| + for (i = 0; i < sizeof (table) / sizeof (table[0]); i++)
|
| + if (table[i].tag == t) {
|
| + if (!*table[i].description)
|
| + return "";
|
| +#if defined(BIND_TEXTDOMAIN)
|
| + bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
|
| +#endif
|
| + return _(table[i].description);
|
| + }
|
| + return NULL;
|
| +}
|
|
|
| Property changes on: libexif/sources/libexif/canon/mnote-canon-tag.c
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|