* fhandler_console.cc: New member variable `dwBufferSize' for `info'.
(fillin_info): Set `dwBufferSize' to the size of the console buffer. (clear_screen): Use width of console buffer to calculate how many spaces to clear.
This commit is contained in:
parent
c302181722
commit
5758fdf31d
|
@ -1,3 +1,10 @@
|
||||||
|
Thu Nov 16 15:59:58 2000 Bradley A. Town <townba@pobox.com>
|
||||||
|
|
||||||
|
* fhandler_console.cc: New member variable `dwBufferSize' for `info'.
|
||||||
|
(fillin_info): Set `dwBufferSize' to the size of the console buffer.
|
||||||
|
(clear_screen): Use width of console buffer to calculate how many
|
||||||
|
spaces to clear.
|
||||||
|
|
||||||
Thu Nov 16 15:24:45 2000 Christopher Faylor <cgf@cygnus.com>
|
Thu Nov 16 15:24:45 2000 Christopher Faylor <cgf@cygnus.com>
|
||||||
|
|
||||||
* Makefile.in: Make import library creation 'make -j2' friendly.
|
* Makefile.in: Make import library creation 'make -j2' friendly.
|
||||||
|
|
|
@ -264,6 +264,7 @@ static struct
|
||||||
SHORT winTop;
|
SHORT winTop;
|
||||||
SHORT winBottom;
|
SHORT winBottom;
|
||||||
COORD dwWinSize;
|
COORD dwWinSize;
|
||||||
|
COORD dwBufferSize;
|
||||||
COORD dwCursorPosition;
|
COORD dwCursorPosition;
|
||||||
WORD wAttributes;
|
WORD wAttributes;
|
||||||
} info;
|
} info;
|
||||||
|
@ -280,6 +281,7 @@ fhandler_console::fillin_info (void)
|
||||||
info.winBottom = linfo.srWindow.Bottom;
|
info.winBottom = linfo.srWindow.Bottom;
|
||||||
info.dwWinSize.Y = 1 + linfo.srWindow.Bottom - linfo.srWindow.Top;
|
info.dwWinSize.Y = 1 + linfo.srWindow.Bottom - linfo.srWindow.Top;
|
||||||
info.dwWinSize.X = 1 + linfo.srWindow.Right - linfo.srWindow.Left;
|
info.dwWinSize.X = 1 + linfo.srWindow.Right - linfo.srWindow.Left;
|
||||||
|
info.dwBufferSize = linfo.dwSize;
|
||||||
info.dwCursorPosition = linfo.dwCursorPosition;
|
info.dwCursorPosition = linfo.dwCursorPosition;
|
||||||
info.wAttributes = linfo.wAttributes;
|
info.wAttributes = linfo.wAttributes;
|
||||||
}
|
}
|
||||||
|
@ -648,9 +650,9 @@ fhandler_console::clear_screen (int x1, int y1, int x2, int y2)
|
||||||
if (y2 < 0)
|
if (y2 < 0)
|
||||||
y2 = info.winBottom;
|
y2 = info.winBottom;
|
||||||
|
|
||||||
num = abs (y1 - y2) * info.dwWinSize.X + abs (x1 - x2) + 1;
|
num = abs (y1 - y2) * info.dwBufferSize.X + abs (x1 - x2) + 1;
|
||||||
|
|
||||||
if ((y2 * info.dwWinSize.X + x2) > (y1 * info.dwWinSize.X + x1))
|
if ((y2 * info.dwBufferSize.X + x2) > (y1 * info.dwBufferSize.X + x1))
|
||||||
{
|
{
|
||||||
tlc.X = x1;
|
tlc.X = x1;
|
||||||
tlc.Y = y1;
|
tlc.Y = y1;
|
||||||
|
|
Loading…
Reference in New Issue