2009-12-07 11:40 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/rddads/ads1.c
* renamed RDD from ADT to ADSADT
+ added public functions ADSADT, ADSNTX, ADSCDX, ADSVFP to be able
do a REQUEST RDD using RDD name from .prg code
* harbour/contrib/rddads/adsx.c
+ added ADSNTXX, ADSCDXX, ADSADTX RDDs
This commit is contained in:
@@ -17,6 +17,14 @@
|
||||
past entries belonging to author(s): Viktor Szakats.
|
||||
*/
|
||||
|
||||
2009-12-07 11:40 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
|
||||
* harbour/contrib/rddads/ads1.c
|
||||
* renamed RDD from ADT to ADSADT
|
||||
+ added public functions ADSADT, ADSNTX, ADSCDX, ADSVFP to be able
|
||||
do a REQUEST RDD using RDD name from .prg code
|
||||
* harbour/contrib/rddads/adsx.c
|
||||
+ added ADSNTXX, ADSCDXX, ADSADTX RDDs
|
||||
|
||||
2009-12-07 10:14 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
|
||||
* external/libpng/pngerror.c
|
||||
* external/libpng/pngrio.c
|
||||
|
||||
@@ -72,7 +72,7 @@ static int s_iSetListenerHandle = 0;
|
||||
|
||||
static USHORT s_uiRddCount = 0;
|
||||
static USHORT s_uiRddIdADS = ( USHORT ) -1;
|
||||
static USHORT s_uiRddIdADT = ( USHORT ) -1;
|
||||
static USHORT s_uiRddIdADSADT = ( USHORT ) -1;
|
||||
static USHORT s_uiRddIdADSNTX = ( USHORT ) -1;
|
||||
static USHORT s_uiRddIdADSCDX = ( USHORT ) -1;
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
@@ -270,7 +270,7 @@ static int adsGetFileType( USHORT uiRddID )
|
||||
return ADS_CDX;
|
||||
else if( uiRddID == s_uiRddIdADSNTX )
|
||||
return ADS_NTX;
|
||||
else if( uiRddID == s_uiRddIdADT )
|
||||
else if( uiRddID == s_uiRddIdADSADT )
|
||||
return ADS_ADT;
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
else if( uiRddID == s_uiRddIdADSVFP )
|
||||
@@ -290,13 +290,10 @@ static const char * adsMemoExt( int iFileType )
|
||||
switch( iFileType )
|
||||
{
|
||||
case ADS_ADT: return ".adm";
|
||||
case ADS_CDX: return ".fpt";
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
case ADS_VFP: return ".fpt";
|
||||
#endif
|
||||
case ADS_NTX: return ".dbt";
|
||||
}
|
||||
|
||||
return ".dbt";
|
||||
return ".fpt";
|
||||
}
|
||||
|
||||
static const char * adsIndexExt( int iFileType )
|
||||
@@ -304,13 +301,10 @@ static const char * adsIndexExt( int iFileType )
|
||||
switch( iFileType )
|
||||
{
|
||||
case ADS_ADT: return ".adi";
|
||||
case ADS_CDX: return ".cdx";
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
case ADS_VFP: return ".cdx";
|
||||
#endif
|
||||
case ADS_NTX: return ".ntx";
|
||||
}
|
||||
|
||||
return ".ntx";
|
||||
return ".cdx";
|
||||
}
|
||||
|
||||
static ADSHANDLE hb_adsFindBag( ADSAREAP pArea, const char * szBagName )
|
||||
@@ -3200,7 +3194,7 @@ static HB_ERRCODE adsNewArea( ADSAREAP pArea )
|
||||
errCode = SUPER_NEW( ( AREAP ) pArea );
|
||||
if( errCode == HB_SUCCESS )
|
||||
{
|
||||
if( pArea->area.rddID == s_uiRddIdADT )
|
||||
if( pArea->area.rddID == s_uiRddIdADSADT )
|
||||
{
|
||||
pArea->iFileType = ADS_ADT;
|
||||
pArea->area.uiMaxFieldNameLength = ADS_MAX_FIELD_NAME;
|
||||
@@ -3713,7 +3707,7 @@ static HB_ERRCODE adsSetRel( ADSAREAP pArea, LPDBRELINFO lpdbRelations )
|
||||
szExp = ( UNSIGNED8 * ) hb_itemGetCPtr( lpdbRelations->abKey );
|
||||
rddID = lpdbRelations->lpaChild->rddID;
|
||||
if( *szExp && ( rddID == s_uiRddIdADS ||
|
||||
rddID == s_uiRddIdADT ||
|
||||
rddID == s_uiRddIdADSADT ||
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
rddID == s_uiRddIdADSVFP ||
|
||||
#endif
|
||||
@@ -5188,11 +5182,11 @@ HB_FUNC_STATIC( ADS_GETFUNCTABLE )
|
||||
adsRegisterRDD( &s_uiRddIdADS );
|
||||
}
|
||||
|
||||
HB_FUNC_STATIC( ADT_GETFUNCTABLE )
|
||||
HB_FUNC_STATIC( ADSADT_GETFUNCTABLE )
|
||||
{
|
||||
HB_TRACE(HB_TR_DEBUG, ("ADT_GETFUNCTABLE()"));
|
||||
HB_TRACE(HB_TR_DEBUG, ("ADSADT_GETFUNCTABLE()"));
|
||||
|
||||
adsRegisterRDD( &s_uiRddIdADT );
|
||||
adsRegisterRDD( &s_uiRddIdADSADT );
|
||||
}
|
||||
|
||||
HB_FUNC_STATIC( ADSNTX_GETFUNCTABLE )
|
||||
@@ -5222,12 +5216,22 @@ HB_FUNC_STATIC( ADSVFP_GETFUNCTABLE )
|
||||
|
||||
HB_FUNC( ADS ) { ; }
|
||||
|
||||
HB_FUNC( ADSADT ) { ; }
|
||||
|
||||
HB_FUNC( ADSNTX ) { ; }
|
||||
|
||||
HB_FUNC( ADSCDX ) { ; }
|
||||
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
HB_FUNC( ADSVFP ) { ; }
|
||||
#endif
|
||||
|
||||
static void hb_adsRddInit( void * cargo )
|
||||
{
|
||||
HB_SYMBOL_UNUSED( cargo );
|
||||
|
||||
if( hb_rddRegister( "ADS", RDT_FULL ) > 1 ||
|
||||
hb_rddRegister( "ADT", RDT_FULL ) > 1 ||
|
||||
hb_rddRegister( "ADSADT", RDT_FULL ) > 1 ||
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
hb_rddRegister( "ADSVFP", RDT_FULL ) > 1 ||
|
||||
#endif
|
||||
@@ -5241,11 +5245,15 @@ static void hb_adsRddInit( void * cargo )
|
||||
HB_INIT_SYMBOLS_BEGIN( ads1__InitSymbols )
|
||||
{ "ADS", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADS )}, NULL },
|
||||
{ "ADS_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADS_GETFUNCTABLE )}, NULL },
|
||||
{ "ADT_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADT_GETFUNCTABLE )}, NULL },
|
||||
{ "ADSADT", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSADT )}, NULL },
|
||||
{ "ADSADT_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSADT_GETFUNCTABLE )}, NULL },
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
{ "ADSVFP", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSVFP )}, NULL },
|
||||
{ "ADSVFP_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSVFP_GETFUNCTABLE )}, NULL },
|
||||
#endif
|
||||
{ "ADSNTX", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSNTX )}, NULL },
|
||||
{ "ADSNTX_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSNTX_GETFUNCTABLE )}, NULL },
|
||||
{ "ADSCDX", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSCDX )}, NULL },
|
||||
{ "ADSCDX_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSCDX_GETFUNCTABLE )}, NULL }
|
||||
HB_INIT_SYMBOLS_END( ads1__InitSymbols )
|
||||
|
||||
@@ -5275,7 +5283,7 @@ ADSAREAP hb_adsGetWorkAreaPointer( void )
|
||||
USHORT rddID = pArea->area.rddID;
|
||||
|
||||
if( rddID == s_uiRddIdADS ||
|
||||
rddID == s_uiRddIdADT ||
|
||||
rddID == s_uiRddIdADSADT ||
|
||||
#if ADS_LIB_VERSION >= 900
|
||||
rddID == s_uiRddIdADSVFP ||
|
||||
#endif
|
||||
|
||||
@@ -119,7 +119,10 @@ typedef struct _ADSXAREA_
|
||||
|
||||
|
||||
|
||||
static USHORT s_uiRddIdADSX = ( USHORT ) -1;
|
||||
static USHORT s_uiRddIdADSX = ( USHORT ) -1;
|
||||
static USHORT s_uiRddIdADSNTXX = ( USHORT ) -1;
|
||||
static USHORT s_uiRddIdADSCDXX = ( USHORT ) -1;
|
||||
static USHORT s_uiRddIdADSADTX = ( USHORT ) -1;
|
||||
static RDDFUNCS adsxSuper;
|
||||
|
||||
|
||||
@@ -1405,7 +1408,7 @@ static RDDFUNCS adsxTable = { NULL,
|
||||
NULL };
|
||||
|
||||
|
||||
static void adsxRegisterRDD( USHORT * pusRddId )
|
||||
static void adsxRegisterRDD( USHORT * pusRddId, const char * szRddName )
|
||||
{
|
||||
RDDFUNCS * pTable;
|
||||
USHORT * uiCount, uiRddId;
|
||||
@@ -1419,7 +1422,7 @@ static void adsxRegisterRDD( USHORT * pusRddId )
|
||||
{
|
||||
HB_ERRCODE errCode;
|
||||
|
||||
errCode = hb_rddInherit( pTable, &adsxTable, &adsxSuper, "ADS" );
|
||||
errCode = hb_rddInherit( pTable, &adsxTable, &adsxSuper, szRddName );
|
||||
if( errCode == HB_SUCCESS )
|
||||
{
|
||||
*pusRddId = uiRddId;
|
||||
@@ -1435,35 +1438,74 @@ static void adsxRegisterRDD( USHORT * pusRddId )
|
||||
|
||||
HB_FUNC( ADSX_GETFUNCTABLE )
|
||||
{
|
||||
adsxRegisterRDD( &s_uiRddIdADSX );
|
||||
adsxRegisterRDD( &s_uiRddIdADSX, "ADS" );
|
||||
}
|
||||
|
||||
|
||||
HB_FUNC( ADSNTXX_GETFUNCTABLE )
|
||||
{
|
||||
adsxRegisterRDD( &s_uiRddIdADSNTXX, "ADSNTX" );
|
||||
}
|
||||
|
||||
|
||||
HB_FUNC( ADSCDXX_GETFUNCTABLE )
|
||||
{
|
||||
adsxRegisterRDD( &s_uiRddIdADSCDXX, "ADSCDX" );
|
||||
}
|
||||
|
||||
|
||||
HB_FUNC( ADSADTX_GETFUNCTABLE )
|
||||
{
|
||||
adsxRegisterRDD( &s_uiRddIdADSADTX, "ADSADT" );
|
||||
}
|
||||
|
||||
|
||||
HB_FUNC( ADSX ) { ; }
|
||||
|
||||
HB_FUNC_EXTERN( ADS );
|
||||
HB_FUNC( ADSNTXX ) { ; }
|
||||
|
||||
HB_FUNC( ADSCDXX ) { ; }
|
||||
|
||||
HB_FUNC( ADSADTX ) { ; }
|
||||
|
||||
HB_FUNC_EXTERN( ADSCDX );
|
||||
|
||||
static void hb_adsxRddInit( void * cargo )
|
||||
{
|
||||
HB_SYMBOL_UNUSED( cargo );
|
||||
|
||||
if( hb_rddRegister( "ADSX", RDT_FULL ) > 1 )
|
||||
if( hb_rddRegister( "ADSX", RDT_FULL ) > 1 ||
|
||||
hb_rddRegister( "ADSNTXX", RDT_FULL ) > 1 ||
|
||||
hb_rddRegister( "ADSCDXX", RDT_FULL ) > 1 ||
|
||||
hb_rddRegister( "ADSADTX", RDT_FULL ) > 1 )
|
||||
{
|
||||
/* try different RDD registrer order */
|
||||
hb_rddRegister( "ADS", RDT_FULL );
|
||||
hb_rddRegister( "ADSNTX", RDT_FULL );
|
||||
hb_rddRegister( "ADSCDX", RDT_FULL );
|
||||
hb_rddRegister( "ADSADT", RDT_FULL );
|
||||
|
||||
if ( hb_rddRegister( "ADSX", RDT_FULL ) > 1 )
|
||||
if( hb_rddRegister( "ADSX", RDT_FULL ) > 1 ||
|
||||
hb_rddRegister( "ADSNTXX", RDT_FULL ) > 1 ||
|
||||
hb_rddRegister( "ADSCDXX", RDT_FULL ) > 1 ||
|
||||
hb_rddRegister( "ADSADTX", RDT_FULL ) > 1 )
|
||||
{
|
||||
hb_errInternal( HB_EI_RDDINVALID, NULL, NULL, NULL );
|
||||
/* not executed, only to force linking ADS RDD */
|
||||
HB_FUNC_EXEC( ADS );
|
||||
HB_FUNC_EXEC( ADSCDX );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
HB_INIT_SYMBOLS_BEGIN( adsx1__InitSymbols )
|
||||
{ "ADSX", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSX )}, NULL },
|
||||
{ "ADSX_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSX_GETFUNCTABLE )}, NULL }
|
||||
{ "ADSX", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSX )}, NULL },
|
||||
{ "ADSX_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSX_GETFUNCTABLE )}, NULL },
|
||||
{ "ADSNTXX", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSNTXX )}, NULL },
|
||||
{ "ADSNTXX_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSNTXX_GETFUNCTABLE )}, NULL },
|
||||
{ "ADSCDXX", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSCDXX )}, NULL },
|
||||
{ "ADSCDXX_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSCDXX_GETFUNCTABLE )}, NULL },
|
||||
{ "ADSADTX", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSADTX )}, NULL },
|
||||
{ "ADSADTX_GETFUNCTABLE", {HB_FS_PUBLIC|HB_FS_LOCAL}, {HB_FUNCNAME( ADSADTX_GETFUNCTABLE )}, NULL }
|
||||
HB_INIT_SYMBOLS_END( adsx1__InitSymbols )
|
||||
|
||||
HB_CALL_ON_STARTUP_BEGIN( _hb_adsx_rdd_init_ )
|
||||
|
||||
Reference in New Issue
Block a user