aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/backend/ebook/e-card-types.h
diff options
context:
space:
mode:
authorNat Friedman <nat@src.gnome.org>2000-01-25 13:28:18 +0800
committerNat Friedman <nat@src.gnome.org>2000-01-25 13:28:18 +0800
commitfd4379ff20fe9c9e3b4f4028095b9659687002ff (patch)
tree78af76526262d746417a1e2007fd712f8d4ce584 /addressbook/backend/ebook/e-card-types.h
parenta315f0321395423c3c52adb4bb3063c433948dd5 (diff)
downloadgsoc2013-evolution-fd4379ff20fe9c9e3b4f4028095b9659687002ff.tar
gsoc2013-evolution-fd4379ff20fe9c9e3b4f4028095b9659687002ff.tar.gz
gsoc2013-evolution-fd4379ff20fe9c9e3b4f4028095b9659687002ff.tar.bz2
gsoc2013-evolution-fd4379ff20fe9c9e3b4f4028095b9659687002ff.tar.lz
gsoc2013-evolution-fd4379ff20fe9c9e3b4f4028095b9659687002ff.tar.xz
gsoc2013-evolution-fd4379ff20fe9c9e3b4f4028095b9659687002ff.tar.zst
gsoc2013-evolution-fd4379ff20fe9c9e3b4f4028095b9659687002ff.zip
More work.
svn path=/trunk/; revision=1626
Diffstat (limited to 'addressbook/backend/ebook/e-card-types.h')
-rw-r--r--addressbook/backend/ebook/e-card-types.h246
1 files changed, 246 insertions, 0 deletions
diff --git a/addressbook/backend/ebook/e-card-types.h b/addressbook/backend/ebook/e-card-types.h
new file mode 100644
index 0000000000..c148423b21
--- /dev/null
+++ b/addressbook/backend/ebook/e-card-types.h
@@ -0,0 +1,246 @@
+/*
+ * Authors:
+ * Arturo Espinosa
+ * Nat Friedman (nat@helixcode.com)
+ *
+ * Copyright (C) 2000 Helix Code, Inc.
+ * Copyright (C) 1999 The Free Software Foundation
+ */
+
+#ifndef __E_CARD_TYPES_H__
+#define __E_CARD_TYPES_H__
+
+typedef enum
+{
+ PROP_NONE = 0, /* Must always be the first, with value = 0. */
+ PROP_CARD = 1,
+ PROP_FNAME = 2,
+ PROP_NAME = 3,
+ PROP_PHOTO = 4,
+ PROP_BDAY = 5,
+ PROP_DELADDR_LIST = 6,
+ PROP_DELADDR = 7,
+ PROP_DELLABEL_LIST = 8,
+ PROP_DELLABEL = 9,
+ PROP_PHONE_LIST = 10,
+ PROP_PHONE = 11,
+ PROP_EMAIL_LIST = 12,
+ PROP_EMAIL = 13,
+ PROP_MAILER = 14,
+ PROP_TIMEZN = 15,
+ PROP_GEOPOS = 16,
+ PROP_TITLE = 17,
+ PROP_ROLE = 18,
+ PROP_LOGO = 19,
+ PROP_AGENT = 20,
+ PROP_ORG = 21,
+ PROP_COMMENT = 22,
+ PROP_REV = 23,
+ PROP_SOUND = 24,
+ PROP_URL = 25,
+ PROP_UID = 26,
+ PROP_VERSION = 27,
+ PROP_KEY = 28,
+ PROP_CATEGORIES = 29,
+ PROP_XTENSION_LIST = 30,
+ PROP_VALUE = 31,
+ PROP_ENCODING = 32,
+ PROP_QUOTED_PRINTABLE = 33,
+ PROP_8BIT = 34,
+ PROP_BASE64 = 35,
+ PROP_LANG = 36,
+ PROP_CHARSET = 37,
+ PROP_LAST = 38 /* Must always be the last, with the gratest value. */
+} ECardPropertyType;
+
+typedef enum
+{
+ ENC_NONE = 0,
+ ENC_BASE64 = 1,
+ ENC_QUOTED_PRINTABLE = 2,
+ ENC_8BIT = 3,
+ ENC_7BIT = 4,
+ ENC_LAST = 5
+} ECardEncodeType;
+
+typedef enum
+{
+ VAL_NONE = 0,
+ VAL_INLINE = 1,
+ VAL_CID = 2,
+ VAL_URL = 3,
+ VAL_LAST = 4
+} ECardValueType;
+
+typedef struct {
+ gboolean used;
+ ECardPropertyType type;
+ ECardEncodeType encode;
+ ECardValueType value;
+ char *charset;
+ char *lang;
+ GList *xtension;
+
+ void *user_data;
+} CardProperty;
+
+typedef struct {
+ char *name;
+ char *data;
+} CardXAttribute;
+
+typedef struct {
+ CardProperty prop;
+
+ char *name;
+ char *data;
+} ECardXProperty;
+
+typedef struct {
+ CardProperty prop;
+
+ GList *l;
+} ECardList;
+
+/* IDENTIFICATION PROPERTIES */
+
+
+typedef struct {
+ char *prefix; /* Mr. */
+ char *given; /* John */
+ char *additional; /* Quinlan */
+ char *family; /* Public */
+ char *suffix; /* Esq. */
+} ECardName;
+
+typedef struct {
+ CardProperty prop;
+
+ enum ECardPhotoType type;
+ guint size;
+ char *data;
+
+} ECardPhoto;
+
+typedef struct {
+ int year;
+ int month;
+ int day;
+} ECardDate;
+
+
+/* TELECOMMUNICATIONS ADDRESSING PROPERTIES */
+
+typedef enum {
+ PHONE_PREF = 1 << 0,
+ PHONE_WORK = 1 << 1,
+ PHONE_HOME = 1 << 2,
+ PHONE_VOICE = 1 << 3,
+ PHONE_FAX = 1 << 4,
+ PHONE_MSG = 1 << 5,
+ PHONE_CELL = 1 << 6,
+ PHONE_PAGER = 1 << 7,
+ PHONE_BBS = 1 << 8,
+ PHONE_MODEM = 1 << 9,
+ PHONE_CAR = 1 << 10,
+ PHONE_ISDN = 1 << 11,
+ PHONE_VIDEO = 1 << 12
+} ECardPhoneFlags;
+
+typedef struct {
+ ECardPhoneFlags flags;
+ char *data;
+} ECardPhone;
+
+typedef struct {
+ int sign; /* 1 or -1 */
+ int hours; /* Mexico General is at -6:00 UTC */
+ int mins; /* sign -1, hours 6, mins 0 */
+} ECardTimeZone;
+
+typedef struct {
+ CardProperty prop;
+
+ float lon;
+ float lat;
+} ECardGeoPos;
+
+
+typedef enum {
+ PHOTO_GIF, PHOTO_CGM, PHOTO_WMF, PHOTO_BMP, PHOTO_MET, PHOTO_PMB,
+ PHOTO_DIB, PHOTO_PICT, PHOTO_TIFF, PHOTO_PS, PHOTO_PDF, PHOTO_JPEG,
+ PHOTO_MPEG, PHOTO_MPEG2, PHOTO_AVI, PHOTO_QTIME
+} ECardPhotoType;
+
+/* DELIVERY ADDRESSING PROPERTIES */
+
+typedef enum {
+ ADDR_HOME = 1 << 0,
+ ADDR_WORK = 1 << 1,
+ ADDR_POSTAL = 1 << 2,
+ ADDR_PARCEL = 1 << 3,
+ ADDR_DOM = 1 << 4,
+ ADDR_INTL = 1 << 5
+} ECardAddrFlags;
+
+typedef struct {
+ ECardAddrFlags flags;
+
+ char *pobox;
+ char *ext;
+ char *street;
+ char *city;
+ char *region;
+ char *code;
+ char *country;
+} ECardAddr;
+
+
+typedef struct
+{
+ ECardAddrFlags flags;
+ char *data;
+} ECardAddrLabel;
+
+/* ORGANIZATIONAL PROPERTIES */
+
+typedef struct {
+ char *name;
+ char *unit1;
+ char *unit2;
+ char *unit3;
+ char *unit4;
+} ECardOrg;
+
+typedef enum {
+ SOUND_AIFF,
+ SOUND_PCM,
+ SOUND_WAVE,
+ SOUND_PHONETIC
+} ECardSoundType;
+
+typedef enum {
+ KEY_X509,
+ KEY_PGP
+} ECardKeyType;
+
+typedef struct {
+ int utc;
+ struct tm tm;
+} ECardRev;
+
+
+typedef struct {
+ enum SoundType type;
+ unsigned int size;
+ char *data;
+} ECardSound;
+
+typedef struct {
+ CardProperty prop;
+
+ enum KeyType type;
+ char *data;
+} ECardKey;
+
+#endif /* __E_CARD_TYPES_H__ */