2007-09-24 02:05 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

* harbour/contrib/ole2/win32ole.prg
    * changed Invoke() method to work with core code compiled without
      HB_COMPAT_XHB

  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rdd/dbcmd.c
    * code clean-up

  * harbour/include/hbset.h
  * harbour/source/rtl/set.c
    * code clean-up
    + added functions to access set parameters:
         hb_setAltHan()
         hb_setCentury()
         hb_setExtraHan()
         hb_setPrintHan()
         hb_setAlternate()
         hb_setAltFile()
         hb_setAutOpen()
         hb_setAutOrder()
         hb_setAutoShare()
         hb_setBell()
         hb_setCancel()
         hb_setColor()
         hb_setConfirm()
         hb_setConsole()
         hb_setDateFormat()
         hb_setDebug()
         hb_setDecimals()
         hb_setDefault()
         hb_setDeleted()
         hb_setDelimChars()
         hb_setDelimiters()
         hb_setDevice()
         hb_setEOF()
         hb_setEpoch()
         hb_setEscape()
         hb_setEventMask()
         hb_setExact()
         hb_setExclusive()
         hb_setExit()
         hb_setExtra()
         hb_setExtraFile()
         hb_setFixed()
         hb_setIdleRepeat()
         hb_setInsert()
         hb_setIntensity()
         hb_setPath()
         hb_setMargin()
         hb_setMBlockSize()
         hb_setMCenter()
         hb_setMessage()
         hb_setMFileExt()
         hb_setOptimize()
         hb_setPrinter()
         hb_setPrintFile()
         hb_setScoreBoard()
         hb_setScrollBreak()
         hb_setSoftSeek()
         hb_setStrictRead()
         hb_setTypeAhead()
         hb_setUnique()
         hb_setFileCase()
         hb_setDirCase()
         hb_setDirSeparator()
         hb_setVideoMode()
         hb_setWrap()
         hb_setDBFLockScheme()
         hb_setHardCommit()
         hb_setForceOpt()
         hb_setDefExtension()
         hb_setEOL()
         hb_setTrimFileName()
      This is compatible with recent modifications by Andi Jahja
      in xHarbour.
This commit is contained in:
Przemyslaw Czerpak
2007-09-24 00:09:15 +00:00
parent 6125a8cbfb
commit f98cc37e3c
6 changed files with 464 additions and 31 deletions

View File

@@ -8,6 +8,83 @@
2002-12-01 13:30 UTC+0100 Foo Bar <foo.bar@foobar.org>
*/
2007-09-24 02:05 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/ole2/win32ole.prg
* changed Invoke() method to work with core code compiled without
HB_COMPAT_XHB
* harbour/source/rtl/gttrm/gttrm.c
* harbour/source/rdd/dbcmd.c
* code clean-up
* harbour/include/hbset.h
* harbour/source/rtl/set.c
* code clean-up
+ added functions to access set parameters:
hb_setAltHan()
hb_setCentury()
hb_setExtraHan()
hb_setPrintHan()
hb_setAlternate()
hb_setAltFile()
hb_setAutOpen()
hb_setAutOrder()
hb_setAutoShare()
hb_setBell()
hb_setCancel()
hb_setColor()
hb_setConfirm()
hb_setConsole()
hb_setDateFormat()
hb_setDebug()
hb_setDecimals()
hb_setDefault()
hb_setDeleted()
hb_setDelimChars()
hb_setDelimiters()
hb_setDevice()
hb_setEOF()
hb_setEpoch()
hb_setEscape()
hb_setEventMask()
hb_setExact()
hb_setExclusive()
hb_setExit()
hb_setExtra()
hb_setExtraFile()
hb_setFixed()
hb_setIdleRepeat()
hb_setInsert()
hb_setIntensity()
hb_setPath()
hb_setMargin()
hb_setMBlockSize()
hb_setMCenter()
hb_setMessage()
hb_setMFileExt()
hb_setOptimize()
hb_setPrinter()
hb_setPrintFile()
hb_setScoreBoard()
hb_setScrollBreak()
hb_setSoftSeek()
hb_setStrictRead()
hb_setTypeAhead()
hb_setUnique()
hb_setFileCase()
hb_setDirCase()
hb_setDirSeparator()
hb_setVideoMode()
hb_setWrap()
hb_setDBFLockScheme()
hb_setHardCommit()
hb_setForceOpt()
hb_setDefExtension()
hb_setEOL()
hb_setTrimFileName()
This is compatible with recent modifications by Andi Jahja
in xHarbour.
2007-09-22 21:43 UTC-0500 Teo Fonrouge (teo/at/windtelsoft/dot/com)
* contrib/tip/thtml.prg
* contrib/tip/cgi.prg

