When clearing the screen move the cursor to the top

This commit is contained in:
Andrea Mazzoleni 2016-01-30 09:17:10 +01:00
parent bf1f7dda7c
commit 6da3469fe7
3 changed files with 9 additions and 3 deletions

View file

@ -291,6 +291,9 @@ void os_clear(void)
coord.X = 0;
coord.Y = 0;
FillConsoleOutputCharacterA(console, ' ', screen.dwSize.X * screen.dwSize.Y, coord, &written);
/* set the cursor at the top left corner */
SetConsoleCursorPosition(console, coord);
}
/**

View file

@ -4055,7 +4055,7 @@ static void state_progress_graph(struct snapraid_state* state, struct snapraid_i
printf("\n");
if (oldest == PROGRESS_MAX) {
const char* legend = "wait time";
const char* legend = "wait time (total)";
printc(' ', 5 + pad + 1 + bar / 2 - strlen(legend) / 2);
printf("%s", legend);
printf("\n");
@ -4065,6 +4065,8 @@ static void state_progress_graph(struct snapraid_state* state, struct snapraid_i
printf(legend_d, PROGRESS_MAX);
printf("\n");
}
printf("\n");
}
int state_progress(struct snapraid_state* state, struct snapraid_io* io, block_off_t blockpos, block_off_t countpos, block_off_t countmax, data_off_t countsize)

View file

@ -1228,8 +1228,9 @@ void os_abort(void)
void os_clear(void)
{
/* ANSI code for clear screen */
printf("\033[2J");
/* ANSI codes */
printf("\033[H"); /* cursor at topleft */
printf("\033[2J"); /* clear screen */
}
#endif