diff --git a/WebWindowComplex/Json/JsonUtility.cs b/WebWindowComplex/Json/JsonUtility.cs
index 6bcc216..48f4106 100644
--- a/WebWindowComplex/Json/JsonUtility.cs
+++ b/WebWindowComplex/Json/JsonUtility.cs
@@ -571,48 +571,48 @@ namespace WebWindowComplex.Json
internal override Area Deserialize(Area ParentArea, Window ParentWindow)
{
- Split Split = new Split(ParentArea, ParentWindow);
- Split.SetGroupId(GroupId);
- Split.SetAreaType(AreaTypes.SPLIT);
- Split.SetSplitShape(m_SplitShape);
- Split.SetSplitStartVert(m_SplitStartVert);
+ Split split = new Split(ParentArea, ParentWindow);
+ split.SetGroupId(GroupId);
+ split.SetAreaType(AreaTypes.SPLIT);
+ split.SetSplitShape(m_SplitShape);
+ split.SetSplitStartVert(m_SplitStartVert);
if (m_SplitVertList.Count == 0)
- Split.SetSplitQtyVert(0);
+ split.SetSplitQtyVert(0);
else
{
- Split.SetSplitQtyVert(m_SplitVertList.Count - 1);
+ split.SetSplitQtyVert(m_SplitVertList.Count - 1);
for (var SplitIndex = 0; SplitIndex <= m_SplitVertList.Count - 1; SplitIndex++)
{
- Split.SplitVertList[SplitIndex].SetIsRelative(m_SplitVertList[SplitIndex].IsRelative);
- Split.SplitVertList[SplitIndex].SetDimension(m_SplitVertList[SplitIndex].Dimension);
- Split.SplitVertList[SplitIndex].SetMeasureType(m_SplitVertList[SplitIndex].MeasureType);
+ split.SplitVertList[SplitIndex].SetIsRelative(m_SplitVertList[SplitIndex].IsRelative);
+ split.SplitVertList[SplitIndex].SetDimension(m_SplitVertList[SplitIndex].Dimension);
+ split.SplitVertList[SplitIndex].SetMeasureType(m_SplitVertList[SplitIndex].MeasureType);
}
- foreach (var ElementDimension in ElementDimVertList)
- Split.ElemDimVertList.Add(ElementDimension.Deserialize((Area)ParentArea));
+ for (int index = 0; index < ElementDimVertList.Count; index++)
+ split.ElemDimVertList.ElementAt(index).SetDimension(m_ElemDimVertList[index].Value);
}
if (m_SplitHorizList.Count == 0)
- Split.SetSplitQtyHoriz(0);
+ split.SetSplitQtyHoriz(0);
else
{
- Split.SetSplitQtyHoriz(m_SplitHorizList.Count - 1);
+ split.SetSplitQtyHoriz(m_SplitHorizList.Count - 1);
for (var SplitIndex = 0; SplitIndex <= m_SplitHorizList.Count - 1; SplitIndex++)
{
- Split.SplitHorizList[SplitIndex].SetIsRelative(m_SplitHorizList[SplitIndex].IsRelative);
- Split.SplitHorizList[SplitIndex].SetDimension(m_SplitHorizList[SplitIndex].Dimension);
- Split.SplitHorizList[SplitIndex].SetMeasureType(m_SplitHorizList[SplitIndex].MeasureType);
+ split.SplitHorizList[SplitIndex].SetIsRelative(m_SplitHorizList[SplitIndex].IsRelative);
+ split.SplitHorizList[SplitIndex].SetDimension(m_SplitHorizList[SplitIndex].Dimension);
+ split.SplitHorizList[SplitIndex].SetMeasureType(m_SplitHorizList[SplitIndex].MeasureType);
}
- foreach (var ElementDimension in ElementDimHorizList)
- Split.ElemDimHorizList.Add(ElementDimension.Deserialize((Area)ParentArea));
+ for (int index = 0; index < ElementDimHorizList.Count; index++)
+ split.ElemDimHorizList.ElementAt(index).SetDimension(m_ElemDimHorizList[index].Value);
}
foreach (var Area in AreaList)
{
- var AreaDeserealized = Area.Deserialize(Split, ParentWindow);
+ var AreaDeserealized = Area.Deserialize(split, ParentWindow);
if (AreaDeserealized != null)
{
- Split.AreaList.Add(AreaDeserealized);
+ split.AreaList.Add(AreaDeserealized);
}
}
- return Split;
+ return split;
}
}
diff --git a/WebWindowComplex/Models/Split.cs b/WebWindowComplex/Models/Split.cs
index 4b3a586..d5b4140 100644
--- a/WebWindowComplex/Models/Split.cs
+++ b/WebWindowComplex/Models/Split.cs
@@ -92,7 +92,7 @@ namespace WebWindowComplex.Models
}
dLastDimension += m_SplitHorizList[m_SplitHorizList.Count - 1].dDimension;
m_SplitHorizList[m_SplitHorizList.Count - 1].SetDimension(dLastDimension);
- ElemDimHorizList.RemoveAt(ElemDimHorizList.Count);
+ ElemDimHorizList.RemoveAt(ElemDimHorizList.Count-1);
}
// Controllo quanti split verticali ci sono
int nVert = m_SplitVertList.Count > 0 ? m_SplitVertList.Count : 1;
@@ -198,6 +198,8 @@ namespace WebWindowComplex.Models
dLastDimension += m_SplitVertList[m_SplitVertList.Count - 1].dDimension;
m_SplitVertList[m_SplitVertList.Count - 1].SetDimension(dLastDimension);
}
+ ElemDimVertList.RemoveAt(ElemDimVertList.Count - 1);
+
}
// Controllo quanti split orizzontali ci sono
int nHoriz = m_SplitHorizList.Count > 0 ? m_SplitHorizList.Count : 1;
@@ -511,8 +513,15 @@ namespace WebWindowComplex.Models
for (var SplitIndex = m_SplitHorizList.Count - 1; SplitIndex >= QtyHoriz; SplitIndex += -1)
m_SplitHorizList.RemoveAt(SplitIndex);
}
- for (int i = 0; i < QtyHoriz; i++)
- ElemDimHorizList.Add(new ElementDimension(this, i + 1, 78));
+ if(QtyHoriz == 0)
+ {
+ ElemDimHorizList.Clear();
+ }
+ else
+ {
+ for (int i = 0; i < QtyHoriz; i++)
+ ElemDimHorizList.Add(new ElementDimension(this, i + 1, 78));
+ }
}
internal void SetSplitQtyVert(int QtyVert)
@@ -539,6 +548,15 @@ namespace WebWindowComplex.Models
for (var SplitIndex = m_SplitVertList.Count - 1; SplitIndex >= QtyVert; SplitIndex += -1)
m_SplitVertList.RemoveAt(SplitIndex);
}
+ if (QtyVert == 0)
+ {
+ ElemDimVertList.Clear();
+ }
+ else
+ {
+ for (int i = 0; i < QtyVert; i++)
+ ElemDimVertList.Add(new ElementDimension(this, i + 1, 78));
+ }
}
internal void SetSplitShape(SplitShapes Value)
diff --git a/WebWindowComplex/WebWindowComplex.csproj b/WebWindowComplex/WebWindowComplex.csproj
index 6082b68..998bcd9 100644
--- a/WebWindowComplex/WebWindowComplex.csproj
+++ b/WebWindowComplex/WebWindowComplex.csproj
@@ -6,7 +6,7 @@
net8.0
enable
enable
- 2.8.1.2616
+ 2.8.1.2618
Annamaria Sassi
Egalware
Componente gestione Configurazioni avanzate Window per LUX
@@ -88,6 +88,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/WebWindowConfigurator/WebWindowConfigurator.csproj b/WebWindowConfigurator/WebWindowConfigurator.csproj
index 9798040..2b5e443 100644
--- a/WebWindowConfigurator/WebWindowConfigurator.csproj
+++ b/WebWindowConfigurator/WebWindowConfigurator.csproj
@@ -6,7 +6,7 @@
net8.0
enable
enable
- 2.8.1.2616
+ 2.8.1.2618
Annamaria Sassi
Egalware
Componente gestione JWD per LUX
@@ -142,6 +142,12 @@
+
+
+
+
+
+