View File

@@ -337,11 +337,9 @@ METHOD GetActiveObject( cClass ) CLASS TOleAuto
RETURN Self
//--------------------------------------------------------------------
METHOD Invoke( ... ) CLASS TOleAuto
METHOD Invoke( cMethod, ... ) CLASS TOleAuto
LOCAL cMethod := HB_aParams()[1]
RETURN HB_ExecFromArray( Self, cMethod, aDel( HB_aParams(), 1, .T. ) )
RETURN HB_ExecFromArray( Self, cMethod, { ... } )
//--------------------------------------------------------------------
METHOD OleCollection( xIndex, xValue ) CLASS TOleAuto

View File

@@ -216,7 +216,6 @@ typedef struct
extern void hb_setInitialize( void );
extern void hb_setRelease( void );
extern HB_PATHNAMES * hb_setGetFirstSetPath( void );
typedef enum
{
@@ -241,6 +240,70 @@ extern int hb_setListenerRemove( int );
#define hb_setGetNL( set ) ( ( long ) hb_set.set )
#define hb_setGetL( set ) ( ( BOOL ) hb_set.set )
extern HB_EXPORT HB_PATHNAMES * hb_setGetFirstSetPath( void );
extern HB_EXPORT FHANDLE hb_setAltHan( void );
extern HB_EXPORT BOOL hb_setCentury( void );
extern HB_EXPORT FHANDLE hb_setExtraHan( void );
extern HB_EXPORT FHANDLE hb_setPrintHan( void );
extern HB_EXPORT BOOL hb_setAlternate( void );
extern HB_EXPORT char * hb_setAltFile( void );
extern HB_EXPORT BOOL hb_setAutOpen( void );
extern HB_EXPORT int hb_setAutOrder( void );
extern HB_EXPORT int hb_setAutoShare( void );
extern HB_EXPORT BOOL hb_setBell( void );
extern HB_EXPORT BOOL hb_setCancel( void );
extern HB_EXPORT char * hb_setColor( void );
extern HB_EXPORT BOOL hb_setConfirm( void );
extern HB_EXPORT BOOL hb_setConsole( void );
extern HB_EXPORT char * hb_setDateFormat( void );
extern HB_EXPORT BOOL hb_setDebug( void );
extern HB_EXPORT int hb_setDecimals( void );
extern HB_EXPORT char * hb_setDefault( void );
extern HB_EXPORT BOOL hb_setDeleted( void );
extern HB_EXPORT char * hb_setDelimChars( void );
extern HB_EXPORT BOOL hb_setDelimiters( void );
extern HB_EXPORT char * hb_setDevice( void );
extern HB_EXPORT BOOL hb_setEOF( void );
extern HB_EXPORT int hb_setEpoch( void );
extern HB_EXPORT BOOL hb_setEscape( void );
extern HB_EXPORT int hb_setEventMask( void );
extern HB_EXPORT BOOL hb_setExact( void );
extern HB_EXPORT BOOL hb_setExclusive( void );
extern HB_EXPORT BOOL hb_setExit( void );
extern HB_EXPORT BOOL hb_setExtra( void );
extern HB_EXPORT char * hb_setExtraFile( void );
extern HB_EXPORT BOOL hb_setFixed( void );
extern HB_EXPORT BOOL hb_setIdleRepeat( void );
extern HB_EXPORT BOOL hb_setInsert( void );
extern HB_EXPORT BOOL hb_setIntensity( void );
extern HB_EXPORT char * hb_setPath( void );
extern HB_EXPORT int hb_setMargin( void );
extern HB_EXPORT int hb_setMBlockSize( void );
extern HB_EXPORT BOOL hb_setMCenter( void );
extern HB_EXPORT int hb_setMessage( void );
extern HB_EXPORT char * hb_setMFileExt( void );
extern HB_EXPORT BOOL hb_setOptimize( void );
extern HB_EXPORT BOOL hb_setPrinter( void );
extern HB_EXPORT char * hb_setPrintFile( void );
extern HB_EXPORT BOOL hb_setScoreBoard( void );
extern HB_EXPORT BOOL hb_setScrollBreak( void );
extern HB_EXPORT BOOL hb_setSoftSeek( void );
extern HB_EXPORT BOOL hb_setStrictRead( void );
extern HB_EXPORT int hb_setTypeAhead( void );
extern HB_EXPORT BOOL hb_setUnique( void );
extern HB_EXPORT int hb_setFileCase( void );
extern HB_EXPORT int hb_setDirCase( void );
extern HB_EXPORT int hb_setDirSeparator( void );
extern HB_EXPORT int hb_setVideoMode( void );
extern HB_EXPORT BOOL hb_setWrap( void );
extern HB_EXPORT int hb_setDBFLockScheme( void );
extern HB_EXPORT BOOL hb_setHardCommit( void );
extern HB_EXPORT BOOL hb_setForceOpt( void );
extern HB_EXPORT BOOL hb_setDefExtension( void );
extern HB_EXPORT char * hb_setEOL( void );
extern HB_EXPORT BOOL hb_setTrimFileName( void );
HB_EXTERN_END
#endif /* HB_SET_H_ */

View File

@@ -2229,7 +2229,8 @@ HB_FUNC( __DBARRANGE )
dbSortInfo.dbtri.dbsci.fIgnoreFilter =
dbSortInfo.dbtri.dbsci.fLast =
dbSortInfo.dbtri.dbsci.fIgnoreDuplicates =
dbSortInfo.dbtri.dbsci.fBackward = FALSE;
dbSortInfo.dbtri.dbsci.fBackward =
dbSortInfo.dbtri.dbsci.fOptimized = FALSE;
dbSortInfo.dbtri.dbsci.fIncludeDeleted = TRUE;
pFields = hb_param( 8, HB_IT_ARRAY );

View File

@@ -336,6 +336,8 @@ typedef struct
struct termios saved_TIO, curr_TIO;
#endif
double dToneSeconds;
/* input events */
keyTab *pKeyTab;
int key_flag;
@@ -384,8 +386,6 @@ static const char * s_szMouseOn = "\033[?1001s\033[?1002h";
/* disable mouse tracking & restore old hilit tracking */
static const char * s_szMouseOff = "\033[?1002l\033[?1001r";
static const BYTE s_szBell[] = { HB_CHAR_BEL, 0 };
static BYTE * s_szCrLf;
static ULONG s_ulCrLf;
/* The tables below are indexed by internal key value,
* It cause that we don't have to make any linear scans
@@ -1958,7 +1958,6 @@ static void hb_gt_trm_AnsiBell( void )
static void hb_gt_trm_AnsiTone( double dFrequency, double dDuration )
{
static double s_dLastSeconds = 0;
double dCurrentSeconds;
HB_TRACE(HB_TR_DEBUG, ("hb_gt_trm_AnsiTone(%lf, %lf)", dFrequency, dDuration));
@@ -1969,10 +1968,11 @@ static void hb_gt_trm_AnsiTone( double dFrequency, double dDuration )
/* succession leading to BEL hell on the terminal */
dCurrentSeconds = hb_dateSeconds();
if( dCurrentSeconds < s_dLastSeconds || dCurrentSeconds - s_dLastSeconds > 0.5 )
if( dCurrentSeconds < s_termState.dToneSeconds ||
dCurrentSeconds - s_termState.dToneSeconds > 0.5 )
{
hb_gt_trm_AnsiBell();
s_dLastSeconds = dCurrentSeconds;
s_termState.dToneSeconds = dCurrentSeconds;
}
HB_SYMBOL_UNUSED( dFrequency );
@@ -2794,9 +2794,6 @@ static void hb_gt_trm_Init( FHANDLE hFilenoStdin, FHANDLE hFilenoStdout, FHANDLE
HB_TRACE(HB_TR_DEBUG, ("hb_gt_trm_Init(%p,%p,%p)", hFilenoStdin, hFilenoStdout, hFilenoStderr));
s_szCrLf = (BYTE *) hb_conNewLine();
s_ulCrLf = strlen( (char *) s_szCrLf );
memset( &s_termState, 0, sizeof( s_termState ) );
s_termState.hFilenoStdin = hFilenoStdin;
s_termState.hFilenoStdout = hFilenoStdout;

View File

@@ -921,8 +921,7 @@ void hb_setInitialize( void )
hb_strncpy( hb_set.HB_SET_COLOR, "W/N,N/W,N/N,N/N,N/W", CLR_STRLEN );
hb_set.HB_SET_CONFIRM = FALSE;
hb_set.HB_SET_CONSOLE = TRUE;
hb_set.HB_SET_DATEFORMAT = ( char * ) hb_xgrab( 9 );
memcpy( hb_set.HB_SET_DATEFORMAT, "mm/dd/yy", 9 );
hb_set.HB_SET_DATEFORMAT = hb_strdup( "mm/dd/yy" );
/*
* Tests shows that Clipper has two different flags to control ALT+D
* and ALTD() behavior and on startup these flags are not synchronized.
@@ -940,14 +939,11 @@ void hb_setInitialize( void )
/* hb_set.HB_SET_DEBUG = FALSE; */
hb_set.HB_SET_DEBUG = hb_dynsymFind( "__DBGENTRY" ) ? TRUE : FALSE;
hb_set.HB_SET_DECIMALS = 2;
hb_set.HB_SET_DEFAULT = ( char * ) hb_xgrab( 1 );
hb_set.HB_SET_DEFAULT[ 0 ] = '\0';
hb_set.HB_SET_DEFAULT = hb_strdup( "" );
hb_set.HB_SET_DELETED = FALSE;
hb_set.HB_SET_DELIMCHARS = ( char * ) hb_xgrab( 3 );
memcpy( hb_set.HB_SET_DELIMCHARS, "::", 3 );
hb_set.HB_SET_DELIMCHARS = hb_strdup( "::" );
hb_set.HB_SET_DELIMITERS = FALSE;
hb_set.HB_SET_DEVICE = ( char * ) hb_xgrab( 7 );
memcpy( hb_set.HB_SET_DEVICE, "SCREEN", 7 );
hb_set.HB_SET_DEVICE = hb_strdup( "SCREEN" );
#if defined(OS_UNIX_COMPATIBLE)
hb_set.HB_SET_EOF = FALSE;
#else
@@ -972,18 +968,14 @@ void hb_setInitialize( void )
hb_set.HB_SET_MBLOCKSIZE = 0;
hb_set.HB_SET_MCENTER = FALSE;
hb_set.HB_SET_MESSAGE = 0;
hb_set.HB_SET_MFILEEXT = ( char * ) hb_xgrab( 1 );
hb_set.HB_SET_MFILEEXT[ 0 ] = '\0';
hb_set.HB_SET_MFILEEXT = hb_strdup( "" );
hb_set.HB_SET_OPTIMIZE = TRUE;
hb_set.HB_SET_PATH = ( char * ) hb_xgrab( 1 );
hb_set.HB_SET_PATH[ 0 ] = '\0';
hb_set.HB_SET_PATH = hb_strdup( "" );
hb_set.HB_SET_PRINTER = FALSE;
#ifdef HB_OS_UNIX
hb_set.HB_SET_PRINTFILE = ( char * ) hb_xgrab( 5 );
memcpy( hb_set.HB_SET_PRINTFILE, "|lpr", 5 ); /* Default printer device */
hb_set.HB_SET_PRINTFILE = hb_strdup( "|lpr" ); /* Default printer device */
#else
hb_set.HB_SET_PRINTFILE = ( char * ) hb_xgrab( 4 );
memcpy( hb_set.HB_SET_PRINTFILE, "PRN", 4 ); /* Default printer device */
hb_set.HB_SET_PRINTFILE = hb_strdup( "PRN" ); /* Default printer device */
#endif
hb_set.hb_set_printhan = FS_ERROR;
hb_set.HB_SET_SCOREBOARD = TRUE;
@@ -1098,7 +1090,312 @@ int hb_setListenerRemove( int listener )
return listener;
}
HB_PATHNAMES * hb_setGetFirstSetPath( void )
HB_EXPORT HB_PATHNAMES * hb_setGetFirstSetPath( void )
{
return sp_set_path;
}
HB_EXPORT FHANDLE hb_setAltHan( void )
{
return hb_set.hb_set_althan;
}
HB_EXPORT BOOL hb_setCentury( void )
{
return hb_set.hb_set_century;
}
HB_EXPORT FHANDLE hb_setExtraHan( void )
{
return hb_set.hb_set_extrahan;
}
HB_EXPORT FHANDLE hb_setPrintHan( void )
{
return hb_set.hb_set_printhan;
}
HB_EXPORT BOOL hb_setAlternate( void )
{
return hb_set.HB_SET_ALTERNATE;
}
HB_EXPORT char * hb_setAltFile( void )
{
return hb_set.HB_SET_ALTFILE;
}
HB_EXPORT BOOL hb_setAutOpen( void )
{
return hb_set.HB_SET_AUTOPEN;
}
HB_EXPORT int hb_setAutOrder( void )
{
return hb_set.HB_SET_AUTORDER;
}
HB_EXPORT int hb_setAutoShare( void )
{
return hb_set.HB_SET_AUTOSHARE;
}
HB_EXPORT BOOL hb_setBell( void )
{
return hb_set.HB_SET_BELL;
}
HB_EXPORT BOOL hb_setCancel( void )
{
return hb_set.HB_SET_CANCEL;
}
HB_EXPORT char * hb_setColor( void )
{
return hb_set.HB_SET_COLOR;
}
HB_EXPORT BOOL hb_setConfirm( void )
{
return hb_set.HB_SET_CONFIRM;
}
HB_EXPORT BOOL hb_setConsole( void )
{
return hb_set.HB_SET_CONSOLE;
}
HB_EXPORT char * hb_setDateFormat( void )
{
return hb_set.HB_SET_DATEFORMAT;
}
HB_EXPORT BOOL hb_setDebug( void )
{
return hb_set.HB_SET_DEBUG;
}
HB_EXPORT int hb_setDecimals( void )
{
return hb_set.HB_SET_DECIMALS;
}
HB_EXPORT char * hb_setDefault( void )
{
return hb_set.HB_SET_DEFAULT;
}
HB_EXPORT BOOL hb_setDeleted( void )
{
return hb_set.HB_SET_DELETED;
}
HB_EXPORT char * hb_setDelimChars( void )
{
return hb_set.HB_SET_DELIMCHARS;
}
HB_EXPORT BOOL hb_setDelimiters( void )
{
return hb_set.HB_SET_DELIMITERS;
}
HB_EXPORT char * hb_setDevice( void )
{
return hb_set.HB_SET_DEVICE;
}
HB_EXPORT BOOL hb_setEOF( void )
{
return hb_set.HB_SET_EOF;
}
HB_EXPORT int hb_setEpoch( void )
{
return hb_set.HB_SET_EPOCH;
}
HB_EXPORT BOOL hb_setEscape( void )
{
return hb_set.HB_SET_ESCAPE;
}
HB_EXPORT int hb_setEventMask( void )
{
return hb_set.HB_SET_EVENTMASK;
}
HB_EXPORT BOOL hb_setExact( void )
{
return hb_set.HB_SET_EXACT;
}
HB_EXPORT BOOL hb_setExclusive( void )
{
return hb_set.HB_SET_EXCLUSIVE;
}
HB_EXPORT BOOL hb_setExit( void )
{
return hb_set.HB_SET_EXIT;
}
HB_EXPORT BOOL hb_setExtra( void )
{
return hb_set.HB_SET_EXTRA;
}
HB_EXPORT char * hb_setExtraFile( void )
{
return hb_set.HB_SET_EXTRAFILE;
}
HB_EXPORT BOOL hb_setFixed( void )
{
return hb_set.HB_SET_FIXED;
}
HB_EXPORT BOOL hb_setIdleRepeat( void )
{
return hb_set.HB_SET_IDLEREPEAT;
}
HB_EXPORT BOOL hb_setInsert( void )
{
return hb_set.HB_SET_INSERT;
}
HB_EXPORT BOOL hb_setIntensity( void )
{
return hb_set.HB_SET_INTENSITY;
}
HB_EXPORT char * hb_setPath( void )
{
return hb_set.HB_SET_PATH;
}
HB_EXPORT int hb_setMargin( void )
{
return hb_set.HB_SET_MARGIN;
}
HB_EXPORT int hb_setMBlockSize( void )
{
return hb_set.HB_SET_MBLOCKSIZE;
}
HB_EXPORT BOOL hb_setMCenter( void )
{
return hb_set.HB_SET_MCENTER;
}
HB_EXPORT int hb_setMessage( void )
{
return hb_set.HB_SET_MESSAGE;
}
HB_EXPORT char * hb_setMFileExt( void )
{
return hb_set.HB_SET_MFILEEXT;
}
HB_EXPORT BOOL hb_setOptimize( void )
{
return hb_set.HB_SET_OPTIMIZE;
}
HB_EXPORT BOOL hb_setPrinter( void )
{
return hb_set.HB_SET_PRINTER;
}
HB_EXPORT char * hb_setPrintFile( void )
{
return hb_set.HB_SET_PRINTFILE;
}
HB_EXPORT BOOL hb_setScoreBoard( void )
{
return hb_set.HB_SET_SCOREBOARD;
}
HB_EXPORT BOOL hb_setScrollBreak( void )
{
return hb_set.HB_SET_SCROLLBREAK;
}
HB_EXPORT BOOL hb_setSoftSeek( void )
{
return hb_set.HB_SET_SOFTSEEK;
}
HB_EXPORT BOOL hb_setStrictRead( void )
{
return hb_set.HB_SET_STRICTREAD;
}
HB_EXPORT int hb_setTypeAhead( void )
{
return hb_set.HB_SET_TYPEAHEAD;
}
HB_EXPORT BOOL hb_setUnique( void )
{
return hb_set.HB_SET_UNIQUE;
}
HB_EXPORT int hb_setFileCase( void )
{
return hb_set.HB_SET_FILECASE;
}
HB_EXPORT int hb_setDirCase( void )
{
return hb_set.HB_SET_DIRCASE;
}
HB_EXPORT int hb_setDirSeparator( void )
{
return hb_set.HB_SET_DIRSEPARATOR;
}
HB_EXPORT int hb_setVideoMode( void )
{
return hb_set.HB_SET_VIDEOMODE;
}
HB_EXPORT BOOL hb_setWrap( void )
{
return hb_set.HB_SET_WRAP;
}
HB_EXPORT int hb_setDBFLockScheme( void )
{
return hb_set.HB_SET_DBFLOCKSCHEME;
}
HB_EXPORT BOOL hb_setHardCommit( void )
{
return hb_set.HB_SET_HARDCOMMIT;
}
HB_EXPORT BOOL hb_setForceOpt( void )
{
return hb_set.HB_SET_FORCEOPT;
}
HB_EXPORT BOOL hb_setDefExtension( void )
{
return hb_set.HB_SET_DEFEXTENSIONS;
}
HB_EXPORT char * hb_setEOL( void )
{
return hb_set.HB_SET_EOL;
}
HB_EXPORT BOOL hb_setTrimFileName( void )
{
return hb_set.HB_SET_TRIMFILENAME;
}