Don't show time elapsed screen if you quit.

This commit is contained in:
David Vereb 2020-03-10 16:15:13 -04:00
parent baca448ea2
commit c105ed13a0

View File

@ -66,12 +66,12 @@ int main(int argc, char *argv[])
// Keep track of time:
auto start_time = std::chrono::steady_clock::now();
unsigned int input = 'q';
while(selected != problems.end() && *selected)
{
Problem *current_problem = *selected;
current_problem->Draw(true, input_style); // refresh with new input
auto input = getch();
input = getch();
if(input == 'q') // early exit
break;
switch(input)
@ -106,21 +106,24 @@ int main(int argc, char *argv[])
current_problem->Draw(current_problem == *selected, input_style); // refresh with new input
}
// Keep track of time:
auto end_time = std::chrono::steady_clock::now();
auto elapsed_time = std::chrono::duration_cast<std::chrono::seconds>(end_time - start_time);
int middle_h = COLS / 2;
int middle_v = LINES / 2;
clear();
mvprintw(middle_v - 1, middle_h - 10,
"Time Elapsed: %02dm %02ds\n",
elapsed_time / 60, elapsed_time % 60);
mvprintw(middle_v + 1, middle_h - 8,
"Press Q to quit.");
wrefresh(stdscr);
if(input != 'q') // if you didn't quit
{
// Keep track of time:
auto end_time = std::chrono::steady_clock::now();
auto elapsed_time = std::chrono::duration_cast<std::chrono::seconds>(end_time - start_time);
int middle_h = COLS / 2;
int middle_v = LINES / 2;
clear();
mvprintw(middle_v - 1, middle_h - 10,
"Time Elapsed: %02dm %02ds\n",
elapsed_time / 60, elapsed_time % 60);
mvprintw(middle_v + 1, middle_h - 8,
"Press Q to quit.");
wrefresh(stdscr);
while(!(getch() == 'q'))
;
while(!(getch() == 'q'))
;
}
for(auto *problem : problems)
if(problem)