2009-10-26 14:18 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

* src/vm/maindllp.c
    ! Using hb_getProcAddress() instead of GetProcAddress().
      Idea submitted to the list, I didn't make any tests, so 
      review it and change it as needed.

  * contrib/xhb/hbcompat.ch
    + Added HB_GTI_CLIPBOARDPAST related stuff.
This commit is contained in:
Viktor Szakats
2009-10-26 13:19:53 +00:00
parent 48b227725b
commit b27ce56c5e
3 changed files with 82 additions and 71 deletions

View File

@@ -17,6 +17,15 @@
past entries belonging to author(s): Viktor Szakats.
*/
2009-10-26 14:18 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/maindllp.c
! Using hb_getProcAddress() instead of GetProcAddress().
Idea submitted to the list, I didn't make any tests, so
review it and change it as needed.
* contrib/xhb/hbcompat.ch
+ Added HB_GTI_CLIPBOARDPAST related stuff.
2009-10-25 21:04 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/generator/hbqtgen.prg
@@ -314,7 +323,6 @@
Now Harbour has a native GUI framework we can build upon our castles.
2009-10-24 00:43 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/generator/hbqtgen.prg
@@ -840,7 +848,6 @@
! Updated to recent GC upgrade plus more classes brought to the GC.
2009-10-23 21:01 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/hbbffnc.c
+ added support for 3-rd parameter <lRaw> in hb_blowfishEncrypt() and

View File

@@ -244,6 +244,8 @@
#define HB_SYMBOL_UNUSED( symbol ) ( symbol := ( symbol ) )
#endif
#define HB_GTI_CLIPBOARDPASTE HB_GTI_CLIPBOARDPAST
#else
#if defined( __PLATFORM__WINDOWS ) .AND. !defined( __PLATFORM__Windows )
@@ -262,7 +264,7 @@
#xtranslate gtSetClipboard(<x>) => hb_gtInfo( HB_GTI_CLIPBOARDDATA, <x> )
#xtranslate gtGetClipboard() => hb_gtInfo( HB_GTI_CLIPBOARDDATA )
#xtranslate gtGetClipBoardSize() => Len( hb_gtInfo( HB_GTI_CLIPBOARDDATA ) )
#xtranslate gtPasteClipBoard([<n>]) => hb_gtInfo( HB_GTI_CLIPBOARDPAST )
#xtranslate gtPasteClipBoard([<n>]) => hb_gtInfo( HB_GTI_CLIPBOARDPASTE )
#xtranslate gtProcessMessages() => NextKey()
#xtranslate gfxPrimitive([<x,...>]) => hb_gfxPrimitive(<x>)
#xtranslate gfxText([<x,...>]) => hb_gfxText(<x>)
@@ -513,6 +515,8 @@
#command SET TRIMFILENAME <x:ON,OFF,&> => Set( _SET_TRIMFILENAME, <(x)> )
#command SET TIME FORMAT [TO] <f> => Set( _SET_TIMEFORMAT, <f> )
#define HB_GTI_CLIPBOARDPAST HB_GTI_CLIPBOARDPASTE
#endif
#endif /* __HARBOUR__ */

View File

