DataWindow :

- gestione soglia
- aggiunti zoccoli per ante
- aggiunte funzioni ausiliarie per il programma.
This commit is contained in:
SaraP
2025-04-03 14:50:05 +02:00
parent a2c1032e81
commit 398b52cbae
4 changed files with 298 additions and 123 deletions
+87 -13
View File
@@ -55,46 +55,112 @@ local function CleanVariableList( sName)
end
end
----------------------------------------------------------------------------------
local function SetProfilePath()
_G.sProfilePath = WDG.PROFILEPATH
end
_G.SetProfilePath = SetProfilePath
----------------------------------------------------------------------------------
local function WinCreate_ImportProfile()
WinCreate.ImportProfile(WDG.PROFILE)
_G.sProfile = WDG.PROFILE
WinCreate.ImportProfile( WDG.PROFILE)
-- TODO da decommentare e sostituire alla riga sopra quando la modifica è nel programma
-- if _G.sProfilePath then
-- WinCreate.ImportProfile( _G.sProfilePath .. '\\' .. WDG.PROFILE .. '.nge')
-- end
end
_G.WinCreate_ImportProfile = WinCreate_ImportProfile
----------------------------------------------------------------------------------
local function FindThresholds( nGrpId)
local tThresholds = {}
local tHash = {}
-- scorro tutti i profili del telaio
local nCurrId = EgtGetFirstInGroup( nGrpId)
while nCurrId do
-- verifico se di tipo bottom
local nBottomType = EgtGetInfo( nCurrId, WIN_BOTTOM, 'i') or WIN_THRESHOLD_TYPES.NULL
if nBottomType ~= WIN_THRESHOLD_TYPES.NULL then
-- recupero il nome
local vNames = EgtSplitString( EgtGetName( nCurrId), '_')
local sName = vNames[#vNames]
if not tHash[sName] then
table.insert( tThresholds, { nType = nBottomType, sName = sName})
tHash[sName] = 1
end
end
nCurrId = EgtGetNext( nCurrId)
end
return tThresholds
end
local function GetProfileThresholdsList()
local tThresholds = {}
if _G.sProfile == WDG.PROFILE then
-- se profilo corrente
local nProfileGrp = EgtGetFirstNameInGroup( GDB_ID.ROOT, WIN_PROFILE)
local nFrameGrp = EgtGetFirstNameInGroup( nProfileGrp, WIN_FRAME)
tThresholds = FindThresholds( nFrameGrp)
else
-- importo temporaneamente il profilo
local nLastId = EgtGetLastInGroup( GDB_ID.ROOT)
local bOk = EgtInsertFile( _G.sProfilePath .. '\\' .. WDG.PROFILE .. '.nge')
local nCurrId = EgtGetNext( nLastId or GDB_ID.NULL) or EgtGetFirstInGroup( GDB_ID.ROOT)
while nCurrId do
if EgtGetName( nCurrId) == WIN_FRAME then
tThresholds = FindThresholds( nCurrId)
end
-- passo al successivo e cancello il corrente
local nOldId = nCurrId
nCurrId = EgtGetNext( nCurrId)
EgtErase( nOldId)
end
end
WDG.THRESHOLDSLIST = tThresholds
end
_G.GetProfileThresholdsList = GetProfileThresholdsList
----------------------------------------------------------------------------------
local function WinCreate_CreateFrame()
local JointList = GetVariableList('JOINT')
WDG.AREAID = WinCreate.CreateFrame(WDG.FRAMETYPE, JointList, WDG.WIDTH, WDG.HEIGHT, WDG.HEIGHT2)
local JointList = GetVariableList( 'JOINT')
WDG.AREAID = WinCreate.CreateFrame( WDG.FRAMETYPE, JointList, WDG.WIDTH, WDG.HEIGHT, WDG.HEIGHT2)
CleanVariableList('JOINT')
end
_G.WinCreate_CreateFrame = WinCreate_CreateFrame
----------------------------------------------------------------------------------
local function WinCreate_AddSash()
local JointList = GetVariableList('JOINT')
local JointList = GetVariableList( 'JOINT')
WDG.AREAID = WinCreate.AddSash( WDG.AREAID, {WDG.JOINTBL, WDG.JOINTBR, WDG.JOINTTR, WDG.JOINTTL, WDG.JOINTBL}, WDG.SASHTYPE, WDG.OPENINGTYPE)
CleanVariableList('JOINT')
CleanVariableList( 'JOINT')
end
_G.WinCreate_AddSash = WinCreate_AddSash
----------------------------------------------------------------------------------
local function WinCreate_AddHardware()
WinCreate.AddHardware(WDG.AREAID, WDG.FAVOURITE, WDG.HANDLE)
WinCreate.AddHardware( WDG.AREAID, WDG.FAVOURITE, WDG.HANDLE)
end
_G.WinCreate_AddHardware = WinCreate_AddHardware
----------------------------------------------------------------------------------
local function WinCreate_AddFill()
WDG.AREAID = WinCreate.AddFill(WDG.AREAID, WDG.FILLTYPE)
WDG.AREAID = WinCreate.AddFill( WDG.AREAID, WDG.FILLTYPE)
end
_G.WinCreate_AddFill = WinCreate_AddFill
----------------------------------------------------------------------------------
local function WinCreate_AddBottomRail()
WinCreate.AddBottomRail(WDG.AREAID, WDG.NBR)
WinCreate.AddBottomRail( WDG.AREAID, WDG.NBR)
end
_G.WinCreate_AddBottomRail = WinCreate_AddBottomRail
----------------------------------------------------------------------------------
local function WinCreate_AddThreshold()
WinCreate.AddThreshold( WDG.AREAID, WDG.THRESHOLDPROFILE)
end
_G.WinCreate_AddThreshold = WinCreate_AddThreshold
----------------------------------------------------------------------------------
local function WinCreate_AddSplits()
local AreaIndex = 1
@@ -122,31 +188,31 @@ _G.WinCreate_AddSplits = WinCreate_AddSplits
----------------------------------------------------------------------------------
local function WinCalculate_SetCalcSolid()
WinCalculate.SetCalcSolid(WDG.VALUE)
WinCalculate.SetCalcSolid( WDG.VALUE)
end
_G.WinCalculate_SetCalcSolid = WinCalculate_SetCalcSolid
----------------------------------------------------------------------------------
local function WinCalculate_SetSimplifiedSolid()
WinCalculate.SetSimplifiedSolid(WDG.VALUE)
WinCalculate.SetSimplifiedSolid( WDG.VALUE)
end
_G.WinCalculate_SetSimplifiedSolid = WinCalculate_SetSimplifiedSolid
----------------------------------------------------------------------------------
local function WinCalculate_CreatePartFromArea()
WinCalculate.CreatePartFromArea(WDG.FRAMEID)
WinCalculate.CreatePartFromArea( WDG.FRAMEID)
end
_G.WinCalculate_CreatePartFromArea = WinCalculate_CreatePartFromArea
----------------------------------------------------------------------------------
local function WinCalculate_AddHardware()
WinCalculate.AddHardware(WDG.FRAMEID)
WinCalculate.AddHardware( WDG.FRAMEID)
end
_G.WinCalculate_AddHardware = WinCalculate_AddHardware
----------------------------------------------------------------------------------
local function WinCreate_GetHardwareOptionPath()
WDG.HWDOPTPATH = WinCalculate.AddHardwareForSash(WDG.AREAID, true)
WDG.HWDOPTPATH = WinCalculate.AddHardwareForSash( WDG.AREAID, true)
end
_G.WinCreate_GetHardwareOptionPath = WinCreate_GetHardwareOptionPath
@@ -165,3 +231,11 @@ local function WinGetImage()
EgtGetImage( SCE_SM.SH, EgtStdColor('WHITE'), EgtStdColor('WHITE'), 1920, 1080, WDG.FILE)
end
_G.WinGetImage = WinGetImage
----------------------------------------------------------------------------------
local function WinSetAuxGrpStatus()
-- recupero il gruppo aux della ferramenta e accessori e assegno stato
local nAuxGrp = EgtGetFistNameInGroup( GDB_ID.ROOT, WIN_AUX) or GDB_ID.NULL
EgtSetStatus( nAuxGrp, WDG.AUXSTATUS)
end
_G.WinSetAuxGrpStatus = WinSetAuxGrpStatus