EgtExecutor :
- aggiunta gestione copia di pezzo (Duplo*) in Exe e Lua.
This commit is contained in:
@@ -401,6 +401,122 @@ LuaSelectPathObjs( lua_State* L)
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaDuploNew( lua_State* L)
|
||||
{
|
||||
// 1 parametro : nSouId
|
||||
int nSouId ;
|
||||
LuaCheckParam( L, 1, nSouId)
|
||||
LuaClearStack( L) ;
|
||||
// creo il duplicato
|
||||
int nNewId = ExeDuploNew( nSouId) ;
|
||||
// restituisco il risultato
|
||||
LuaSetParam( L, nNewId) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaDuploCount( lua_State* L)
|
||||
{
|
||||
// 1 parametro : nSouId
|
||||
int nSouId ;
|
||||
LuaCheckParam( L, 1, nSouId)
|
||||
LuaClearStack( L) ;
|
||||
// recupero il numero di duplicati
|
||||
int nCount ;
|
||||
bool bOk = ExeDuploCount( nSouId, nCount) ;
|
||||
// restituisco il risultato
|
||||
if ( bOk)
|
||||
LuaSetParam( L, nCount) ;
|
||||
else
|
||||
LuaSetParam( L) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaDuploList( lua_State* L)
|
||||
{
|
||||
// 1 parametro : nSouId
|
||||
int nSouId ;
|
||||
LuaCheckParam( L, 1, nSouId)
|
||||
LuaClearStack( L) ;
|
||||
// recupero l'elenco dei duplicati
|
||||
INTVECTOR vnRef ;
|
||||
bool bOk = ExeDuploList( nSouId, vnRef) ;
|
||||
// restituisco il risultato
|
||||
if ( bOk)
|
||||
LuaSetParam( L, vnRef) ;
|
||||
else
|
||||
LuaSetParam( L) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaDuploSetModified( lua_State* L)
|
||||
{
|
||||
// 1 parametro : nSouId
|
||||
int nSouId ;
|
||||
LuaCheckParam( L, 1, nSouId)
|
||||
LuaClearStack( L) ;
|
||||
// dichiaro che il pezzo è modificato
|
||||
bool bOk = ExeDuploSetModified( nSouId) ;
|
||||
// restituisco il risultato
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaDuploUpdate( lua_State* L)
|
||||
{
|
||||
// 1 parametro : nSouId
|
||||
int nSouId ;
|
||||
LuaCheckParam( L, 1, nSouId)
|
||||
LuaClearStack( L) ;
|
||||
// aggiorno i duplicati del pezzo
|
||||
bool bOk = ExeDuploUpdate( nSouId) ;
|
||||
// restituisco il risultato
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaIsDuplo( lua_State* L)
|
||||
{
|
||||
// 1 parametro : nDouId
|
||||
int nDouId ;
|
||||
LuaCheckParam( L, 1, nDouId)
|
||||
LuaClearStack( L) ;
|
||||
// verifico se è un duplicato
|
||||
bool bOk = ExeIsDuplo( nDouId) ;
|
||||
// restituisco il risultato
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaDuploGetOriginal( lua_State* L)
|
||||
{
|
||||
// 1 parametro : nDouId
|
||||
int nDouId ;
|
||||
LuaCheckParam( L, 1, nDouId)
|
||||
LuaClearStack( L) ;
|
||||
// verifico se è un duplicato
|
||||
int nOrigId = ExeDuploGetOriginal( nDouId) ;
|
||||
// restituisco il risultato
|
||||
if ( nOrigId != GDB_ID_NULL)
|
||||
LuaSetParam( L, nOrigId) ;
|
||||
else
|
||||
LuaSetParam( L) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
bool
|
||||
LuaInstallGdbPartLayer( LuaMgr& luaMgr)
|
||||
@@ -429,5 +545,12 @@ LuaInstallGdbPartLayer( LuaMgr& luaMgr)
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSelectLayerObjs", LuaSelectLayerObjs) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtDeselectLayerObjs", LuaDeselectLayerObjs) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSelectPathObjs", LuaSelectPathObjs) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtDuploNew", LuaDuploNew) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtDuploCount", LuaDuploCount) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtDuploList", LuaDuploList) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtDuploSetModified", LuaDuploSetModified) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtDuploUpdate", LuaDuploUpdate) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtIsDuplo", LuaIsDuplo) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtDuploGetOriginal", LuaDuploGetOriginal) ;
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user