From: lostd Date: Wed, 22 Oct 2014 14:54:13 +0000 (+0300) Subject: Functions for setting and clearing the prompt X-Git-Tag: v1.0~92^2~167 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=5335be58322644e16f6478539b4f5846a1f80ac8;p=nnn.git Functions for setting and clearing the prompt --- diff --git a/noice.c b/noice.c index 24e687ae..f983fefe 100644 --- a/noice.c +++ b/noice.c @@ -255,6 +255,21 @@ printerr(int ret, char *prefix) exit(ret); } +/* Clear the last line */ +void +clearprompt(void) +{ + printmsg(""); +} + +/* Print prompt on the last line */ +void +printprompt(char *str) +{ + clearprompt(); + printw(str); +} + /* * Returns 0 normally * On movement it updates *cur @@ -627,12 +642,10 @@ nochange: goto nochange; case SEL_FLTR: /* Read filter */ - printmsg(""); - move(LINES - 1, 0); - printw("filter: "); + printprompt("filter: "); tmp = readln(); if (tmp == NULL) { - printmsg(""); + clearprompt(); goto nochange; } r = setfilter(&re, tmp); @@ -653,12 +666,10 @@ nochange: break; case SEL_CD: /* Read target dir */ - printmsg(""); - move(LINES - 1, 0); - printw("chdir: "); + printprompt("chdir: "); tmp = readln(); if (tmp == NULL) { - printmsg(""); + clearprompt(); goto nochange; } if (testopendir(tmp) == 0) {