- int days = 0, ref = 0;
- switch (key)
- {
- case 'h': ref = 1; days = -1; break;
- case 'l': ref = 1; days = 1; break;
- case 'i': ref = 1; days = -7; break;
- case 'o': ref = 1; days = 7; break;
- case 'k': ref = 1; line--; break;
- case 'j': ref = 1; line++; break;
- }
- line = CLAMP(line, 0, 24*4);
- if (days)
- add_days(&SEL.year, &SEL.month, &SEL.day, days);
- if (ref) {
- werase(win);
- week_draw();
- wrefresh(win);
+ int days = 0, events = 0, lines = 0;
+ switch (key) {
+ case 'h': days = -1; break;
+ case 'l': days = 1; break;
+ case 'i': days = -7; break;
+ case 'o': days = 7; break;
+ case 'k': events = -1; break;
+ case 'j': events = 1; break;
+ case '\031': lines = -1; break; // ctrl-y
+ case '\005': lines = 1; break; // ctrl-e
+ case '\012': view_edit(EDIT_EVENT); return 1; // enter
+ default: return 0; // not found