EgtExecutor :

- aggiunta gestione copia di pezzo (Duplo*) in Exe e Lua.
This commit is contained in:
Dario Sassi
2021-02-08 08:41:19 +00:00
parent 922dc7912f
commit 541b299948
5 changed files with 347 additions and 1 deletions
+123
View File
@@ -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 ;
}