aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/alarm-notify
diff options
context:
space:
mode:
authorJP Rosevear <jpr@novell.com>2004-05-18 22:14:14 +0800
committerJP Rosevear <jpr@src.gnome.org>2004-05-18 22:14:14 +0800
commit12e3ecf07f633d0e496b4e35115b194fc39feab4 (patch)
tree5663a33951b9d807206ac1691b11cb6ed18e35dc /calendar/gui/alarm-notify
parent8f8ecd25e13165724e6e4cc71af09a383d44d727 (diff)
downloadgsoc2013-evolution-12e3ecf07f633d0e496b4e35115b194fc39feab4.tar
gsoc2013-evolution-12e3ecf07f633d0e496b4e35115b194fc39feab4.tar.gz
gsoc2013-evolution-12e3ecf07f633d0e496b4e35115b194fc39feab4.tar.bz2
gsoc2013-evolution-12e3ecf07f633d0e496b4e35115b194fc39feab4.tar.lz
gsoc2013-evolution-12e3ecf07f633d0e496b4e35115b194fc39feab4.tar.xz
gsoc2013-evolution-12e3ecf07f633d0e496b4e35115b194fc39feab4.tar.zst
gsoc2013-evolution-12e3ecf07f633d0e496b4e35115b194fc39feab4.zip
add arg
2004-05-18 JP Rosevear <jpr@novell.com> * idl/evolution-calendar.idl: add arg * gui/alarm-notify/alarm-queue.c (edit_component): send a mode type * gui/alarm-notify/alarm-notify.c: add fixme note * gui/comp-editor-factory.c (impl_editExisting): take a editor mode and twist it into a source type (impl_editNew): ditto (open_client): take a source type for creating the client (lookup_open_client): ditto svn path=/trunk/; revision=25959
Diffstat (limited to 'calendar/gui/alarm-notify')
-rw-r--r--calendar/gui/alarm-notify/alarm-notify.c2
-rw-r--r--calendar/gui/alarm-notify/alarm-queue.c14
2 files changed, 14 insertions, 2 deletions
diff --git a/calendar/gui/alarm-notify/alarm-notify.c b/calendar/gui/alarm-notify/alarm-notify.c
index 2413e3fbb7..0c3231aaae 100644
--- a/calendar/gui/alarm-notify/alarm-notify.c
+++ b/calendar/gui/alarm-notify/alarm-notify.c
@@ -36,6 +36,8 @@
/* Private part of the AlarmNotify structure */
struct _AlarmNotifyPrivate {
/* Mapping from EUri's to LoadedClient structures */
+ /* FIXME do we need per source type uri hashes? or perhaps we
+ just need to hash based on source */
GHashTable *uri_client_hash;
ESourceList *source_lists [E_CAL_SOURCE_TYPE_LAST];
diff --git a/calendar/gui/alarm-notify/alarm-queue.c b/calendar/gui/alarm-notify/alarm-queue.c
index 1258324d0e..350ace3cd0 100644
--- a/calendar/gui/alarm-notify/alarm-queue.c
+++ b/calendar/gui/alarm-notify/alarm-queue.c
@@ -649,15 +649,17 @@ edit_component (ECal *client, ECalComponent *comp)
{
const char *uid;
const char *uri;
+ ECalSourceType source_type;
CORBA_Environment ev;
GNOME_Evolution_Calendar_CompEditorFactory factory;
+ GNOME_Evolution_Calendar_CompEditorFactory_CompEditorMode corba_type;
e_cal_component_get_uid (comp, &uid);
uri = e_cal_get_uri (client);
+ source_type = e_cal_get_source_type (client);
/* Get the factory */
-
CORBA_exception_init (&ev);
factory = bonobo_activation_activate_from_id ("OAFIID:GNOME_Evolution_Calendar_CompEditorFactory:" BASE_VERSION,
0, NULL, &ev);
@@ -669,7 +671,15 @@ edit_component (ECal *client, ECalComponent *comp)
}
/* Edit the component */
- GNOME_Evolution_Calendar_CompEditorFactory_editExisting (factory, uri, (char *) uid, &ev);
+ switch (source_type) {
+ case E_CAL_SOURCE_TYPE_TODO:
+ corba_type = GNOME_Evolution_Calendar_CompEditorFactory_EDITOR_MODE_TODO;
+ break;
+ default:
+ corba_type = GNOME_Evolution_Calendar_CompEditorFactory_EDITOR_MODE_EVENT;
+ }
+
+ GNOME_Evolution_Calendar_CompEditorFactory_editExisting (factory, uri, (char *) uid, corba_type, &ev);
if (BONOBO_EX (&ev))
g_message (G_STRLOC ": Exception while editing the component");