2014-08-11 13:54 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

* src/debug/dbgbrwsr.prg
    ! fixed to not display last column out of browser area

  * src/debug/dbghelp.prg
  * src/debug/dbgmenu.prg
  * src/debug/debugger.prg
    * use strings to to locate help topics instead of hardcoded numeric
      offsets
    ! added support for topic specification in "HELP" command - Cl*pper
      compatibility
    ! allow to use FILE DOS (and F D shortcut) to activate OS Shell - Cl*pper
      compatibility

  * src/debug/dbgentry.c
    ! removed recent pseudo fix with memset() missing the last byte of
      allocated memory area since e59993bdb1.
      The original code was correct. In Harbour trailing 0 in all strings
      is set inside functions creating string items.

  * package/harbour.spec
    + added MXML library

  * package/mpkg_rpm.sh
    * respect HB_WITH_*=no and HB_WITH_*=local envvars
This commit is contained in:
Przemysław Czerpak
2014-08-11 13:54:18 +02:00
parent e45a1dd022
commit 05fa5c0538
8 changed files with 78 additions and 36 deletions

View File

@@ -186,7 +186,9 @@ METHOD DispRow( nRow, lHiLite ) CLASS HBDbBrowser
IF nWid == NIL
nWid := Len( xData )
ENDIF
hb_DispOutAt( ::nTop + nRow - 1, nColX, PadR( xData, nWid ) + iif( oCol:__enumIsLast(), "", " " ), ::aColorSpec[ nClr ] )
hb_DispOutAt( ::nTop + nRow - 1, nColX, ;
Left( PadR( xData, nWid ) + iif( oCol:__enumIsLast(), "", " " ), ;
::nRight - nColX + 1 ), ::aColorSpec[ nClr ] )
nColX += nWid + 1
ENDIF
NEXT

View File

@@ -761,7 +761,7 @@ static void hb_dbgAddStopLines( PHB_ITEM pItem )
HB_ISIZ k;
char * pBuffer = ( char * ) hb_xgrab( nLen + 1 );
hb_xmemset( pBuffer, 0, nLen + 1 );
hb_xmemset( pBuffer, 0, nLen );
/* the bitfields with line numbers should use
* 8bit alignment so it's safe to use byte copy

View File

@@ -59,10 +59,11 @@
#include "box.ch"
#include "inkey.ch"
PROCEDURE __dbgHelp( nTopic )
PROCEDURE __dbgHelp( cTopic )
LOCAL cColor := iif( __dbg():lMonoDisplay, "N/W, W/N, W+/W, W+/N", "N/W, N/BG, R/W, R/BG" )
LOCAL oBrw
LOCAL nTopic
LOCAL aTopics := GetTopics()
LOCAL oDlg := HBDbWindow():New( 2, 2, MaxRow() - 2, MaxCol() - 2, "Help", cColor )
@@ -77,8 +78,8 @@ PROCEDURE __dbgHelp( nTopic )
oBrw:GoTopBlock := {|| oBrw:Cargo := 1 }
oBrw:GoBottomBlock := {|| oBrw:Cargo := Len( aTopics ) }
hb_default( @nTopic, 1 )
IF nTopic > 1
IF HB_ISSTRING( cTopic ) .AND. ;
( nTopic := Ascan( aTopics, {| x | hb_LeftEqI( x[ 1 ], cTopic ) } ) ) > 1
oBrw:nFirstVisible := nTopic
ENDIF

View File

@@ -191,12 +191,12 @@ FUNCTION __dbgBuildMenu( oDebugger ) // Builds the debugger pulldown menu
MENUITEM " ~Help "
MENU
MENUITEM " ~About Help " ACTION oDebugger:ShowHelp( 0 )
MENUITEM " ~About Help " ACTION oDebugger:ShowHelp()
SEPARATOR
MENUITEM " ~Keys" ACTION oDebugger:ShowHelp( 2 )
MENUITEM " ~Windows" ACTION oDebugger:ShowHelp( 6 )
MENUITEM " ~Menus" ACTION oDebugger:ShowHelp( 12 )
MENUITEM " ~Commands" ACTION oDebugger:ShowHelp( 21 )
MENUITEM " ~Keys" ACTION oDebugger:ShowHelp( "Keys" )
MENUITEM " ~Windows" ACTION oDebugger:ShowHelp( "Windows" )
MENUITEM " ~Menus" ACTION oDebugger:ShowHelp( "Menus" )
MENUITEM " ~Commands" ACTION oDebugger:ShowHelp( "Commands" )
ENDMENU
ENDMENU

View File

@@ -299,7 +299,7 @@ CREATE CLASS HBDebugger
METHOD ShowAppScreen()
METHOD ShowCallStack()
METHOD ShowCodeLine( nProc )
METHOD ShowHelp( nTopic )
METHOD ShowHelp( cTopic )
METHOD ShowVars()
METHOD LocatePrgPath( cPrgName )
METHOD Sort() INLINE ASort( ::aVars,,, {| x, y | x[ 1 ] < y[ 1 ] } ), ;
@@ -941,7 +941,7 @@ METHOD DoCommand( cCommand ) CLASS HBDebugger
::Open()
CASE hb_LeftEq( "RESUME", cParam )
::Resume()
CASE hb_LeftEq( "OSSHELL", cParam )
CASE hb_LeftEq( "OS", cParam ) .OR. hb_LeftEq( "DOS", cParam )
::OSShell()
CASE hb_LeftEq( "EXIT", cParam )
::Quit()
@@ -959,7 +959,7 @@ METHOD DoCommand( cCommand ) CLASS HBDebugger
::Go()
CASE cCommand == "HELP"
::ShowHelp()
::ShowHelp( cParam )
CASE hb_LeftEqN( "INPUT", cCommand, 4 )
IF Empty( cParam )
@@ -2695,9 +2695,9 @@ METHOD PROCEDURE ShowCodeLine( nProc ) CLASS HBDebugger
RETURN
METHOD PROCEDURE ShowHelp( nTopic ) CLASS HBDebugger
METHOD PROCEDURE ShowHelp( cTopic ) CLASS HBDebugger
__dbgHelp( nTopic )
__dbgHelp( cTopic )
RETURN