Files
EgtInterface/LUA_GdbObjSelection.cpp
T
Dario Sassi e23999b6a3 EgtInterface 1.6a2 :
- numerose modifiche e correzioni
- aggiunta registrazione comandi in formato lua
- aggiunto valutatore di espressioni.
2015-01-14 21:56:57 +00:00

260 lines
7.2 KiB
C++

//----------------------------------------------------------------------------
// EgalTech 2015-2015
//----------------------------------------------------------------------------
// File : LUA_GdbObjSelection.cpp Data : 08.01.15 Versione : 1.6a1
// Contenuto : Funzioni di selezione oggetti del DB geometrico per LUA.
//
//
//
// Modifiche : 08.01.15 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
//--------------------------- Include ----------------------------------------
#include "stdafx.h"
#include "LUA.h"
#include "API.h"
#include "/EgtDev/Include/EInAPI.h"
#include "/EgtDev/Include/EgnStringUtils.h"
#include "/EgtDev/Extern/Lua/Include/lua.hpp"
using namespace std ;
//-------------------------------------------------------------------------------
static int
LuaSelectObj( lua_State* L)
{
// 1 parametro : Id
int nId ;
LuaCheckParam( L, 1, nId)
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtSelectObj( nId) != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaDeselectObj( lua_State* L)
{
// 1 parametro : Id
int nId ;
LuaCheckParam( L, 1, nId)
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtDeselectObj( nId) != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaSelectAll( lua_State* L)
{
// 1 parametro : bOnlyIfVisible
bool bOnlyIfVisible ;
LuaCheckParam( L, 1, bOnlyIfVisible)
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtSelectAll( bOnlyIfVisible) != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaDeselectAll( lua_State* L)
{
// nessun parametro
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtDeselectAll() != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaSelectPartObjs( lua_State* L)
{
// 1 parametro : PartId
int nPartId ;
LuaCheckParam( L, 1, nPartId)
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtSelectPartObjs( nPartId) != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaDeselectPartObjs( lua_State* L)
{
// 1 parametro : PartId
int nPartId ;
LuaCheckParam( L, 1, nPartId)
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtDeselectPartObjs( nPartId) != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaSelectLayerObjs( lua_State* L)
{
// 1 parametro : LayerId
int nLayerId ;
LuaCheckParam( L, 1, nLayerId)
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtSelectLayerObjs( nLayerId) != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaDeselectLayerObjs( lua_State* L)
{
// 1 parametro : LayerId
int nLayerId ;
LuaCheckParam( L, 1, nLayerId)
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtDeselectLayerObjs( nLayerId) != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaIsSelectedObj( lua_State* L)
{
// 1 parametro : Id
int nId ;
LuaCheckParam( L, 1, nId)
LuaClearStack( L) ;
// eseguo la selezione
bool bOk = ( EgtIsSelectedObj( nId) != FALSE) ;
// restituisco il risultato
LuaSetReturn( L, bOk) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaGetSelectedObjNbr( lua_State* L)
{
// nessun parametro
LuaClearStack( L) ;
// eseguo la selezione
int nNbr = EgtGetSelectedObjNbr() ;
// restituisco il risultato
LuaSetReturn( L, nNbr) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaGetFirstSelectedObj( lua_State* L)
{
// nessun parametro
LuaClearStack( L) ;
// recupero il primo oggetto selezionato
int nId = EgtGetFirstSelectedObj() ;
// restituisco il risultato
if ( nId != GDB_ID_NULL)
LuaSetReturn( L, nId) ;
else
LuaSetReturn( L) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaGetNextSelectedObj( lua_State* L)
{
// nessun parametro
LuaClearStack( L) ;
// recupero il successivo oggetto selezionato
int nId = EgtGetNextSelectedObj() ;
// restituisco il risultato
if ( nId != GDB_ID_NULL)
LuaSetReturn( L, nId) ;
else
LuaSetReturn( L) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaGetLastSelectedObj( lua_State* L)
{
// nessun parametro
LuaClearStack( L) ;
// recupero l'ultimo oggetto selezionato
int nId = EgtGetLastSelectedObj() ;
// restituisco il risultato
if ( nId != GDB_ID_NULL)
LuaSetReturn( L, nId) ;
else
LuaSetReturn( L) ;
return 1 ;
}
//-------------------------------------------------------------------------------
static int
LuaGetPrevSelectedObj( lua_State* L)
{
// nessun parametro
LuaClearStack( L) ;
// recupero il precedente oggetto selezionato
int nId = EgtGetPrevSelectedObj() ;
// restituisco il risultato
if ( nId != GDB_ID_NULL)
LuaSetReturn( L, nId) ;
else
LuaSetReturn( L) ;
return 1 ;
}
//-------------------------------------------------------------------------------
bool
LuaInstallGdbObjSelection( lua_State* L)
{
try {
lua_register( L, "EgtSelectObj", LuaSelectObj) ;
lua_register( L, "EgtDeselectObj", LuaDeselectObj) ;
lua_register( L, "EgtSelectAll", LuaSelectAll) ;
lua_register( L, "EgtDeselectAll", LuaDeselectAll) ;
lua_register( L, "EgtSelectPartObjs", LuaSelectPartObjs) ;
lua_register( L, "EgtDeselectPartObjs", LuaDeselectPartObjs) ;
lua_register( L, "EgtSelectLayerObjs", LuaSelectLayerObjs) ;
lua_register( L, "EgtDeselectLayerObjs", LuaDeselectLayerObjs) ;
lua_register( L, "EgtIsSelectedObj", LuaIsSelectedObj) ;
lua_register( L, "EgtGetSelectedObjNbr", LuaGetSelectedObjNbr) ;
lua_register( L, "EgtGetFirstSelectedObj", LuaGetFirstSelectedObj) ;
lua_register( L, "EgtGetNextSelectedObj", LuaGetNextSelectedObj) ;
lua_register( L, "EgtGetLastSelectedObj", LuaGetLastSelectedObj) ;
lua_register( L, "EgtGetPrevSelectedObj", LuaGetPrevSelectedObj) ;
}
catch ( ...) {
return false ;
}
return true ;
}