- Eliminazioni commenti

- Eliminazione funzioni non più usate
- Eliminazione pagine razor sostituite
This commit is contained in:
Annamaria Sassi
2026-03-16 17:02:49 +01:00
parent 171cc8cb90
commit 83161fd2c4
30 changed files with 781 additions and 919 deletions
+250 -62
View File
@@ -32,12 +32,12 @@ namespace WebWindowComplex.Models
m_ElemDimHorizList.Clear();
double thickness = 78;
if (ParentArea is Sash || ParentArea.ParentArea is Sash)
thickness = 60;
thickness = Window.m_ParameterList.GetValueOrDefault("Sash_Sash_Split_DimStd");
if (value)
{
for (int i = 0; i < nSplitQtyVert; i++)
{
SplitElementDimension newVertElem= elemVertListOld.Where(x=>x.nSubArea==1 && x.nIndex==i+1).First().Copy();
SplitElementDimension newVertElem = elemVertListOld.Where(x => x.nSubArea == 1 && x.nIndex == i + 1).First().Copy();
newVertElem.SetElement(i + 1, thickness, 0);
m_ElemDimVertList.Add(newVertElem);
//m_ElemDimVertList.Add(new SplitElementDimension(this, i + 1, thickness, 0));
@@ -46,7 +46,7 @@ namespace WebWindowComplex.Models
{
for (int index = 0; index < nSplitQtyHoriz; index++)
{
SplitElementDimension newHorizElem = elemHorizListOld.Where(x => x.nIndex == index+1).First().Copy();
SplitElementDimension newHorizElem = elemHorizListOld.Where(x => x.nIndex == index + 1).First().Copy();
newHorizElem.SetElement(index + 1, thickness, subArea + 1);
m_ElemDimHorizList.Add(newHorizElem);
//m_ElemDimHorizList.Add(new SplitElementDimension(this, index + 1, thickness, subArea + 1));
@@ -57,7 +57,7 @@ namespace WebWindowComplex.Models
{
for (int i = 0; i < nSplitQtyHoriz; i++)
{
SplitElementDimension newHorizElem = elemHorizListOld.Where(x => x.nSubArea == 1 && x.nIndex == i+1).First().Copy();
SplitElementDimension newHorizElem = elemHorizListOld.Where(x => x.nSubArea == 1 && x.nIndex == i + 1).First().Copy();
newHorizElem.SetElement(i + 1, thickness, 0);
m_ElemDimHorizList.Add(newHorizElem);
//m_ElemDimHorizList.Add(new SplitElementDimension(this, i + 1, thickness, 0));
@@ -66,7 +66,7 @@ namespace WebWindowComplex.Models
{
for (int index = 0; index < nSplitQtyVert; index++)
{
SplitElementDimension newVertElem = elemVertListOld.Where(x => x.nIndex == index+1).First().Copy();
SplitElementDimension newVertElem = elemVertListOld.Where(x => x.nIndex == index + 1).First().Copy();
newVertElem.SetElement(index + 1, thickness, subArea + 1);
m_ElemDimVertList.Add(newVertElem);
//m_ElemDimVertList.Add(new SplitElementDimension(this, index + 1, thickness, subArea + 1));
@@ -115,8 +115,8 @@ namespace WebWindowComplex.Models
Frame? frame = ParentWindow.AreaList.FirstOrDefault();
if(frame != null)
{
double heightTot = SplitHorizList.First().CalculateHeightSplitGroup(frame, frame.AvailHeightArea(), new AreaFound(-1, false)).m_Dimension;
//double heightTot = CalculateHeightArea(frame, frame.AvailHeightArea());
double heightTot = CalculateHeightSplitGroup(frame, frame.AvailHeightArea(), new AreaFound(-1, false)).m_Dimension;
//double heightTot = SplitHorizList.First().CalculateHeightSplitGroup(frame, frame.AvailHeightArea(), new AreaFound(-1, false)).m_Dimension;
// Ricalcolo dimensioni aggiungendo split
if (value > m_SplitHorizList.Count - 1)
{
@@ -141,7 +141,7 @@ namespace WebWindowComplex.Models
m_SplitHorizList.Add(new SplitDimension(dNewDimension, m_SplitHorizList[m_SplitHorizList.Count - 1].MeasureType, true, this, false));
double thickness = 78;
if (ParentArea is Sash || ParentArea.ParentArea is Sash)
thickness = 60;
thickness = Window.m_ParameterList.GetValueOrDefault("Sash_Sash_Split_DimStd");
if (!m_bSplitStartVert)
{
//Aggiungo un elemento alla sottoarea principale
@@ -287,7 +287,7 @@ namespace WebWindowComplex.Models
Frame? frame = ParentWindow.AreaList.FirstOrDefault();
if (frame != null)
{
double widthTot = SplitVertList.First().CalculateWidthSplitGroup(frame, frame.AvailWidthArea(), new AreaFound(-1, false)).m_Dimension;
double widthTot = CalculateWidthSplitGroup(frame, frame.AvailWidthArea(), new AreaFound(-1, false)).m_Dimension;
//double widthTot = CalculateWidthArea(frame, frame.AvailWidthArea());
// Ricalcolo dimensioni aggiungendo split
if (value > m_SplitVertList.Count - 1)
@@ -313,7 +313,7 @@ namespace WebWindowComplex.Models
m_SplitVertList.Add(new SplitDimension(dNewDimension, m_SplitVertList[m_SplitVertList.Count - 1].MeasureType, true, this, true));
double thickness = 78;
if (ParentArea is Sash || ParentArea.ParentArea is Sash)
thickness = 60;
thickness = Window.m_ParameterList.GetValueOrDefault("Sash_Sash_Split_DimStd");
if (m_bSplitStartVert)
{
//Aggiungo un elemento alla sottoarea principale
@@ -321,7 +321,7 @@ namespace WebWindowComplex.Models
newElemDim.SetElement(ElemDimVertList.Max(x => x.nIndex) + 1, thickness, 0);
ElemDimVertList.Add(newElemDim);
//ElemDimVertList.Add(new SplitElementDimension(this, ElemDimVertList.Max(x => x.nIndex) + 1, 78, 0));
if(nSplitQtyHoriz > 0)
if (nSplitQtyHoriz > 0)
{
// Aggiungo a tutte le sottoaree degli element
int subArea = ElemDimHorizList.Max(x => x.nSubArea) + 1;
@@ -546,12 +546,6 @@ namespace WebWindowComplex.Models
newSplit.SplitVertList.Add(SplitVertList[i].Copy());
for (int i = 0; i < SplitHorizList.Count; i++)
newSplit.SplitHorizList.Add(SplitHorizList[i].Copy());
//newSplit.SetSplitQtyVert(nSplitQtyVert);
//for (int i = 0; i < SplitVertList.Count; i++)
// newSplit.SplitVertList.ElementAt(i).SetDimension(SplitVertList.ElementAt(i).dDimension);
//newSplit.SetSplitQtyHoriz(nSplitQtyHoriz);
//for (int i = 0; i < SplitHorizList.Count; i++)
// newSplit.SplitHorizList.ElementAt(i).SetDimension(SplitHorizList.ElementAt(i).dDimension);
newSplit.SetSplitShape(SelSplitShape);
newSplit.SetAreaType(AreaType);
foreach (var item in ElemDimHorizList)
@@ -627,13 +621,240 @@ namespace WebWindowComplex.Models
return Split;
}
/// <summary>
/// Metodo per calcolare altezza intero split group
/// </summary>
/// <param name="area"> area di partenza </param>
/// <param name="height"> altezza di partenza </param>
/// <param name="res"> area di ritorno </param>
/// <returns></returns>
internal AreaFound CalculateHeightSplitGroup(Area area, double height, AreaFound res)
{
for (int i = 0; i < area.AreaList.Count; i++)
{
if (area.Equals(this))
{
res.m_Dimension = height;
res.m_Found = true;
return res;
}
Area item = area.AreaList[i];
if (area is Split split)
{
if (split.SplitHorizList.Count > 0)
{
double dim = height;
foreach (var elem in split.ElemDimHorizList)
dim = dim - elem.dDimension;
int index = i;
if (split.SelSplitShape is SplitShapes.GRID)
index = i % split.SplitHorizList.Count;
switch (split.SplitHorizList.ElementAt(index).SelMeasureType)
{
case MeasureTypes.ABSOLUTE:
{
dim = split.SplitHorizList.ElementAt(index).dDimension;
break;
}
case MeasureTypes.PROPORTIONAL:
{
AreaDimension ad = new AreaDimension(split.SplitHorizList.ElementAt(index).dDimension, split.SplitHorizList.ElementAt(index).SelMeasureType, split.SplitHorizList.ElementAt(index).Parent);
List<AreaDimension> adList = new List<AreaDimension>();
foreach (var it in split.SplitHorizList)
adList.Add(new AreaDimension(it.dDimension, it.SelMeasureType, it.Parent));
dim = ad.ConvertFromPropVal(adList, MeasureTypes.ABSOLUTE, dim);
break;
}
case MeasureTypes.PERCENTAGE:
{
dim = split.SplitHorizList.ElementAt(index).dDimension * dim / 100;
break;
}
}
res = CalculateHeightSplitGroup(item, dim, res);
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
else
{
double dim = height;
res = CalculateHeightSplitGroup(item, dim, res);
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
}
else if (area is Sash sash)
{
double bottomRail = 0;
if (sash.SashBottomRailQty > 0)
{
foreach (var bottom in sash.BottomRailElemDimList)
bottomRail = bottomRail + bottom.dDimension
- bottom.dOverlap;
}
double dim = height - sash.SashList.First().ElementDimensionList.First().dDimension
- sash.SashList.First().ElementDimensionList.ElementAt(sash.SashList.First().ElementDimensionList.Count - 2).dDimension
- bottomRail;
res = CalculateHeightSplitGroup(item, dim, res);
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
else if (area is Splitted splitted)
{
double dim = height;
if (splitted.ParentArea is Split sp && splitted.AreaList.First() is Sash sh)
{
if (sp.SplitHorizList.Count > 0)
{
dim = dim + sh.SashList.First().ElementDimensionList.First().dOverlap
+ sh.SashList.First().ElementDimensionList.ElementAt(sh.SashList.First().ElementDimensionList.Count - 2).dOverlap;
}
}
res = CalculateHeightSplitGroup(item, dim, res);
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
else
{
res = CalculateHeightSplitGroup(item, height, res);
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
}
return res;
}
/// <summary>
/// Metodo per calcolare larghezza intero split group
/// </summary>
/// <param name="area"> area di partenza </param>
/// <param name="width"> larghezza di partenza </param>
/// <param name="res"> area di ritorno </param>
/// <returns></returns>
internal AreaFound CalculateWidthSplitGroup(Area area, double width, AreaFound res)
{
for (int i = 0; i < area.AreaList.Count; i++)
{
if (area.Equals(this))
{
res.m_Dimension = width;
res.m_Found = true;
return res;
}
Area item = area.AreaList[i];
if (area is Split split)
{
if (split.SplitVertList.Count > 0)
{
int index = i;
double dim = width;
foreach (var elem in split.ElemDimVertList)
dim = dim - elem.dDimension;
if (split.SelSplitShape is SplitShapes.GRID)
index = i % split.SplitHorizList.Count;
switch (split.SplitVertList.ElementAt(index).SelMeasureType)
{
case MeasureTypes.ABSOLUTE:
{
res = CalculateWidthSplitGroup(item, split.SplitVertList.ElementAt(index).dDimension, res);
break;
}
case MeasureTypes.PROPORTIONAL:
{
AreaDimension ad = new AreaDimension(split.SplitVertList.ElementAt(index).dDimension, split.SplitVertList.ElementAt(index).SelMeasureType, split.SplitVertList.ElementAt(index).Parent);
List<AreaDimension> adList = new List<AreaDimension>();
foreach (var it in split.SplitVertList)
{
adList.Add(new AreaDimension(it.dDimension, it.SelMeasureType, it.Parent));
}
res = CalculateWidthSplitGroup(item, ad.ConvertFromPropVal(adList, MeasureTypes.ABSOLUTE, dim), res);
break;
}
case MeasureTypes.PERCENTAGE:
{
res = CalculateWidthSplitGroup(item, split.SplitVertList.ElementAt(index).dDimension * dim / 100, res);
break;
}
}
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
else
{
res = CalculateWidthSplitGroup(item, width, res);
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
}
else if (area is Sash sash)
{
double widthTot = width;
double dim = 0;
if (sash.ParentArea.ParentArea is Split)
widthTot = widthTot + sash.SashList.ElementAt(i).ElementDimensionList.ElementAt(1).dOverlap
+ sash.SashList.ElementAt(i).ElementDimensionList.Last().dOverlap;
if (sash.bIsDimensionLight)
{
widthTot = widthTot - sash.SashList.First().ElementDimensionList.ElementAt(1).dDimension
- sash.SashList.First().ElementDimensionList.Last().dDimension;
for (int anta = 1; anta < sash.SashList.Count; anta++)
{
widthTot = widthTot - sash.SashList.ElementAt(anta).ElementDimensionList.ElementAt(1).dDimension
- sash.SashList.ElementAt(anta).ElementDimensionList.Last().dDimension
+ sash.SashList.ElementAt(anta).ElementDimensionList.Last().dOverlap;
}
}
else
{
for (int anta = 1; anta < sash.SashList.Count; anta++)
{
widthTot = widthTot + sash.SashList.ElementAt(anta).ElementDimensionList.Last().dOverlap;
}
}
switch (sash.SashList.ElementAt(i).SelMeasureType)
{
case MeasureTypes.ABSOLUTE:
{
dim = sash.SashList.ElementAt(i).dDimension;
break;
}
case MeasureTypes.PROPORTIONAL:
{
AreaDimension ad = new AreaDimension(sash.SashList.ElementAt(i).dDimension, sash.SashList.ElementAt(i).SelMeasureType, sash.SashList.ElementAt(i).Parent);
List<AreaDimension> adList = new List<AreaDimension>();
foreach (var it in sash.SashList)
adList.Add(new AreaDimension(it.dDimension, it.SelMeasureType, it.Parent));
dim = ad.ConvertFromPropVal(adList, MeasureTypes.ABSOLUTE, widthTot);
break;
}
case MeasureTypes.PERCENTAGE:
{
dim = sash.SashList.ElementAt(i).dDimension * widthTot / 100;
break;
}
}
if (!sash.bIsDimensionLight)
dim = dim - sash.SashList.ElementAt(i).ElementDimensionList.ElementAt(1).dDimension
- sash.SashList.ElementAt(i).ElementDimensionList.Last().dDimension;
res = CalculateWidthSplitGroup(item, dim, res);
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
else
{
res = CalculateWidthSplitGroup(item, width, res);
if (res.m_Dimension != -1 && res.m_Found)
return res;
}
}
return res;
}
internal override JsonArea Serialize(bool hideHw)
{
if (nCounterGroup < GroupId)
Area.nCounterGroup = GroupId;
JsonSplit JsonSplit = new JsonSplit(m_SelSplitShape, GroupId);
//foreach (var SplitPosition in m_SplitPositionList)
// JsonSplit.SplitPositionList.Add(SplitPosition.Serialize());
JsonSplit.SplitStartVert = bSplitStartVert;
foreach (var SplitVert in m_SplitVertList)
JsonSplit.SplitVertList.Add(SplitVert.Serialize());
@@ -690,11 +911,10 @@ namespace WebWindowComplex.Models
{
double thickness = 78;
if (ParentArea is Sash || ParentArea.ParentArea is Sash)
thickness = 60;
thickness = Window.m_ParameterList.GetValueOrDefault("Sash_Sash_Split_DimStd");
// Un Elemento per ogni dimensione principale e per ogni sotto dimensione
if (bSplitStartVert)
{
for (int subArea = 0; subArea <= QtyVert; subArea++)
{
for (int i = 0; i < QtyHoriz; i++)
@@ -741,7 +961,7 @@ namespace WebWindowComplex.Models
{
double thickness = 78;
if (ParentArea is Sash || ParentArea.ParentArea is Sash)
thickness = 60;
thickness = Window.m_ParameterList.GetValueOrDefault("Sash_Sash_Split_DimStd");
// Un Elemento per ogni dimensione principale e per ogni sotto dimensione
if (bSplitStartVert)
{
@@ -769,41 +989,6 @@ namespace WebWindowComplex.Models
m_bSplitStartVert = SplitStartVert;
}
internal double HeightFrame()
{
double dim = 0;
switch (ParentWindow.AreaList.First().SelShapeIndex)
{
case (int)Shapes.RECTANGLE:
case (int)Shapes.TRIANGLE:
case (int)Shapes.ARC_FULL:
{
dim = ParentWindow.AreaList.FirstOrDefault()!.DimensionList.Where(x => x.sName == "Height").First().dDimension;
break;
}
case (int)Shapes.RIGHTCHAMFER:
{
dim = ParentWindow.AreaList.FirstOrDefault()!.DimensionList.Where(x => x.sName == "Left Height").First().dDimension;
break;
}
case (int)Shapes.LEFTCHAMFER:
{
dim = ParentWindow.AreaList.FirstOrDefault()!.DimensionList.Where(x => x.sName == "Right Height").First().dDimension;
break;
}
default:
{
dim = ParentWindow.AreaList.FirstOrDefault()!.DimensionList.Where(x => x.sName == "Full Height").First().dDimension;
break;
}
}
foreach(var elem in ElemDimHorizList)
{
dim = dim - elem.dDimension;
}
return dim;
}
internal void UpdateSubAreaSplit()
{
if (SplitHorizList.Count > 0)
@@ -816,16 +1001,16 @@ namespace WebWindowComplex.Models
List<AreaDimension> dimList = new List<AreaDimension>();
foreach (var itemDim in SplitHorizList)
dimList.Add(new AreaDimension(itemDim.dDimension, itemDim.MeasureType, itemDim.Parent));
//double width = SplitHorizList.First().CalculateWidthSplitGroup(frame, frame.AvailWidthArea(), new AreaFound(-1, false)).m_Dimension;
////double width = ParentArea.CalculateWidthArea(ParentArea.ParentWindow.AreaList[0], ParentArea.ParentWindow.AreaList[0].AvailWidthArea());
//AreaList.ElementAt(i).SearchAreaList(AreaList.ElementAt(i), width, "Width");
double dim = currSplitDim.dDimension;
double height = 0;
if (!(currSplitDim.MeasureType.Equals(MeasureTypes.ABSOLUTE)))
{
Frame frame = ParentArea.ParentWindow.AreaList[0];
if (frame != null)
height = currSplitDim.CalculateHeightSplitGroup(frame, frame.AvailHeightArea(), new AreaFound(-1, false)).m_Dimension;
{
height = CalculateHeightSplitGroup(frame, frame.AvailHeightArea(), new AreaFound(-1, false)).m_Dimension;
//height = currSplitDim.CalculateHeightSplitGroup(frame, frame.AvailHeightArea(), new AreaFound(-1, false)).m_Dimension;
}
foreach (var elem in ElemDimHorizList)
height = height - elem.dDimension;
dim = currSplitDim.ConvertDimension(dimList, currSplitDim.MeasureType, MeasureTypes.ABSOLUTE, height, -1);
@@ -850,7 +1035,10 @@ namespace WebWindowComplex.Models
{
Frame frame = ParentArea.ParentWindow.AreaList[0];
if(frame != null)
width = currSplitDim.CalculateWidthSplitGroup(frame, frame.AvailWidthArea(), new AreaFound(-1, false)).m_Dimension;
{
width = CalculateWidthSplitGroup(frame, frame.AvailWidthArea(), new AreaFound(-1, false)).m_Dimension;
//width = currSplitDim.CalculateWidthSplitGroup(frame, frame.AvailWidthArea(), new AreaFound(-1, false)).m_Dimension;
}
foreach (var elem in ElemDimVertList)
width = width - elem.dDimension;
dim = currSplitDim.ConvertDimension(dimList, currSplitDim.MeasureType, MeasureTypes.ABSOLUTE, width, -1);