aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-meeting-types.h
diff options
context:
space:
mode:
authorChristian Hilberg <chilberg@src.gnome.org>2012-11-26 19:15:58 +0800
committerMilan Crha <mcrha@redhat.com>2012-11-26 19:15:58 +0800
commit51ca0952f4b694f25cdfe774dfd8498c916101a7 (patch)
tree67c3255316274f060676dd179372a1514525a213 /calendar/gui/e-meeting-types.h
parent629a2d6a76cc7ae225706f83bd38b353b82239da (diff)
downloadgsoc2013-evolution-51ca0952f4b694f25cdfe774dfd8498c916101a7.tar
gsoc2013-evolution-51ca0952f4b694f25cdfe774dfd8498c916101a7.tar.gz
gsoc2013-evolution-51ca0952f4b694f25cdfe774dfd8498c916101a7.tar.bz2
gsoc2013-evolution-51ca0952f4b694f25cdfe774dfd8498c916101a7.tar.lz
gsoc2013-evolution-51ca0952f4b694f25cdfe774dfd8498c916101a7.tar.xz
gsoc2013-evolution-51ca0952f4b694f25cdfe774dfd8498c916101a7.tar.zst
gsoc2013-evolution-51ca0952f4b694f25cdfe774dfd8498c916101a7.zip
Bug #687974 - No displaying of extended free/busy (XFB) information
Diffstat (limited to 'calendar/gui/e-meeting-types.h')
-rw-r--r--calendar/gui/e-meeting-types.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/calendar/gui/e-meeting-types.h b/calendar/gui/e-meeting-types.h
index b8f1057962..689fe9cd30 100644
--- a/calendar/gui/e-meeting-types.h
+++ b/calendar/gui/e-meeting-types.h
@@ -26,10 +26,17 @@
#include <glib.h>
+/* Extended free/busy (XFB) vfreebusy properties */
+#define E_MEETING_FREE_BUSY_XPROP_SUMMARY "X-SUMMARY"
+#define E_MEETING_FREE_BUSY_XPROP_LOCATION "X-LOCATION"
+/* Maximum string length displayed in the XFB tooltip */
+#define E_MEETING_FREE_BUSY_XPROP_MAXLEN 200
+
G_BEGIN_DECLS
typedef struct _EMeetingTime EMeetingTime;
typedef struct _EMeetingFreeBusyPeriod EMeetingFreeBusyPeriod;
+typedef struct _EMeetingXfbData EMeetingXfbData;
/* These are used to specify whether an attendee is free or busy at a
* particular time. We'll probably replace this with a global calendar type.
@@ -55,12 +62,29 @@ struct _EMeetingTime
guint8 minute;
};
+/* This represents extended free/busy data (XFB) associated
+ * with a busy period (optional). Groupware servers like Kolab
+ * may send it as X-SUMMARY and X-LOCATION properties of vfreebusy
+ * calendar objects.
+ * See http://wiki.kolab.org/Free_Busy#Kolab_Object_Storage_Format
+ * for a reference. If we find that a vfreebusy object carries
+ * such information, we extract it and display it as a tooltip
+ * for the busy period in the meeting time selector scheduling page.
+ */
+struct _EMeetingXfbData
+{
+ /* if adding more items, adapt e_meeting_xfb_data_clear() */
+ gchar *summary;
+ gchar *location;
+};
+
/* This represents a busy period. */
struct _EMeetingFreeBusyPeriod
{
EMeetingTime start;
EMeetingTime end;
EMeetingFreeBusyType busy_type;
+ EMeetingXfbData xfb;
};
G_END_DECLS