diff --git a/harbour/ChangeLog b/harbour/ChangeLog index fb7b234bcc..d1fb512cca 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,20 @@ +2001-02-02 22:45 GMT+1 Maurilio Longo + * source/debug/debugger.prg + - removed calls to oBrwText:ForceStable() method which is no more available + ! SetsUp() and SetsDown() functions where calling ::RefreshAll() and movement methods + without any reason causing a noticeable delay during Sets scrolling. + * source/debug/tbrwtext.prg + - removed empty ::ForceStable() method + * source/rtl/tbrowse.prg + ! when a movement happens inside available on screen rows (like a ::Down() from row 1 to + row 2) I have to force repainting of target row or else this sequence (for example) + fails: ::RefreshCurrent():Down():ForceStable() because to paint the row where I issued a + ::RefreshCurrent() I have to move one back from ::nNewRowPos, but there I stay since + ::nNewRowPos is not to redraw. I'm sure nobody uderstands what I'm clearly unable to + explain :-) + * source/rtl/teditor.prg + - removed a TODO: comment which is no more needed. + 2001-02-02 16:48 GMT+1 Antonio Linares * source/vm/debug.c + New function __vmVarLSet() added. diff --git a/harbour/source/debug/debugger.prg b/harbour/source/debug/debugger.prg index a7ffd374f4..598f99f1f6 100644 --- a/harbour/source/debug/debugger.prg +++ b/harbour/source/debug/debugger.prg @@ -222,27 +222,22 @@ METHOD CodeWindowProcessKey( nKey ) CLASS TDebugger do case case nKey == K_HOME ::oBrwText:GoTop() - ::oBrwText:ForceStable() case nKey == K_END ::oBrwText:GoBottom() - ::oBrwText:ForceStable() case nKey == K_UP ::oBrwText:Up() - ::oBrwText:ForceStable() case nKey == K_DOWN ::oBrwText:Down() - ::oBrwText:ForceStable() case nKey == K_PGUP ::oBrwText:PageUp() - ::oBrwText:ForceStable() case nKey == K_PGDN ::oBrwText:PageDown() - ::oBrwText:ForceStable() + endcase return nil @@ -677,7 +672,6 @@ METHOD ShowCode( cModuleName ) CLASS TDebugger //::oBrwText:aColumns[ 1 ]:ColorBlock := { || iif( AScan( ::aBreakPoints,; // CompareLine( Self ) ) != 0, { 3, 4 }, { 1, 2 } ) } - ::oBrwText:ForceStable() ::oWndCode:SetCaption( ::cPrgName ) endif @@ -776,7 +770,6 @@ METHOD ToggleBreakPoint() CLASS TDebugger endif ::oBrwText:RefreshCurrent() - ::oBrwText:ForceStable() return nil @@ -870,53 +863,20 @@ return static procedure SetsUp( oBrw ) - local nRow := oBrw:RowPos - local nSetPos - if oBrw:RowPos == 1 - nSetPos := oBrw:Cargo - oBrw:Cargo := 0 - oBrw:Refreshall() - oBrw:ForceStable() - oBrw:Cargo := nSetPos - endif - oBrw:colpos:=1 - oBrw:dehilite() - oBrw:colpos:=2 + oBrw:RefreshCurrent() oBrw:Up() - oBrw:Refreshall() - - if nRow != oBrw:Cargo - oBrw:aReDraw[ nRow ] := .f. - oBrw:Up() - endif oBrw:ForceStable() - myColors(oBrw,{1,2}) + //myColors(oBrw,{1,2}) //NOTE: What is this needed for? + return static procedure SetsDown( oBrw ) - local nRow := oBrw:RowPos - local nSetPos - - if oBrw:RowPos == oBrw:RowCount - nSetPos := oBrw:Cargo - oBrw:Cargo := 0 - oBrw:Refreshall() - oBrw:ForceStable() - oBrw:Cargo := nSetPos - endif - oBrw:colpos:=1 - oBrw:dehilite() - oBrw:colpos:=2 + oBrw:RefreshCurrent() oBrw:Down() - oBrw:Refreshall() - - if nRow != oBrw:Cargo - oBrw:aReDraw[ nRow ] := .f. - oBrw:Down() - endif oBrw:ForceStable() - myColors(oBrw,{1,2}) + //myColors(oBrw,{1,2}) + return static function ValToStr( uVal ) @@ -951,6 +911,7 @@ static function ValToStr( uVal ) endcase return cResult + static function myColors( oBrowse, aColColors ) local i local nColPos := oBrowse:colpos diff --git a/harbour/source/debug/tbrwtext.prg b/harbour/source/debug/tbrwtext.prg index 5bb3e895c2..5dd99b62fa 100644 --- a/harbour/source/debug/tbrwtext.prg +++ b/harbour/source/debug/tbrwtext.prg @@ -58,7 +58,6 @@ CLASS TBrwText FROM TEditor METHOD RefreshAll() METHOD RefreshCurrent() - METHOD ForceStable() METHOD GotoLine(n) METHOD GetLine(nRow) diff --git a/harbour/source/rtl/tbrowse.prg b/harbour/source/rtl/tbrowse.prg index 79fbaa1a6c..0a65662c9a 100644 --- a/harbour/source/rtl/tbrowse.prg +++ b/harbour/source/rtl/tbrowse.prg @@ -795,6 +795,7 @@ METHOD Stabilize() CLASS TBrowse if (::nNewRowPos + nRecsSkipped >= 1) .AND. (::nNewRowPos + nRecsSkipped <= ::RowCount) ::nNewRowPos += nRecsSkipped ::nLastRetrieved := ::nNewRowPos + ::aRedraw[::nNewRowPos] := .T. else // It was K_PGDN or K_PGUP diff --git a/harbour/source/rtl/teditor.prg b/harbour/source/rtl/teditor.prg index 9a443864f0..c65cb39423 100644 --- a/harbour/source/rtl/teditor.prg +++ b/harbour/source/rtl/teditor.prg @@ -33,8 +33,6 @@ * */ -/* TODO: Load, Save, GotoLine, SkipLine methods (to be used with debugger) - Test to see if it behaves more or less like MemoEdit() */ #include "common.ch" #include "hbclass.ch"