diff options
author | Lukas Fleischer <calcurse@cryptocrack.de> | 2012-11-18 21:50:15 +0100 |
---|---|---|
committer | Lukas Fleischer <calcurse@cryptocrack.de> | 2012-11-18 22:48:31 +0100 |
commit | 8fd6640caf1961c71c66a9c559f340d86cf17893 (patch) | |
tree | aae95ed461be3c3c0924e9d46ef79ec053db9824 /src | |
parent | f2dca7de3e8b164a4b3af3d58dde2f6776bfbee6 (diff) | |
download | calcurse-8fd6640caf1961c71c66a9c559f340d86cf17893.tar.gz calcurse-8fd6640caf1961c71c66a9c559f340d86cf17893.zip |
Refactor todo_chg_priority()
Instead of passing a key, pass the number of steps to increase the
priority by.
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
Diffstat (limited to 'src')
-rw-r--r-- | src/calcurse.c | 3 | ||||
-rw-r--r-- | src/todo.c | 25 |
2 files changed, 9 insertions, 19 deletions
diff --git a/src/calcurse.c b/src/calcurse.c index 84bd06a..b3b9098 100644 --- a/src/calcurse.c +++ b/src/calcurse.c @@ -221,7 +221,8 @@ static inline void key_pipe_item(int key) static inline void key_change_priority(int key) { if (wins_slctd() == TOD && todo_hilt() != 0) { - todo_chg_priority(todo_get_item(todo_hilt()), key); + todo_chg_priority(todo_get_item(todo_hilt()), + key == KEY_RAISE_PRIORITY ? 1 : -1); if (todo_hilt_pos() < 0) todo_set_first(todo_hilt()); else if (todo_hilt_pos() >= win[TOD].h - 4) @@ -208,7 +208,7 @@ static int todo_get_position(struct todo *needle) } /* Change an item priority by pressing '+' or '-' inside TODO panel. */ -void todo_chg_priority(struct todo *backup, int action) +void todo_chg_priority(struct todo *backup, int diff) { char backup_mesg[BUFSIZ]; int backup_id; @@ -220,23 +220,12 @@ void todo_chg_priority(struct todo *backup, int action) strncpy(backup_note, backup->note, MAX_NOTESIZ + 1); else backup_note[0] = '\0'; - switch (action) { - case KEY_RAISE_PRIORITY: - if (backup_id > 1) - backup_id--; - else - return; - break; - case KEY_LOWER_PRIORITY: - if (backup_id > 0 && backup_id < 9) - backup_id++; - else - return; - break; - default: - EXIT(_("no such action")); - /* NOTREACHED */ - } + + backup_id += diff; + if (backup_id < 1) + backup_id = 1; + else if (backup_id > 9) + backup_id = 9; todo_delete(todo_get_item(hilt)); backup = todo_add(backup_mesg, backup_id, backup_note); |