diff options
Diffstat (limited to 'calendar')
-rw-r--r-- | calendar/ChangeLog | 6 | ||||
-rw-r--r-- | calendar/gui/gnome-cal.c | 27 |
2 files changed, 25 insertions, 8 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 001d5dd8bb..4e0aa71578 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,9 @@ +2002-09-09 Rodrigo Moya <rodrigo@ximian.com> + + * gui/gnome-cal.c (client_cal_opened_cb): display status messages for + all operations we make, so that when using remote slow backends, so + that users have always indication of what's happening. + 2002-09-06 JP Rosevear <jpr@ximian.com> * gui/gnome-cal.c (gnome_calendar_edit_object): kill warning diff --git a/calendar/gui/gnome-cal.c b/calendar/gui/gnome-cal.c index cdcb323e4a..1d694e7eae 100644 --- a/calendar/gui/gnome-cal.c +++ b/calendar/gui/gnome-cal.c @@ -1554,18 +1554,11 @@ client_cal_opened_cb (CalClient *client, CalClientOpenStatus status, gpointer da { GnomeCalendar *gcal; GnomeCalendarPrivate *priv; + char *msg; gcal = GNOME_CALENDAR (data); priv = gcal->priv; - if (client == priv->client) { - e_week_view_set_status_message (E_WEEK_VIEW (priv->week_view), NULL); - } - else if (client == priv->task_pad_client) { - calendar_model_set_status_message ( - e_calendar_table_get_model (E_CALENDAR_TABLE (priv->todo)), NULL); - } - switch (status) { case CAL_CLIENT_OPEN_SUCCESS: /* If this is the main CalClient, update the Date Navigator. */ @@ -1579,6 +1572,16 @@ client_cal_opened_cb (CalClient *client, CalClientOpenStatus status, gpointer da } /* add the alarms for this client */ + msg = g_strdup_printf (_("Adding alarms for %s"), cal_client_get_uri (client)); + if (client == priv->client) { + e_week_view_set_status_message (E_WEEK_VIEW (priv->week_view), msg); + } + else if (client == priv->task_pad_client) { + calendar_model_set_status_message ( + e_calendar_table_get_model (E_CALENDAR_TABLE (priv->todo)), msg); + } + g_free (msg); + add_alarms (cal_client_get_uri (client)); break; @@ -1603,6 +1606,14 @@ client_cal_opened_cb (CalClient *client, CalClientOpenStatus status, gpointer da g_assert_not_reached (); return; } + + if (client == priv->client) { + e_week_view_set_status_message (E_WEEK_VIEW (priv->week_view), NULL); + } + else if (client == priv->task_pad_client) { + calendar_model_set_status_message ( + e_calendar_table_get_model (E_CALENDAR_TABLE (priv->todo)), NULL); + } } /* Duplicates an array of categories */ |