mirror of
https://github.com/jarun/nnn.git
synced 2024-11-24 11:51:27 +00:00
Refactor set_time_type()
This commit is contained in:
parent
e0cdbcb521
commit
30a6caf8bc
48
src/nnn.c
48
src/nnn.c
|
@ -615,12 +615,6 @@ static const char * const envs[] = {
|
||||||
#define T_CHANGE 1
|
#define T_CHANGE 1
|
||||||
#define T_MOD 2
|
#define T_MOD 2
|
||||||
|
|
||||||
static const char * const time_type[] = {
|
|
||||||
"'a'ccess",
|
|
||||||
"'c'hange",
|
|
||||||
"'m'od",
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
static char cp[] = "cp -iRp";
|
static char cp[] = "cp -iRp";
|
||||||
static char mv[] = "mv -i";
|
static char mv[] = "mv -i";
|
||||||
|
@ -4784,43 +4778,31 @@ static int set_sort_flags(int r)
|
||||||
|
|
||||||
static bool set_time_type(int *presel)
|
static bool set_time_type(int *presel)
|
||||||
{
|
{
|
||||||
char buf[24];
|
bool ret = FALSE;
|
||||||
bool first = TRUE;
|
char buf[] = "'a'ccess / 'c'hange / 'm'od [ ]";
|
||||||
int r = 0;
|
|
||||||
size_t chars = 0;
|
|
||||||
|
|
||||||
for (; r < (int)ELEMENTS(time_type); ++r)
|
buf[sizeof(buf) - 3] = cfg.timetype == T_MOD ? 'm' : (cfg.timetype == T_ACCESS ? 'a' : 'c');
|
||||||
if (r != cfg.timetype) {
|
|
||||||
chars += xstrsncpy(buf + chars, time_type[r], sizeof(buf) - chars) - 1;
|
int r = get_input(buf);
|
||||||
if (first) {
|
|
||||||
buf[chars++] = ' ';
|
|
||||||
buf[chars++] = '/';
|
|
||||||
buf[chars++] = ' ';
|
|
||||||
first = FALSE;
|
|
||||||
} else {
|
|
||||||
buf[chars++] = '?';
|
|
||||||
buf[chars] = '\n';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
r = get_input(buf);
|
|
||||||
if (r == 'a' || r == 'c' || r == 'm') {
|
if (r == 'a' || r == 'c' || r == 'm') {
|
||||||
r = (r == 'm') ? T_MOD : ((r == 'a') ? T_ACCESS : T_CHANGE);
|
r = (r == 'm') ? T_MOD : ((r == 'a') ? T_ACCESS : T_CHANGE);
|
||||||
if (cfg.timetype == r) {
|
if (cfg.timetype != r) {
|
||||||
printwait(messages[MSG_NOCHNAGE], presel);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
cfg.timetype = r;
|
cfg.timetype = r;
|
||||||
|
|
||||||
if (cfg.filtermode || g_ctx[cfg.curctx].c_fltr[1])
|
if (cfg.filtermode || g_ctx[cfg.curctx].c_fltr[1])
|
||||||
*presel = FILTER;
|
*presel = FILTER;
|
||||||
|
|
||||||
return TRUE;
|
ret = TRUE;
|
||||||
}
|
} else
|
||||||
|
r = MSG_NOCHNAGE;
|
||||||
|
} else
|
||||||
|
r = MSG_INVALID_KEY;
|
||||||
|
|
||||||
printwait(messages[MSG_INVALID_KEY], presel);
|
if (!ret)
|
||||||
return FALSE;
|
printwait(messages[r], presel);
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void statusbar(char *path)
|
static void statusbar(char *path)
|
||||||
|
|
Loading…
Reference in a new issue