diff options
author | Arturo Espinosa <unammx@src.gnome.org> | 1998-04-17 13:08:55 +0800 |
---|---|---|
committer | Arturo Espinosa <unammx@src.gnome.org> | 1998-04-17 13:08:55 +0800 |
commit | ad0347d16bfd10f5f6b0783d7030cac420c4362a (patch) | |
tree | 4b0a09d1b133334ce8fee945e8442417ed1268b5 /calendar/cal-util | |
parent | 541c3a7a73e084b5ebd82aae7c3fc1f3ba4f0b72 (diff) | |
download | gsoc2013-evolution-ad0347d16bfd10f5f6b0783d7030cac420c4362a.tar gsoc2013-evolution-ad0347d16bfd10f5f6b0783d7030cac420c4362a.tar.gz gsoc2013-evolution-ad0347d16bfd10f5f6b0783d7030cac420c4362a.tar.bz2 gsoc2013-evolution-ad0347d16bfd10f5f6b0783d7030cac420c4362a.tar.lz gsoc2013-evolution-ad0347d16bfd10f5f6b0783d7030cac420c4362a.tar.xz gsoc2013-evolution-ad0347d16bfd10f5f6b0783d7030cac420c4362a.tar.zst gsoc2013-evolution-ad0347d16bfd10f5f6b0783d7030cac420c4362a.zip |
Remove deadly excessive abuse of encapsulation -mig
svn path=/trunk/; revision=147
Diffstat (limited to 'calendar/cal-util')
-rw-r--r-- | calendar/cal-util/calobj.c | 16 | ||||
-rw-r--r-- | calendar/cal-util/calobj.h | 7 |
2 files changed, 11 insertions, 12 deletions
diff --git a/calendar/cal-util/calobj.c b/calendar/cal-util/calobj.c index 89bfc94540..c2fadad4d7 100644 --- a/calendar/cal-util/calobj.c +++ b/calendar/cal-util/calobj.c @@ -680,7 +680,7 @@ ical_object_to_vobject (iCalObject *ical) } void -ical_foreach (GList *events, iCalObjectFn fn, void *closure) +ical_foreach (GList *events, calendarfn fn, void *closure) { for (; events; events = events->next){ iCalObject *ical = events->data; @@ -690,13 +690,13 @@ ical_foreach (GList *events, iCalObjectFn fn, void *closure) } void -ical_object_set_user_data (iCalObject *ical, void *user_data) +ical_object_generate_events (iCalObject *ico, time_t start, time_t end, calendarfn cb, void *closure) { - ical->user_data = user_data; -} + if (!ico->recur){ + if ((start <= ico->dtstart) && (ico->dtend <= end)) + (*cb)(ico, ico->dtstart, ico->dtend, closure); + return; + } -void * -ical_object_get_user_data (iCalObject *ical) -{ - return ical->user_data; + /* The event has a recurrence rule */ } diff --git a/calendar/cal-util/calobj.h b/calendar/cal-util/calobj.h index 9b69eefd5f..ab9d061956 100644 --- a/calendar/cal-util/calobj.h +++ b/calendar/cal-util/calobj.h @@ -157,16 +157,15 @@ typedef struct { } iCalObject; /* The callback for the recurrence generator */ -typedef void (*iCalObjectFn)(iCalObject *, time_t, time_t, void *); +typedef void (*calendarfn)(iCalObject *, time_t, time_t, void *); iCalObject *ical_new (char *comment, char *organizer, char *summary); iCalObject *ical_object_new (void); void ical_object_destroy (iCalObject *ico); iCalObject *ical_object_create_from_vobject (VObject *obj, const char *object_name); VObject *ical_object_to_vobject (iCalObject *ical); -void ical_foreach (GList *events, iCalObjectFn fn, void *closure); -void ical_object_set_user_data (iCalObject *ical, void *user_data); -void *ical_object_get_user_data (iCalObject *ical); +void ical_foreach (GList *events, calendarfn fn, void *closure); +void ical_object_generate_events (iCalObject *ico, time_t start, time_t end, calendarfn cb, void *closure); END_GNOME_DECLS |