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:
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user