Gestione errore: hardware non presente per famiglia selezionata

This commit is contained in:
Annamaria Sassi
2025-10-08 18:43:53 +02:00
parent 9ea6b17fe9
commit cfed8506f9
5 changed files with 51 additions and 21 deletions
+30 -20
View File
@@ -265,40 +265,50 @@ namespace WebWindowComplex
ParentWindow.OnUpdatePreview(ParentWindow.sSerialized());
}
public void AddSash()
public bool AddSash()
{
List<Area> ContentArea = new List<Area>();
// Salvo il parent
Area ParentArea = AreaList[0].ParentArea;
// Salvo gli oggetti già presenti e li cancello da AreaList
ContentArea.Add(AreaList[0]);
AreaList.Remove(AreaList[0]);
// Aggiungo Area sash di default
// Creo area sash di default
Sash SashArea = Sash.CreateSash(ParentArea);
SashArea.SelFamilyHardware = Sash.s_FamilyHardwareList.First();
SashArea.RefreshHardwareList();
SashArea.SetSelHardwareFromId(SashArea.HardwareList.First().Id);
// Aggiungo area
AreaList.Add(SashArea);
if (SashArea.nSashQty == 1)
if(SashArea.HardwareList.Count == 0)
{
// Inserisco il riempimento precedente
AreaList[0].AreaList.Add(ContentArea[0]);
AreaList[0].AreaList[0].SetParentArea(AreaList[0]);
SashArea.Remove();
return true;
}
else
{
// All'area Sash aggiunto uno Splitted per ogni anta
for (int i = 1; i < SashArea.nSashQty; i++)
SashArea.SetSelHardwareFromId(SashArea.HardwareList.First().Id);
// Salvo gli oggetti già presenti e li cancello da AreaList
List<Area> ContentArea = new List<Area>();
ContentArea.Add(AreaList[0]);
AreaList.Remove(AreaList[0]);
// Aggiungo area
AreaList.Add(SashArea);
if (SashArea.nSashQty == 1)
{
AreaList[0].AreaList.Add(Splitted.CreateSplitted(SashArea));
// Inserisco il riempimento precedente
AreaList[0].AreaList.Add(ContentArea[0]);
AreaList[0].AreaList[0].SetParentArea(AreaList[0]);
}
Fill fill2 = (Fill)ContentArea[0];
for (int i = 1; i < SashArea.nSashQty; i++)
else
{
AreaList[0].AreaList[1].AreaList.Add(Fill.CreateFill(AreaList[0].AreaList[1], fill2.FillType));
// All'area Sash aggiunto uno Splitted per ogni anta
for (int i = 1; i < SashArea.nSashQty; i++)
{
AreaList[0].AreaList.Add(Splitted.CreateSplitted(SashArea));
}
Fill fill2 = (Fill)ContentArea[0];
for (int i = 1; i < SashArea.nSashQty; i++)
{
AreaList[0].AreaList[1].AreaList.Add(Fill.CreateFill(AreaList[0].AreaList[1], fill2.FillType));
}
}
ParentWindow.OnUpdatePreview(ParentWindow.sSerialized());
return false;
}
ParentWindow.OnUpdatePreview(ParentWindow.sSerialized());
}
public void SwapAree()