DataWindow :
- correzioni a WinGetAreaProfiles.
This commit is contained in:
@@ -493,14 +493,37 @@ _G.WinGetSashShape = WinGetSashShape
|
||||
|
||||
----------------------------------------------------------------------------------
|
||||
local function WinGetAreaProfiles()
|
||||
-- restituisce una lista dove ogni elemento è una tabella con le seguenti chiavi : GroupId = AREANBR corrispondente, SashId = eventuale sashnbr,
|
||||
-- Profiles = lista dei profili dei pezzi di quell'area
|
||||
|
||||
-- recupero gli id geometrici delle aree richieste
|
||||
local vAreaNbrs = GetVariableList( 'AREANBR')
|
||||
local vAreaIds = GetAreaIdsFromNumbers( vAreaNbrs)
|
||||
-- ricavo le forme
|
||||
|
||||
-- ricavo i profili
|
||||
local tabProfiles = {}
|
||||
for i = 1, #vAreaIds do
|
||||
if vAreaIds[i] ~= GDB_ID.NULL then
|
||||
WDG['AREAPROFILES' .. tostring( i)] = EgtGetInfo( vAreaIds[i], WIN_AREA_PROFILES, 'vs')
|
||||
local nAreaType = EgtGetInfo( vAreaIds[i], WIN_AREATYPE, 'i')
|
||||
if nAreaType == WIN_AREATYPES.FRAME then
|
||||
table.insert( tabProfiles, { GroupId = vAreaNbrs[i], Profiles = EgtGetInfo( vAreaIds[i], WIN_AREA_PROFILES, 'vs')})
|
||||
elseif nAreaType == WIN_AREATYPES.SASH then
|
||||
table.insert( tabProfiles, { GroupId = vAreaNbrs[i], SashId = 1, Profiles = EgtGetInfo( vAreaIds[i], WIN_AREA_PROFILES, 'vs')})
|
||||
elseif nAreaType == WIN_AREATYPES.SPLIT then
|
||||
local nSplitLayId = EgtGetFirstNameInGroup( vAreaIds[i], WIN_SPLIT)
|
||||
local nSplitType = EgtGetInfo( nSplitLayId, WIN_SPLITTYPE, 'i')
|
||||
if nSplitType == WIN_SPLITTYPES.FRENCH then
|
||||
-- se french split devo recuperare le ante che definisce
|
||||
local vSashes = EgtGetNameInGroup( vAreaIds[i], WIN_AREA .. '*')
|
||||
for j = 1, #vSashes do
|
||||
local nSashId = EgtGetInfo( vSashes[j], WIN_SASH_NBR, 'i')
|
||||
table.insert( tabProfiles, { GroupId = vAreaNbrs[i], SashId = nSashId, Profiles = EgtGetInfo( vSashes[j], WIN_AREA_PROFILES, 'vs')})
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
WDG['AREAPROFILES'] = tabProfiles
|
||||
end
|
||||
_G.WinGetAreaProfiles = WinGetAreaProfiles
|
||||
Reference in New Issue
Block a user