From 2438470fd3a3c61a0d360ed14d564cb73036b811 Mon Sep 17 00:00:00 2001
From: Lukas Fleischer <calcurse@cryptocrack.de>
Date: Sat, 16 Apr 2011 13:36:07 +0200
Subject: Add recur_apoint_inday() and recur_event_inday().

To be used with llist_fn_match_t callbacks later.

I feel a bit ill adding those functions. This definitely is a hack.
Ultimately, there should be some generic recur_item_inday() function
that accepts both recurring apointments and events (or some wrapper
structure) instead of parameter galeere. This is not the right place to
fix that tho.

Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
---
 src/calcurse.h |  2 ++
 src/recur.c    | 14 ++++++++++++++
 2 files changed, 16 insertions(+)

(limited to 'src')

diff --git a/src/calcurse.h b/src/calcurse.h
index d97dc6b..4981a59 100644
--- a/src/calcurse.h
+++ b/src/calcurse.h
@@ -790,6 +790,8 @@ struct recur_event  *recur_event_scan (FILE *, struct tm, int, char,
 void                 recur_save_data (FILE *);
 unsigned             recur_item_inday (long, struct days *, int, int,
                                        long, long);
+unsigned             recur_apoint_inday(struct recur_apoint *, long);
+unsigned             recur_event_inday(struct recur_event *, long);
 void                 recur_event_erase (long, unsigned, unsigned,
                                         enum eraseflg);
 void                 recur_apoint_erase (long, unsigned, unsigned,
diff --git a/src/recur.c b/src/recur.c
index 2a08cd1..c781c01 100644
--- a/src/recur.c
+++ b/src/recur.c
@@ -728,6 +728,20 @@ recur_item_inday (long item_start, struct days *item_exc, int rpt_type,
     return (0);
 }
 
+unsigned
+recur_apoint_inday(struct recur_apoint *rapt, long day_start)
+{
+  return recur_item_inday (rapt->start, rapt->exc, rapt->rpt->type,
+                           rapt->rpt->freq, rapt->rpt->until, day_start);
+}
+
+unsigned
+recur_event_inday(struct recur_event *rev, long day_start)
+{
+  return recur_item_inday (rev->day, rev->exc, rev->rpt->type, rev->rpt->freq,
+                           rev->rpt->until, day_start);
+}
+
 /*
  * Delete a recurrent event from the list (if delete_whole is not null),
  * or delete only one occurence of the recurrent event.
-- 
cgit v1.2.3-70-g09d2