@@ -202,8 +202,8 @@ void hb_vmExecute( const BYTE * pCode, PHB_SYMB pSymbols )
const char * hb_parvc( int iParam, ... )
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParC = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvc" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pParC = hb_getProcAddress( HBTEXT( "_hb_parvc" ) );
if( pExtIsArray && pParC )
{
@@ -227,135 +227,135 @@ const char * hb_parvc( int iParam, ... )
PHB_ITEM hb_param( int iParam, long lMask ) /* retrieve a generic parameter */
{
FARPROC pParam = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_param" ) );
FARPROC pParam = hb_getProcAddress( HBTEXT( "_hb_param" ) );
return pParam ? ( ( HB_PARAM ) pParam )( iParam, lMask ) : NULL;
}
PHB_ITEM hb_paramError( int iParam ) /* Returns either the generic parameter or a NIL item if param not provided */
{
FARPROC pParamError = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_paramError" ) );
FARPROC pParamError = hb_getProcAddress( HBTEXT( "_hb_paramError" ) );
return pParamError ? ( ( HB_PARAMERROR ) pParamError )( iParam ) : NULL;
}
int hb_pcount( void ) /* returns the number of suplied parameters */
{
FARPROC pCounts = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_pcount" ) );
FARPROC pCounts = hb_getProcAddress( HBTEXT( "_hb_pcount" ) );
return pCounts ? ( ( HB_PCOUNTS ) pCounts )() : 0;
}
void hb_retc( const char * szText ) /* returns a string */
{
FARPROC pRetc = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retc" ) );
FARPROC pRetc = hb_getProcAddress( HBTEXT( "_hb_retc" ) );
if( pRetc )
( ( HB_RETC ) pRetc )( szText );
}
void hb_retclen( const char * szText, ULONG ulLen ) /* returns a string with a specific length */
{
FARPROC pRetclen = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retclen" ) );
FARPROC pRetclen = hb_getProcAddress( HBTEXT( "_hb_retclen" ) );
if( pRetclen )
( ( HB_RETCLEN ) pRetclen )( szText, ulLen );
}
void hb_retds( const char * szDate ) /* returns a date, must use yyyymmdd format */
{
FARPROC pRetds = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retds" ) );
FARPROC pRetds = hb_getProcAddress( HBTEXT( "_hb_retds" ) );
if( pRetds )
( ( HB_RETDS ) pRetds )( szDate );
}
void hb_retd( int iYear, int iMonth, int iDay ) /* returns a date */
{
FARPROC pRetd = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retd" ) );
FARPROC pRetd = hb_getProcAddress( HBTEXT( "_hb_retd" ) );
if( pRetd )
( ( HB_RETD ) pRetd )( iYear, iMonth, iDay );
}
void hb_retdl( long lJulian ) /* returns a long value as a julian date */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retdl" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retdl" ) );
if( pRet )
( ( HB_RETDL ) pRet )( lJulian );
}
void hb_retl( int iTrueFalse ) /* returns a logical integer */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retl" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retl" ) );
if( pRet )
( ( HB_RETDL ) pRet )( iTrueFalse );
}
void hb_retnd( double dNumber ) /* returns a double */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retnd" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retnd" ) );
if( pRet )
( ( HB_RETND ) pRet )( dNumber );
}
void hb_retni( int iNumber ) /* returns a integer number */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retni" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retni" ) );
if( pRet )
( ( HB_RETNI ) pRet )( iNumber );
}
void hb_retnl( long lNumber ) /* returns a long number */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retnl" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retnl" ) );
if( pRet )
( ( HB_RETNL ) pRet )( lNumber );
}
void hb_retnlen( double dNumber, int iWidth, int iDec ) /* returns a double, with specific width and decimals */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retnlen" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retnlen" ) );
if( pRet )
( ( HB_RETNLEN ) pRet )( dNumber, iWidth, iDec );
}
void hb_retndlen( double dNumber, int iWidth, int iDec ) /* returns a double, with specific width and decimals */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retndlen" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retndlen" ) );
if( pRet )
( ( HB_RETNDLEN ) pRet )( dNumber, iWidth, iDec );
}
void hb_retnilen( int iNumber, int iWidth ) /* returns a integer number, with specific width */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retnilen" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retnilen" ) );
if( pRet )
( ( HB_RETNILEN ) pRet )( iNumber, iWidth );
}
void hb_retnllen( long lNumber, int iWidth ) /* returns a long number, with specific width */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_retnilen" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_retnilen" ) );
if( pRet )
( ( HB_RETNLLEN ) pRet )( lNumber, iWidth );
}
void hb_reta( ULONG ulLen ) /* returns an array with a specific length */
{
FARPROC pRet = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_reta" ) );
FARPROC pRet = hb_getProcAddress( HBTEXT( "_hb_reta" ) );
if( pRet )
( ( HB_RETA ) pRet )( ulLen );
}
ULONG hb_parinfa( int iParamNum, ULONG uiArrayIndex ) /* retrieve length or element type of an array parameter */
{
FARPROC pParinfa = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parinfa" ) );
FARPROC pParinfa = hb_getProcAddress( HBTEXT( "_hb_parinfa" ) );
return pParinfa ? ( ( HB_PARINFA ) pParinfa )( iParamNum, uiArrayIndex ) : 0;
}
ULONG hb_parinfo( int iParam ) /* Determine the param count or data type */
{
FARPROC pParinfo = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parinfo" ) );
FARPROC pParinfo = hb_getProcAddress( HBTEXT( "_hb_parinfo" ) );
return pParinfo ? ( ( HB_PARINFO ) pParinfo )( iParam ) : 0;
}
ULONG hb_parvclen( int iParam, ... ) /* retrieve a string parameter length */
{
FARPROC pParC = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvclen" ) );
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParC = hb_getProcAddress( HBTEXT( "_hb_parvclen" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
if( pExtIsArray && pParC )
{
if( ( ( EXT_IS_ARRAY ) pExtIsArray ) ( iParam ) )
@@ -378,8 +378,8 @@ ULONG hb_parvclen( int iParam, ... ) /* retrieve a string parameter length */
ULONG hb_parvcsiz( int iParam, ... )/* retrieve a by-reference string parameter length, including terminator */
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParcSiz = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvcsiz" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pParcSiz = hb_getProcAddress( HBTEXT( "_hb_parvcsiz" ) );
if( pExtIsArray && pParcSiz )
{
@@ -403,8 +403,8 @@ ULONG hb_parvcsiz( int iParam, ... )/* retrieve a by-reference string parameter
const char * hb_parvds( int iParam, ... ) /* retrieve a date as a string yyyymmdd */
{
FARPROC pParDs = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvds" ) );
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParDs = hb_getProcAddress( HBTEXT( "_hb_parvds" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
if( pExtIsArray && pParDs )
{
@@ -428,8 +428,8 @@ const char * hb_parvds( int iParam, ... ) /* retrieve a date as a string yyyymmd
char * hb_parvdsbuff( char * szDate, int iParam, ... ) /* retrieve a date as a string yyyymmdd */
{
FARPROC pParDsBuff = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvdsbuff" ) );
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParDsBuff = hb_getProcAddress( HBTEXT( "_hb_parvdsbuff" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
if( pExtIsArray && pParDsBuff )
{
@@ -454,8 +454,8 @@ char * hb_parvdsbuff( char * szDate, int iParam, ... ) /* retrieve a date as a s
int hb_parvl( int iParam, ... ) /* retrieve a logical parameter as an int */
{
/* int iReturn; */
FARPROC pParL = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvl" ) );
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParL = hb_getProcAddress( HBTEXT( "_hb_parvl" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
if( pExtIsArray && pParL )
{
@@ -479,8 +479,8 @@ int hb_parvl( int iParam, ... ) /* retrieve a logical parameter as an int */
double hb_parvnd( int iParam, ... ) /* retrieve a numeric parameter as a double */
{
FARPROC pParNd = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvnd" ) );
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParNd = hb_getProcAddress( HBTEXT( "_hb_parvnd" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
if( pExtIsArray && pParNd )
{
@@ -505,8 +505,8 @@ double hb_parvnd( int iParam, ... ) /* retrieve a numeric parameter as a double
int hb_parvni( int iParam, ... ) /* retrieve a numeric parameter as a integer */
{
/* int iReturn; */
FARPROC pParNi = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvni" ) );
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParNi = hb_getProcAddress( HBTEXT( "_hb_parvni" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
if( pExtIsArray && pParNi )
{
@@ -530,8 +530,8 @@ int hb_parvni( int iParam, ... ) /* retrieve a numeric parameter as a integer */
long hb_parvnl( int iParam, ... ) /* retrieve a numeric parameter as a long */
{
FARPROC pParNl = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_parvnl" ) );
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pParNl = hb_getProcAddress( HBTEXT( "_hb_parvnl" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
if( pExtIsArray && pParNl )
{
@@ -555,8 +555,8 @@ long hb_parvnl( int iParam, ... ) /* retrieve a numeric parameter as a long */
int hb_storvc( const char * szText, int iParam, ... )
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorC = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_storvc" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorC = hb_getProcAddress( HBTEXT( "_hb_storvc" ) );
if( pExtIsArray && pStorC )
{
@@ -584,8 +584,8 @@ int hb_storvc( const char * szText, int iParam, ... )
int hb_storvclen( const char * szText, ULONG ulLen, int iParam, ... )
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorC = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_storvclen" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorC = hb_getProcAddress( HBTEXT( "_hb_storvclen" ) );
if( pExtIsArray && pStorC )
{
@@ -613,8 +613,8 @@ int hb_storvclen( const char * szText, ULONG ulLen, int iParam, ... )
int hb_storvds( const char * szDate, int iParam, ... )
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorDs = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_storvds" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorDs = hb_getProcAddress( HBTEXT( "_hb_storvds" ) );
if( pExtIsArray && pStorDs )
{
@@ -643,8 +643,8 @@ int hb_storvds( const char * szDate, int iParam, ... )
int hb_storvl( int iLogical, int iParam, ... )
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorL = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_storvl" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorL = hb_getProcAddress( HBTEXT( "_hb_storvl" ) );
if( pExtIsArray && pStorL )
{
@@ -672,8 +672,8 @@ int hb_storvl( int iLogical, int iParam, ... )
int hb_storvni( int iValue, int iParam, ... )
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorNi = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_storvni" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorNi = hb_getProcAddress( HBTEXT( "_hb_storvni" ) );
if( pExtIsArray && pStorNi )
{
@@ -701,8 +701,8 @@ int hb_storvni( int iValue, int iParam, ... )
int hb_storvnl( long lValue, int iParam, ... )
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorNl = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_storvnl" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorNl = hb_getProcAddress( HBTEXT( "_hb_storvnl" ) );
if( pExtIsArray && pStorNl )
{
@@ -730,8 +730,8 @@ int hb_storvnl( long lValue, int iParam, ... )
int hb_storvnd( double dNumber, int iParam, ... )
{
FARPROC pExtIsArray = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorNd = GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_storvnd" ) );
FARPROC pExtIsArray = hb_getProcAddress( HBTEXT( "_hb_extIsArray" ) );
FARPROC pStorNd = hb_getProcAddress( HBTEXT( "_hb_storvnd" ) );
if( pExtIsArray && pStorNd )
{
@@ -759,106 +759,106 @@ int hb_storvnd( double dNumber, int iParam, ... )
BOOL hb_arrayNew( PHB_ITEM pItem, ULONG ulLen ) /* creates a new array */
{
HB_ARRAYNEW pArrayNew = ( HB_ARRAYNEW ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arrayNew" ) );
HB_ARRAYNEW pArrayNew = ( HB_ARRAYNEW ) hb_getProcAddress( HBTEXT( "_hb_arrayNew" ) );
return pArrayNew ? pArrayNew( pItem, ulLen ) : FALSE;
}
ULONG hb_arrayLen( PHB_ITEM pArray ) /* retrives the array len */
{
HB_ARRAYLEN pArrayLen = ( HB_ARRAYLEN ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arrayLen" ) );
HB_ARRAYLEN pArrayLen = ( HB_ARRAYLEN ) hb_getProcAddress( HBTEXT( "_hb_arrayLen" ) );
return pArrayLen ? pArrayLen( pArray ) : 0;
}
BOOL hb_arrayIsObject( PHB_ITEM pArray ) /* retrives if the array is an object */
{
HB_ARRAYISOBJECT pArrayIsObject = ( HB_ARRAYISOBJECT ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arrayIsObject" ) );
HB_ARRAYISOBJECT pArrayIsObject = ( HB_ARRAYISOBJECT ) hb_getProcAddress( HBTEXT( "_hb_arrayIsObject" ) );
return pArrayIsObject ? pArrayIsObject( pArray ) : FALSE;
}
BOOL hb_arrayAdd( PHB_ITEM pArray, PHB_ITEM pItemValue ) /* add a new item to the end of an array item */
{
HB_ARRAYADD pArrayAdd = ( HB_ARRAYADD ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arrayAdd" ) );
HB_ARRAYADD pArrayAdd = ( HB_ARRAYADD ) hb_getProcAddress( HBTEXT( "_hb_arrayAdd" ) );
return pArrayAdd ? pArrayAdd( pArray, pItemValue ) : FALSE;
}
BOOL hb_arrayIns( PHB_ITEM pArray, ULONG ulIndex ) /* insert a nil item into an array, without changing the length */
{
HB_ARRAYINS pArrayIns = ( HB_ARRAYINS ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arrayIns" ) );
HB_ARRAYINS pArrayIns = ( HB_ARRAYINS ) hb_getProcAddress( HBTEXT( "_hb_arrayIns" ) );
return pArrayIns ? pArrayIns( pArray, ulIndex ) : FALSE;
}
BOOL hb_arrayDel( PHB_ITEM pArray, ULONG ulIndex ) /* delete an array item, without changing length */
{
HB_ARRAYDEL pArrayDel = ( HB_ARRAYDEL ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arrayDel" ) );
HB_ARRAYDEL pArrayDel = ( HB_ARRAYDEL ) hb_getProcAddress( HBTEXT( "_hb_arrayDel" ) );
return pArrayDel ? pArrayDel( pArray, ulIndex ) : FALSE;
}
BOOL hb_arraySize( PHB_ITEM pArray, ULONG ulLen ) /* sets the array total length */
{
HB_ARRAYSIZE pArraySize = ( HB_ARRAYSIZE ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arraySize" ) );
HB_ARRAYSIZE pArraySize = ( HB_ARRAYSIZE ) hb_getProcAddress( HBTEXT( "_hb_arraySize" ) );
return pArraySize ? pArraySize( pArray, ulLen ) : FALSE;
}
BOOL hb_arrayLast( PHB_ITEM pArray, PHB_ITEM pResult ) /* retrieve last item in an array */
{
HB_ARRAYLAST pArrayLast = ( HB_ARRAYLAST ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arrayLast" ) );
HB_ARRAYLAST pArrayLast = ( HB_ARRAYLAST ) hb_getProcAddress( HBTEXT( "_hb_arrayLast" ) );
return pArrayLast ? pArrayLast( pArray, pResult ) : FALSE;
}
BOOL hb_arraySet( PHB_ITEM pArray, ULONG ulIndex, PHB_ITEM pItem ) /* sets an array element */
{
HB_ARRAYSET pArraySet = ( HB_ARRAYSET ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arraySet" ) );
HB_ARRAYSET pArraySet = ( HB_ARRAYSET ) hb_getProcAddress( HBTEXT( "_hb_arraySet" ) );
return pArraySet ? pArraySet( pArray, ulIndex, pItem ) : FALSE;
}
BOOL hb_arrayGet( PHB_ITEM pArray, ULONG ulIndex, PHB_ITEM pItem ) /* retrieves an item */
{
HB_ARRAYGET pArrayGet = ( HB_ARRAYGET ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_arrayGet" ) );
HB_ARRAYGET pArrayGet = ( HB_ARRAYGET ) hb_getProcAddress( HBTEXT( "_hb_arrayGet" ) );
return pArrayGet ? pArrayGet( pArray, ulIndex, pItem ) : FALSE;
}
void hb_xinit( void ) /* Initialize fixed memory subsystem */
{
HB_XINIT pXinit = ( HB_XINIT ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_xinit" ) );
HB_XINIT pXinit = ( HB_XINIT ) hb_getProcAddress( HBTEXT( "_hb_xinit" ) );
if( pXinit )
pXinit();
}
void hb_xexit( void ) /* Deinitialize fixed memory subsystem */
{
HB_XEXIT pXexit = ( HB_XEXIT ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_xexit" ) );
HB_XEXIT pXexit = ( HB_XEXIT ) hb_getProcAddress( HBTEXT( "_hb_xexit" ) );
if( pXexit )
pXexit();
}
void * hb_xalloc( ULONG ulSize ) /* allocates memory, returns NULL on failure */
{
HB_XALLOC pXalloc = ( HB_XALLOC ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_xalloc" ) );
HB_XALLOC pXalloc = ( HB_XALLOC ) hb_getProcAddress( HBTEXT( "_hb_xalloc" ) );
return pXalloc ? pXalloc( ulSize ) : NULL;
}
void * hb_xgrab( ULONG ulSize ) /* allocates memory, exits on failure */
{
HB_XGRAB pXgrab = ( HB_XGRAB ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_xgrab" ) );
HB_XGRAB pXgrab = ( HB_XGRAB ) hb_getProcAddress( HBTEXT( "_hb_xgrab" ) );
return pXgrab ? pXgrab( ulSize ) : NULL;
}
void hb_xfree( void * pMem ) /* frees memory */
{
HB_XFREE pXfree = ( HB_XFREE ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_xfree" ) );
HB_XFREE pXfree = ( HB_XFREE ) hb_getProcAddress( HBTEXT( "_hb_xfree" ) );
if( pXfree )
pXfree( pMem );
}
void * hb_xrealloc( void * pMem, ULONG ulSize ) /* reallocates memory */
{
HB_XREALLOC pXrealloc = ( HB_XREALLOC ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_xrealloc" ) );
HB_XREALLOC pXrealloc = ( HB_XREALLOC ) hb_getProcAddress( HBTEXT( "_hb_xrealloc" ) );
return pXrealloc ? ( void * ) pXrealloc( pMem, ulSize ) : NULL;
}
ULONG hb_xsize( void * pMem ) /* returns the size of an allocated memory block */
{
HB_XSIZE pXsize = ( HB_XSIZE ) GetProcAddress( GetModuleHandle( NULL ), HBTEXT( "_hb_xsize" ) );
HB_XSIZE pXsize = ( HB_XSIZE ) hb_getProcAddress( HBTEXT( "_hb_xsize" ) );
return pXsize ? pXsize( ( void * ) pMem ) : 0;
}