Refactor display_item_date()
Replace nested case differentiations by initializing every single character for each flag separately and joining all characters afterwards. This makes it much easier to extend the function later. Note that the same approach is already used in display_item(). Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
This commit is contained in:
parent
ce93fa8adb
commit
9e86e258f2
18
src/day.c
18
src/day.c
@ -401,6 +401,7 @@ display_item_date(struct day_item *day, int incolor, long date, int y,
|
||||
{
|
||||
WINDOW *win;
|
||||
char a_st[100], a_end[100];
|
||||
char ch_recur, ch_notify;
|
||||
|
||||
/* FIXME: Redesign apoint_sec2str() and remove the need for a temporary
|
||||
* appointment item here. */
|
||||
@ -412,18 +413,11 @@ display_item_date(struct day_item *day, int incolor, long date, int y,
|
||||
apoint_sec2str(&apt_tmp, date, a_st, a_end);
|
||||
if (incolor == 0)
|
||||
custom_apply_attr(win, ATTR_HIGHEST);
|
||||
|
||||
if (day->type == RECUR_EVNT || day->type == RECUR_APPT) {
|
||||
if (day_item_get_state(day) & APOINT_NOTIFY)
|
||||
mvwprintw(win, y, x, " *!%s -> %s", a_st, a_end);
|
||||
else
|
||||
mvwprintw(win, y, x, " * %s -> %s", a_st, a_end);
|
||||
} else if (day_item_get_state(day) & APOINT_NOTIFY) {
|
||||
mvwprintw(win, y, x, " -!%s -> %s", a_st, a_end);
|
||||
} else {
|
||||
mvwprintw(win, y, x, " - %s -> %s", a_st, a_end);
|
||||
}
|
||||
|
||||
ch_recur = (day->type == RECUR_EVNT ||
|
||||
day->type == RECUR_APPT) ? '*' : '-';
|
||||
ch_notify = (day_item_get_state(day) & APOINT_NOTIFY) ? '!' : ' ';
|
||||
mvwprintw(win, y, x, " %c%c%s -> %s", ch_recur, ch_notify,
|
||||
a_st, a_end);
|
||||
if (incolor == 0)
|
||||
custom_remove_attr(win, ATTR_HIGHEST);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user