Do not re-fetch items in day_*_{item,note}()
We can access these using the pointer field of the generic item structure now -- there's no need to search for these twice any more. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
This commit is contained in:
parent
75d0c4dc17
commit
75dd5eb037
58
src/day.c
58
src/day.c
@ -791,17 +791,13 @@ void day_edit_item(void)
|
|||||||
struct event *e;
|
struct event *e;
|
||||||
struct recur_apoint *ra;
|
struct recur_apoint *ra;
|
||||||
struct apoint *a;
|
struct apoint *a;
|
||||||
long date;
|
|
||||||
int item_num;
|
|
||||||
int need_check_notify = 0;
|
int need_check_notify = 0;
|
||||||
|
|
||||||
item_num = apoint_hilt();
|
p = day_get_item(apoint_hilt());
|
||||||
p = day_get_item(item_num);
|
|
||||||
date = calendar_get_slctd_day_sec();
|
|
||||||
|
|
||||||
switch (p->type) {
|
switch (p->type) {
|
||||||
case RECUR_EVNT:
|
case RECUR_EVNT:
|
||||||
re = recur_get_event(date, day_item_nb(date, item_num, RECUR_EVNT));
|
re = p->item.rev;
|
||||||
const char *choice_recur_evnt[2] = {
|
const char *choice_recur_evnt[2] = {
|
||||||
_("Description"),
|
_("Description"),
|
||||||
_("Repetition"),
|
_("Repetition"),
|
||||||
@ -818,11 +814,11 @@ void day_edit_item(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case EVNT:
|
case EVNT:
|
||||||
e = event_get(date, day_item_nb(date, item_num, EVNT));
|
e = p->item.ev;
|
||||||
update_desc(&e->mesg);
|
update_desc(&e->mesg);
|
||||||
break;
|
break;
|
||||||
case RECUR_APPT:
|
case RECUR_APPT:
|
||||||
ra = recur_get_apoint(date, day_item_nb(date, item_num, RECUR_APPT));
|
ra = p->item.rapt;
|
||||||
const char *choice_recur_appt[4] = {
|
const char *choice_recur_appt[4] = {
|
||||||
_("Start time"),
|
_("Start time"),
|
||||||
_("End time"),
|
_("End time"),
|
||||||
@ -851,7 +847,7 @@ void day_edit_item(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case APPT:
|
case APPT:
|
||||||
a = apoint_get(date, day_item_nb(date, item_num, APPT));
|
a = p->item.apt;
|
||||||
const char *choice_appt[3] = {
|
const char *choice_appt[3] = {
|
||||||
_("Start time"),
|
_("Start time"),
|
||||||
_("End time"),
|
_("End time"),
|
||||||
@ -1044,35 +1040,23 @@ void day_edit_note(const char *editor)
|
|||||||
{
|
{
|
||||||
struct day_item *p;
|
struct day_item *p;
|
||||||
char *note;
|
char *note;
|
||||||
struct recur_apoint *ra;
|
|
||||||
struct apoint *a;
|
|
||||||
struct recur_event *re;
|
|
||||||
struct event *e;
|
|
||||||
long date;
|
|
||||||
int item_num;
|
|
||||||
|
|
||||||
item_num = apoint_hilt();
|
p = day_get_item(apoint_hilt());
|
||||||
p = day_get_item(item_num);
|
|
||||||
note = day_item_get_note(p);
|
note = day_item_get_note(p);
|
||||||
edit_note(¬e, editor);
|
edit_note(¬e, editor);
|
||||||
|
|
||||||
date = calendar_get_slctd_day_sec();
|
|
||||||
switch (p->type) {
|
switch (p->type) {
|
||||||
case RECUR_EVNT:
|
case RECUR_EVNT:
|
||||||
re = recur_get_event(date, day_item_nb(date, item_num, RECUR_EVNT));
|
p->item.rev->note = note;
|
||||||
re->note = note;
|
|
||||||
break;
|
break;
|
||||||
case EVNT:
|
case EVNT:
|
||||||
e = event_get(date, day_item_nb(date, item_num, EVNT));
|
p->item.ev->note = note;
|
||||||
e->note = note;
|
|
||||||
break;
|
break;
|
||||||
case RECUR_APPT:
|
case RECUR_APPT:
|
||||||
ra = recur_get_apoint(date, day_item_nb(date, item_num, RECUR_APPT));
|
p->item.rapt->note = note;
|
||||||
ra->note = note;
|
|
||||||
break;
|
break;
|
||||||
case APPT:
|
case APPT:
|
||||||
a = apoint_get(date, day_item_nb(date, item_num, APPT));
|
p->item.apt->note = note;
|
||||||
a->note = note;
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1092,13 +1076,7 @@ void day_pipe_item(void)
|
|||||||
int pout;
|
int pout;
|
||||||
int pid;
|
int pid;
|
||||||
FILE *fpout;
|
FILE *fpout;
|
||||||
int item_num;
|
|
||||||
long date;
|
|
||||||
struct day_item *p;
|
struct day_item *p;
|
||||||
struct recur_apoint *ra;
|
|
||||||
struct apoint *a;
|
|
||||||
struct recur_event *re;
|
|
||||||
struct event *e;
|
|
||||||
|
|
||||||
status_mesg(_("Pipe item to external command:"), "");
|
status_mesg(_("Pipe item to external command:"), "");
|
||||||
if (getstring(win[STA].p, cmd, BUFSIZ, 0, 1) != GETSTRING_VALID)
|
if (getstring(win[STA].p, cmd, BUFSIZ, 0, 1) != GETSTRING_VALID)
|
||||||
@ -1108,25 +1086,19 @@ void day_pipe_item(void)
|
|||||||
if ((pid = shell_exec(NULL, &pout, *arg, arg))) {
|
if ((pid = shell_exec(NULL, &pout, *arg, arg))) {
|
||||||
fpout = fdopen(pout, "w");
|
fpout = fdopen(pout, "w");
|
||||||
|
|
||||||
item_num = apoint_hilt();
|
p = day_get_item(apoint_hilt());
|
||||||
p = day_get_item(item_num);
|
|
||||||
date = calendar_get_slctd_day_sec();
|
|
||||||
switch (p->type) {
|
switch (p->type) {
|
||||||
case RECUR_EVNT:
|
case RECUR_EVNT:
|
||||||
re = recur_get_event(date, day_item_nb(date, item_num, RECUR_EVNT));
|
recur_event_write(p->item.rev, fpout);
|
||||||
recur_event_write(re, fpout);
|
|
||||||
break;
|
break;
|
||||||
case EVNT:
|
case EVNT:
|
||||||
e = event_get(date, day_item_nb(date, item_num, EVNT));
|
event_write(p->item.ev, fpout);
|
||||||
event_write(e, fpout);
|
|
||||||
break;
|
break;
|
||||||
case RECUR_APPT:
|
case RECUR_APPT:
|
||||||
ra = recur_get_apoint(date, day_item_nb(date, item_num, RECUR_APPT));
|
recur_apoint_write(p->item.rapt, fpout);
|
||||||
recur_apoint_write(ra, fpout);
|
|
||||||
break;
|
break;
|
||||||
case APPT:
|
case APPT:
|
||||||
a = apoint_get(date, day_item_nb(date, item_num, APPT));
|
apoint_write(p->item.apt, fpout);
|
||||||
apoint_write(a, fpout);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user