Corretto scrolling

git-svn-id: svn://10.65.10.50/trunk@2486 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
villa 1996-01-23 11:55:22 +00:00
parent d0714c6c0e
commit f94f3309bb

View File

@ -534,7 +534,7 @@ void TViswin::shift_screen (scroll dir)
{
case up:
case down:
xvt_rect_set (&r, 0, taby(Y_OFFSET)+2,
xvt_rect_set(&r, 0, taby(Y_OFFSET)/*+2*/,
tabx(int(_textcolumns) + X_OFFSET), taby(int(_textrows) + Y_OFFSET));
xvt_dwin_scroll_rect (win(), &r, 0, dir == down ? taby(1) : -taby(1));
paint_row (dir == up ? origin ().y + _textrows - 1 : origin ().y);
@ -543,8 +543,8 @@ void TViswin::shift_screen (scroll dir)
case right:
xvt_rect_set(&r,
tabx(X_OFFSET), 0,
tabx(int(_textcolumns) + X_OFFSET) + 2,
taby(int(_textrows) + 1) - 2);
tabx(int(_textcolumns) + X_OFFSET)/* + 2*/,
taby(int(_textrows) + 1)/* - 2*/);
xvt_dwin_scroll_rect (win (), &r, dir == right ? tabx(1) : -tabx(1), 0);
paint_column (dir == left ? origin ().x + _textcolumns - 1 : origin ().x, dir == left);
@ -654,7 +654,7 @@ void TViswin::paint_screen ()
PNT b, e;
b.h = tabx(5);
b.v = taby((int) (j + (long)Y_OFFSET - origin ().y)) - 2;
b.v = taby((int)(j + (long)Y_OFFSET - origin().y))/* -2 *****/;
e.h = tabx(columns());
e.v = b.v;
xvt_dwin_draw_set_pos(win(), b);
@ -807,7 +807,7 @@ void TViswin::paint_background(
if (i && i->ok())
{
short delta = tabx(short(origin().x-x1-X_OFFSET)); // Primo pixel sorgente
short delta = tabx(short(origin().x - x1)); // Primo pixel sorgente
if (delta < 0) delta = 0;
if (delta < width)
{
@ -816,8 +816,8 @@ void TViswin::paint_background(
RCT src; xvt_rect_set(&src, p.h, p.v, width, min(p.v+taby(1)+scroll , i->height()));
if (src.top < i->height())
{
short px = short(x1-origin().x+X_OFFSET);
if (px < X_OFFSET) px = X_OFFSET;
short px = short(x1-origin().x);
if (px < 0) px = 0; px += X_OFFSET;
p.h = tabx(px); p.v = taby(row);
RCT dst = src; xvt_rect_set_pos(&dst, p);
i->draw(win(), dst, src);
@ -880,7 +880,7 @@ void TViswin::paint_row (long j)
RCT r;
r.top = row * CHARY;
r.left = tabx(X_OFFSET -1),
r.bottom = r.top + taby(1) + 2;
r.bottom = r.top + taby(1)/* + 1*/;
r.right = tabx(255);
xvt_dwin_draw_rect (win (), &r);
}
@ -1185,11 +1185,6 @@ void TViswin::update ()
{
bar (0, 0, columns() + 1, 1);
bar (0, 0, 5, rows() + 1);
// RCT r1, r2;
// r1.top = 0; r1.left = 0; r1.bottom = CHARY; r1.right = (columns() + 1)*CHARX;
// r2.top = 0; r2.left = 0; r2.bottom = (rows()+1)*CHARY; r2.right = 5*CHARX;
// xvt_draw_rect(win(), r1, COLOR_WHITE, COLOR_GRAY, 2);
// xvt_draw_rect(win(), r2, COLOR_WHITE, COLOR_GRAY, 2);
}
if (_showbuts)
bar ((X_OFFSET -1), rows()-BUTTONROW_SIZE, columns() + 1, rows() + 1);