aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/itip-formatter/itip-formatter.c
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2010-02-12 20:15:26 +0800
committerMilan Crha <mcrha@redhat.com>2010-02-12 20:15:26 +0800
commit35b167f240259c09102541f680ed645918cd5e0d (patch)
tree46b8ffe2bcf0f0018eda02fd8683667b89387da8 /plugins/itip-formatter/itip-formatter.c
parentc3c7e793a31d20d3b877ea524547bcdcaed7d595 (diff)
downloadgsoc2013-evolution-35b167f240259c09102541f680ed645918cd5e0d.tar
gsoc2013-evolution-35b167f240259c09102541f680ed645918cd5e0d.tar.gz
gsoc2013-evolution-35b167f240259c09102541f680ed645918cd5e0d.tar.bz2
gsoc2013-evolution-35b167f240259c09102541f680ed645918cd5e0d.tar.lz
gsoc2013-evolution-35b167f240259c09102541f680ed645918cd5e0d.tar.xz
gsoc2013-evolution-35b167f240259c09102541f680ed645918cd5e0d.tar.zst
gsoc2013-evolution-35b167f240259c09102541f680ed645918cd5e0d.zip
[itip-formatter] Show reason of failed calendar open
Diffstat (limited to 'plugins/itip-formatter/itip-formatter.c')
-rw-r--r--plugins/itip-formatter/itip-formatter.c29
1 files changed, 21 insertions, 8 deletions
diff --git a/plugins/itip-formatter/itip-formatter.c b/plugins/itip-formatter/itip-formatter.c
index e900cce920..526af07b1a 100644
--- a/plugins/itip-formatter/itip-formatter.c
+++ b/plugins/itip-formatter/itip-formatter.c
@@ -476,6 +476,23 @@ set_buttons_sensitive (struct _itip_puri *pitip)
}
static void
+add_failed_to_load_msg (ItipView *view, ESource *source, ECalendarStatus status)
+{
+ gchar *msg, *msg_full;
+
+ g_return_if_fail (view != NULL);
+ g_return_if_fail (source != NULL);
+
+ msg = g_strdup_printf (_("Failed to load the calendar '%s'"), e_source_peek_name (source));
+ msg_full = g_strconcat (msg, " (", e_cal_get_error_message (status), ")", NULL);
+
+ itip_view_add_lower_info_item (view, ITIP_VIEW_INFO_ITEM_TYPE_WARNING, msg_full);
+
+ g_free (msg_full);
+ g_free (msg);
+}
+
+static void
cal_opened_cb (ECal *ecal, ECalendarStatus status, gpointer data)
{
struct _itip_puri *pitip = data;
@@ -489,10 +506,8 @@ cal_opened_cb (ECal *ecal, ECalendarStatus status, gpointer data)
if (status != E_CALENDAR_STATUS_OK) {
d(printf ("Failed opening itip formatter calendar '%s' during non-search opening\n", e_source_peek_name (source)));
- itip_view_add_lower_info_item_printf (ITIP_VIEW (pitip->view),
- ITIP_VIEW_INFO_ITEM_TYPE_WARNING,
- _("Failed to load the calendar '%s'"),
- e_source_peek_name (source));
+
+ add_failed_to_load_msg (ITIP_VIEW (pitip->view), source, status);
if (pitip->current_ecal == ecal) {
pitip->current_ecal = NULL;
@@ -614,10 +629,8 @@ find_cal_opened_cb (ECal *ecal, ECalendarStatus status, gpointer data)
* to find the item, this won't be cleared but the
* selector might be shown */
d(printf ("Failed opening itip formatter calendar '%s' during search opening... ", e_source_peek_name (source)));
- itip_view_add_lower_info_item_printf (ITIP_VIEW (pitip->view),
- ITIP_VIEW_INFO_ITEM_TYPE_WARNING,
- _("Failed to load the calendar '%s'"),
- e_source_peek_name (source));
+ add_failed_to_load_msg (ITIP_VIEW (pitip->view), source, status);
+
if (pitip->current_ecal == ecal) {
pitip->current_ecal = NULL;
itip_view_set_buttons_sensitive (ITIP_VIEW (pitip->view), FALSE);