- Aggiunto componente Hw Option e sua gestione

- Utilizzate liste nei select (forma frame, tipo apertura sash,  forma split)
This commit is contained in:
Annamaria Sassi
2025-11-03 15:27:41 +01:00
parent 0caf3ef83b
commit 86f3d59a98
17 changed files with 238 additions and 220 deletions
+5 -3
View File
@@ -79,11 +79,13 @@ namespace WebWindowComplex.Models
{
get
{
return IdNameStruct.IndFromId((int)m_Shape, m_ShapeList);
//return IdNameStruct.IndFromId((int)m_Shape, m_ShapeList);
return (int)m_Shape;
}
set
{
Shapes SelShape = (Shapes)IdNameStruct.IdFromInd(value, m_ShapeList);
//Shapes SelShape = (Shapes)IdNameStruct.IdFromInd(value, m_ShapeList);
Shapes SelShape = (Shapes)value;
if (m_Shape != SelShape)
{
// salvo vecchie dimensioni
@@ -194,7 +196,7 @@ namespace WebWindowComplex.Models
}
m_Shape = SelShape;
}
m_ParentWindow.OnUpdatePreview(m_ParentWindow.sSerialized());
//m_ParentWindow.OnUpdatePreview(m_ParentWindow.sSerialized());
}
}
+7 -14
View File
@@ -229,14 +229,7 @@ namespace WebWindowComplex.Models
}
}
}
// arriva come terzo evento refresh!!!
#if false
// calcolo senza hw
m_ParentWindow.OnUpdatePreview(JsonConvert.SerializeObject(m_ParentWindow.Serialize(true)));
#endif
m_ParentWindow.OnUpdatePreview(m_ParentWindow.sSerialized(true));
// continuo refresh
//ReqRefreshShape();
//m_ParentWindow.OnUpdatePreview(m_ParentWindow.sSerialized(true));
RefreshHardwareList();
RefreshHardwareOptionList();
SetFirstHardware();
@@ -355,9 +348,9 @@ namespace WebWindowComplex.Models
}
set
{
m_SelHardware = m_HardwareList.FirstOrDefault(x => !string.IsNullOrEmpty(value) && x.Id.Equals(value)) ?? new Hardware("", "", "", Enums.OpeningTypes.Null, "", 0, 0);
ReqRefreshHwOption();
ParentWindow.OnUpdatePreview(ParentWindow.sSerialized());
m_SelHardware = m_HardwareList.FirstOrDefault(x => !string.IsNullOrEmpty(value) && x.Id.Equals(value)) ?? new Hardware(CustomHwId, "", "", Enums.OpeningTypes.Null, "", 0, 0);
//ReqRefreshHwOption();
//ParentWindow.OnUpdatePreview(ParentWindow.sSerialized());
}
}
@@ -415,10 +408,10 @@ namespace WebWindowComplex.Models
newSash.SetIsSashVertical(bIsSashVertical);
newSash.SetOrientationSashType(OrientationSashType);
newSash.SetSashBottomRailQty(SashBottomRailQty);
newSash.SetSelFamilyHardwareFromIndex(SelHardware.Id);
newSash.SetSelFamilyHardwareFromIndex(m_SelHardware.Id);
newSash.ReqRefreshShape();
newSash.RefreshHardwareOptionList();
newSash.SetSelHardware(SelHardware);
newSash.SetSelHardware(m_SelHardware);
for (int i = 0; i < SashList.Count; i++)
{
//Cancello SashDimension di default e aggiungo la copia
@@ -694,7 +687,7 @@ namespace WebWindowComplex.Models
if (m_HardwareList.Count > 0)
{
m_SelHardware = m_HardwareList.First();
ReqRefreshHwOption();
//ReqRefreshHwOption();
}
}
+15 -7
View File
@@ -106,7 +106,7 @@ namespace WebWindowComplex.Models
set
{
m_bHasHandle = value;
m_Parent.ParentWindow.OnUpdatePreview(m_Parent.ParentWindow.sSerialized());
//m_Parent.ParentWindow.OnUpdatePreview(m_Parent.ParentWindow.sSerialized());
}
}
@@ -239,15 +239,23 @@ namespace WebWindowComplex.Models
{
get
{
return IdNameStruct.IndFromId((int)m_SelOpeningType, m_OpeningTypeList);
//return IdNameStruct.IndFromId((int)m_SelOpeningType, m_OpeningTypeList);
return (int)m_SelOpeningType;
}
set
{
m_SelOpeningType = (Openings)IdNameStruct.IdFromInd(value, m_OpeningTypeList);
m_Parent.ReqRefreshShape();
m_Parent.RefreshHardwareOptionList();
m_Parent.SetFirstHardware();
m_Parent.ParentWindow.OnUpdatePreview(m_Parent.ParentWindow.sSerialized());
//Openings newOpening = (Openings)IdNameStruct.IdFromInd(value, m_OpeningTypeList);
Openings newOpening = (Openings)value;
if ((newOpening != Openings.TILTTURN_LEFT && newOpening != Openings.TILTTURN_RIGHT) ||
(newOpening == Openings.TILTTURN_LEFT && m_bHasHandle) ||
(newOpening == Openings.TILTTURN_RIGHT && m_bHasHandle))
{
m_SelOpeningType = newOpening;
m_Parent.ReqRefreshShape();
m_Parent.RefreshHardwareOptionList();
m_Parent.SetFirstHardware();
m_Parent.ParentWindow.OnUpdatePreview(m_Parent.ParentWindow.sSerialized());
}
}
}
+4 -2
View File
@@ -222,11 +222,13 @@ namespace WebWindowComplex.Models
{
get
{
return IdNameStruct.IndFromId((int)m_SelSplitShape, m_SplitShapeList);
//return IdNameStruct.IndFromId((int)m_SelSplitShape, m_SplitShapeList);
return (int)m_SelSplitShape;
}
set
{
m_SelSplitShape = (SplitShapes)IdNameStruct.IdFromInd(value, m_SplitShapeList);
//m_SelSplitShape = (SplitShapes)IdNameStruct.IdFromInd(value, m_SplitShapeList);
m_SelSplitShape = (SplitShapes)value;
// Cancello elementi nello split e azzero quantità orizzontale e verticale
AreaList.Clear();
SetSplitQtyVert(0);