2003-10-08 14:24 UTC+0300 Alexander Kresin <alex@belacy.belgorod.su>
This commit is contained in:
@@ -8,6 +8,15 @@
|
||||
2002-12-01 23:12 UTC+0100 Foo Bar <foo.bar@foobar.org>
|
||||
*/
|
||||
|
||||
2003-10-08 14:24 UTC+0300 Alexander Kresin <alex@belacy.belgorod.su>
|
||||
* Makefile
|
||||
* contrib/Makefile
|
||||
* Makefiles are changed to build some contribution libraries.
|
||||
* source/vm/classes.c
|
||||
* hb_objSendMsg() function added ( borrowed from xHarbour ).
|
||||
It makes it more easy to set/get values of object variables,
|
||||
execute object methods from the C level.
|
||||
|
||||
2003-10-07 12:06 UTC+0200 Chen Kedem <niki@actcom.co.il>
|
||||
* doc/whatsnew.txt
|
||||
* Update build 43 release date
|
||||
|
||||
@@ -9,7 +9,7 @@ DIRS=\
|
||||
include \
|
||||
source \
|
||||
utils \
|
||||
# tests \
|
||||
contrib \
|
||||
# samples \
|
||||
|
||||
include $(ROOT)config/dir.cf
|
||||
|
||||
@@ -26,6 +26,8 @@ DIRS=\
|
||||
libmisc \
|
||||
libnf \
|
||||
rdd_ads \
|
||||
ole \
|
||||
odbc \
|
||||
samples \
|
||||
|
||||
endif
|
||||
@@ -62,6 +64,8 @@ DIRS=\
|
||||
libct \
|
||||
libgt \
|
||||
libmisc \
|
||||
rdd_ads \
|
||||
odbc \
|
||||
samples \
|
||||
|
||||
endif
|
||||
|
||||
@@ -1824,6 +1824,38 @@ HB_FUNC( __OBJCLONE )
|
||||
}
|
||||
}
|
||||
|
||||
void hb_objSendMsg( PHB_ITEM pObj, char *sMsg, ULONG ulArg, ... )
|
||||
{
|
||||
PHB_DYNS pMsgSym = hb_dynsymFindName( sMsg );
|
||||
|
||||
if( pMsgSym )
|
||||
{
|
||||
hb_vmPushSymbol( pMsgSym->pSymbol );
|
||||
hb_vmPush( pObj );
|
||||
|
||||
if( ulArg )
|
||||
{
|
||||
unsigned long i;
|
||||
|
||||
va_list ap;
|
||||
|
||||
va_start( ap, ulArg );
|
||||
|
||||
for( i = 0; i < ulArg; i++ )
|
||||
{
|
||||
hb_vmPush( va_arg( ap, PHB_ITEM ) );
|
||||
}
|
||||
|
||||
va_end( ap );
|
||||
}
|
||||
|
||||
hb_vmSend( (USHORT) ulArg );
|
||||
}
|
||||
else
|
||||
{
|
||||
hb_errRT_BASE( EG_ARG, 3000, NULL, "__ObjSendMsg()", 0 );
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* <xRet> = __objSendMsg( <oObj>, <cSymbol>, <xArg,..>
|
||||
|
||||
Reference in New Issue
Block a user