From: Rod O. <rod...@us...> - 2008-08-14 22:12:49
|
Update of /cvsroot/win32forth/win32forth/src/console In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv20695 Modified Files: CommandWindow.f Log Message: Rod: improved scrolling Index: CommandWindow.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/console/CommandWindow.f,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** CommandWindow.f 12 Aug 2008 17:05:32 -0000 1.11 --- CommandWindow.f 14 Aug 2008 22:12:45 -0000 1.12 *************** *** 465,488 **** ;M ! :M AutoScroll: ( -- ) \ scroll caret into view ! WindowState: parent SIZE_MINIMIZED = IF exitm THEN ! BEGIN CaretPos @ width iRightMargin - > WHILE PauseForMessages HorzLine negate HScroll SCP REPEAT ! BEGIN CaretPos @ iLeftMargin < WHILE HorzLine HScroll SCP REPEAT ! BEGIN CaretPos cell+ @ VertLine + height > WHILE VertLine negate VScroll SCP UpdatePoint: self REPEAT ! BEGIN CaretPos cell+ @ 0 < WHILE VertLine VScroll SCP UpdatePoint: self REPEAT UpdateHScroll: self ! UpdateVScroll: self ;M ! (( ! :M AutoVScroll: ( -- ) \ scroll caret into view vertically after cr ! BEGIN CaretPos cell+ @ VertLine + height > WHILE VertLine negate VScroll SCP UpdatePoint: self Update: self REPEAT ! BEGIN CaretPos cell+ @ 0 < WHILE VertLine VScroll SCP Update: self REPEAT UpdateVScroll: self ;M ! )) ! :M AutoHScroll: ( -- ) \ scroll caret into view horizontally after cr ! BEGIN CaretPos @ width iRightMargin - > WHILE PauseForMessages HorzLine negate HScroll SCP REPEAT ! BEGIN CaretPos @ iLeftMargin < WHILE HorzLine HScroll SCP REPEAT UpdateHScroll: self ;M --- 465,495 ---- ;M ! :M AutoHScroll: ( -- ) \ scroll caret into view horizontally ! PauseForMessages ! iLeftMargin CaretPos @ - 0 max ! width iRightMargin - CaretPos @ - 0 min + HScroll UpdateHScroll: self ! SCP ;M ! ! :M AutoVScroll: ( -- ) \ scroll caret into view vertically ! PauseForMessages ! 0 CaretPos cell+ @ - 0 max ! height VertLine - CaretPos cell+ @ - 0 min + VScroll UpdateVScroll: self + SCP ;M ! ! :M AutoScroll: ( -- ) \ scroll caret into view ! WindowState: parent SIZE_MINIMIZED = IF exitm THEN ! UpdatePoint: self \ force a paint to update text size ! PauseForMessages ! iLeftMargin CaretPos @ - 0 max ! width iRightMargin - CaretPos @ - 0 min + HScroll ! 0 CaretPos cell+ @ - 0 max ! height VertLine - CaretPos cell+ @ - 0 min + VScroll UpdateHScroll: self + UpdateVScroll: self + \ SCP ;M |