Browse Source
Merge pull request #112 from FireMartZ/v1.0.13-rc
Fix console rewind on win32 by using native api.
z_importviewingkey_bug
FireMartZ
6 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
18 additions and
0 deletions
-
src/metrics.cpp
|
|
@ -430,7 +430,9 @@ void ThreadShowMetricsScreen() |
|
|
|
|
|
|
|
if (isScreen) { |
|
|
|
// Clear screen
|
|
|
|
#ifndef WIN32 |
|
|
|
std::cout << "\e[2J"; |
|
|
|
#endif |
|
|
|
|
|
|
|
// Thank you text
|
|
|
|
std::cout << _("Thank you for running a HUSH node!") << std::endl; |
|
|
@ -465,7 +467,16 @@ void ThreadShowMetricsScreen() |
|
|
|
|
|
|
|
if (isScreen) { |
|
|
|
// Erase below current position
|
|
|
|
#ifndef WIN32 |
|
|
|
std::cout << "\e[J"; |
|
|
|
#else |
|
|
|
DWORD count; |
|
|
|
CONSOLE_SCREEN_BUFFER_INFO csbi; |
|
|
|
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &csbi); |
|
|
|
COORD homeCoords = { 0, csbi.dwCursorPosition.Y }; |
|
|
|
FillConsoleOutputCharacter(GetStdHandle(STD_OUTPUT_HANDLE), (TCHAR) ' ', csbi.dwSize.X * (csbi.dwSize.Y-csbi.dwCursorPosition.Y), homeCoords, &count); |
|
|
|
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), homeCoords); |
|
|
|
#endif |
|
|
|
} |
|
|
|
|
|
|
|
// Miner status
|
|
|
@ -499,7 +510,14 @@ void ThreadShowMetricsScreen() |
|
|
|
|
|
|
|
if (isScreen) { |
|
|
|
// Return to the top of the updating section
|
|
|
|
#ifndef WIN32 |
|
|
|
std::cout << "\e[" << lines << "A"; |
|
|
|
#else |
|
|
|
CONSOLE_SCREEN_BUFFER_INFO csbi; |
|
|
|
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &csbi); |
|
|
|
COORD homeCoords = { 0, csbi.dwCursorPosition.Y - lines }; |
|
|
|
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), homeCoords); |
|
|
|
#endif |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|