20000426-00:22 GMT+1 Victor Szakats <info@szelvesz.hu>

This commit is contained in:
Viktor Szakats
2000-04-25 22:23:18 +00:00
parent 6017b70035
commit 8b84b0a6ea
5 changed files with 47 additions and 10 deletions

View File

@@ -1,3 +1,20 @@
20000426-00:22 GMT+1 Victor Szakats <info@szelvesz.hu>
* source/rtl/xsavescr.c
* ChangeLog
! Fixed NOTE and ChangeLog entry
* makefile.bc
! -DHB_OBJ_... default switch removed.
* source/rtl/transform.c
+ PF_STRING
+ support for @S picture
! Now five more HBTESTs pass.
* source/vm/hvm.c
! windows.h inclusion standardized.
2000-04-25 17:40 GMT-4 David G. Holm <dholm@jsd-llc.com>
* include/hbcomp.h
@@ -101,6 +118,7 @@
* source/rtl/Makefile
* makefile.bc
* makefile.vc
% __SAVESCREEN()/__RESTSCREEN() rewritten in C.
20000425-03:49 GMT+1 Victor Szakats <info@szelvesz.hu>

View File

@@ -42,6 +42,8 @@ LIB_DIR = lib\b16
!else
CC = bcc32
# NOTE: Using TASM for some reason, this should be normally TASM32.
# I'll leave it to TASM until a better solution is found
AS = tasm
BIN_DIR = bin\b32
@@ -81,7 +83,7 @@ HBPP_DIR = utils\hbpp
# C compiler definition and C flags. These should never have to change.
#
CFLAGS = -I$(INCLUDE_DIR) -d $(C_USR) $(CFLAGS) -DHARBOUR_OBJ_GENERATION
CFLAGS = -I$(INCLUDE_DIR) -d $(C_USR) $(CFLAGS)
CLIBFLAGS = -c $(CFLAGS) $(CLIBFLAGS)
CLIBFLAGSDEBUG = -v $(CLIBFLAGS)
HARBOURFLAGS = -i$(INCLUDE_DIR) -n -q0 -w -es2 -gc0 $(PRG_USR) $(HARBOURFLAGS)

View File

@@ -65,6 +65,7 @@
#define PF_EXCHANG 0x0100 /* @E. Also means exchange . and , */
#define PF_EMPTY 0x0200 /* @Z */
#define PF_NUMDATE 0x0400 /* Internal flag. Ignore decimal dot */
#define PF_STRING 0x0800 /* @S */
/*
PictFunc -> Analyze function flags and return binary flags bits
@@ -125,6 +126,9 @@ static USHORT PictFunc( char ** pszPic, ULONG * pulPicLen, ULONG * pulPicStart )
case 'R':
uiPicFlags |= PF_REMAIN;
break;
case 'S':
uiPicFlags |= PF_STRING;
break;
case 'X':
uiPicFlags |= PF_DEBIT;
break;
@@ -360,6 +364,23 @@ HB_FUNC( TRANSFORM )
szResult = ( char * ) hb_xgrab( ulExpLen + ulPicLen );
ulResultPos = 0;
/* [jlalin] */
if( uiPicFlags & PF_STRING )
{
char * szPic2 = hb_itemGetCPtr( pPic );
int ulLen = atol( szPic2 + 2 );
if( ulLen & ( ulLen <= ulExpLen ) )
{
memcpy( szResult, szExp, ulLen );
szResult[ ulLen ] = '\0';
ulExpPos = ulLen - 1;
}
if( uiPicFlags & PF_UPPER )
hb_strupr( szResult );
}
/* Support date function for strings */
if( uiPicFlags & PF_DATE )
{

View File

@@ -70,7 +70,8 @@ HB_FUNC( __XSAVESCREEN )
}
/* NOTE: There's no check about the screen size on restore, so this will
fail if the user has changed the screen resolution before calling it.
fail if the user has changed the screen resolution between calling
save and restore.
[vszakats] */
HB_FUNC( __XRESTSCREEN )

View File

@@ -49,8 +49,7 @@
*
*/
/* NOTE: Temporary name [vszakats] */
#ifdef HB_INCLUDE_WINEXCHANDLER
#if defined(HARBOUR_OBJ_GENERATION) || defined(HB_INCLUDE_WINEXCHANDLER)
#define HB_OS_WIN_32_USED
#endif
@@ -69,11 +68,6 @@
#include "hbpcode.h"
#include "hbset.h"
#ifdef HB_OS_WIN_32
/* do not include it on U*ix and pure DOS */
#include <windows.h>
#endif
typedef struct _SYMBOLS
{
PHB_SYMB pModuleSymbols; /* pointer to a one module own symbol table */
@@ -4122,4 +4116,5 @@ WINBASEAPI LONG WINAPI UnhandledExceptionFilter( struct _EXCEPTION_POINTERS * Ex
return EXCEPTION_EXECUTE_HANDLER; /* EXCEPTION_CONTINUE_SEARCH; */
}
#endif
#endif