X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=cals%2Fdummy.c;h=1926bdbff99f299fdf2fc4e69bd9ef86d7b37628;hb=8565e093588ec2a665a430c7be4f4b440537df84;hp=62e1dd38c3a9f5ccd1771f115163947e4f56b5b4;hpb=9d6df8f874cef59df16086c71031db2ba0267d3a;p=lackey diff --git a/cals/dummy.c b/cals/dummy.c index 62e1dd3..1926bdb 100644 --- a/cals/dummy.c +++ b/cals/dummy.c @@ -1,16 +1,16 @@ /* * Copyright (C) 2012 Andy Spencer - * + * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ @@ -34,22 +34,54 @@ static event_t event = { .end = {2012, OCT, 0, 13, 0}, .name = "dummy event", .desc = "this event is random and does not exist", - .next = NULL, }; -static event_t events[8]; +static todo_t todo = { + .cal = &cal, + .name = "dummy todo", + .desc = "this todo is random and does not exist", + .due = {2012, OCT, 0, 13, 0}, + .status = 50, +}; + +static int enable; /* Event functions */ -event_t *dummy_events(cal_t *cal, year_t year, month_t month, day_t day, int days) +event_t *dummy_events(date_t start, date_t end) { - for (int i = 0; i < N_ELEMENTS(events); i++) { - date_t *s = &events[i].start; - date_t *e = &events[i].end; - events[i] = event; + event_t *last = &event; + for (int i = 0; i < 8; i++) { + last->next = new0(event_t); + last->next->cal = event.cal; + last->next->start = event.start; + last->next->end = event.end; + last->next->name = strcopy(event.name); + last->next->desc = strcopy(event.desc); + + date_t *s = &last->next->start; + date_t *e = &last->next->end; add_days(&s->year, &s->month, &s->day, 7*i); add_days(&e->year, &e->month, &e->day, 7*i); - if (i+1 < N_ELEMENTS(events)) - events[i].next = &events[i+1]; + + last = last->next; + last->next = NULL; + } + return enable ? event.next : 0; +} + +/* Todo functions */ +todo_t *dummy_todos(date_t start, date_t end) +{ + todo_t *last = &todo; + for (int i = 0; i < 6; i++) { + last->next = new0(event_t); + last->next->cal = todo.cal; + last->next->name = strcopy(todo.name); + last->next->desc = strcopy(todo.desc); + last->next->due = todo.due; + last->next->status = todo.status; + last = last->next; + last->next = NULL; } - return &events[0]; + return enable ? todo.next : 0; }