From c59585e25b1f81c37cacc90eb347377b30d79bf6 Mon Sep 17 00:00:00 2001 From: Annamaria Sassi Date: Tue, 17 Feb 2026 10:19:45 +0100 Subject: [PATCH] Fix aggiornamento dimensioni a causa di una variazione delle dimensioni del frame --- WebWindowComplex/Models/Area.cs | 29 ++++++++++--------- WebWindowComplex/Models/FrameDimension.cs | 16 +++++++--- WebWindowComplex/WebWindowComplex.csproj | 8 ++++- .../WebWindowConfigurator.csproj | 9 +++++- 4 files changed, 42 insertions(+), 20 deletions(-) diff --git a/WebWindowComplex/Models/Area.cs b/WebWindowComplex/Models/Area.cs index bf1bf16..46ea61b 100644 --- a/WebWindowComplex/Models/Area.cs +++ b/WebWindowComplex/Models/Area.cs @@ -290,19 +290,19 @@ namespace WebWindowComplex.Models } else { - Frame? f = node.ParentWindow.AreaList.First(); - double dimAvail = 0; - if (nameDim.Equals("Width")) - dimAvail = dim - f.ElementDimensionList.ElementAt(1).dDimension - - f.ElementDimensionList.Last().dDimension - + f.ElementDimensionList.ElementAt(1).dOverlap - + f.ElementDimensionList.Last().dOverlap; - else - dimAvail = dim - f.ElementDimensionList.First().dDimension - - f.ElementDimensionList.ElementAt(f.ElementDimensionList.Count - 2).dDimension - + f.ElementDimensionList.First().dOverlap - + f.ElementDimensionList.ElementAt(f.ElementDimensionList.Count - 2).dOverlap; - SearchAreaList(node.AreaList.ElementAt(i), dimAvail, nameDim); + //Frame? f = node.ParentWindow.AreaList.First(); + //double dimAvail = 0; + //if (nameDim.Equals("Width")) + // dimAvail = dim - f.ElementDimensionList.ElementAt(1).dDimension + // - f.ElementDimensionList.Last().dDimension + // + f.ElementDimensionList.ElementAt(1).dOverlap + // + f.ElementDimensionList.Last().dOverlap; + //else + // dimAvail = dim - f.ElementDimensionList.First().dDimension + // - f.ElementDimensionList.ElementAt(f.ElementDimensionList.Count - 2).dDimension + // + f.ElementDimensionList.First().dOverlap + // + f.ElementDimensionList.ElementAt(f.ElementDimensionList.Count - 2).dOverlap; + SearchAreaList(node.AreaList.ElementAt(i), dim, nameDim); } } } @@ -344,7 +344,8 @@ namespace WebWindowComplex.Models for (int i = 1; i < sash.SashList.Count; i++) { dim = dim - sash.SashList[i].ElementDimensionList.ElementAt(1).dDimension - - sash.SashList[i].ElementDimensionList.Last().dDimension; + - sash.SashList[i].ElementDimensionList.Last().dDimension + + sash.SashList[i].ElementDimensionList.Last().dOverlap; } } else diff --git a/WebWindowComplex/Models/FrameDimension.cs b/WebWindowComplex/Models/FrameDimension.cs index 9ee1a43..67a4a68 100644 --- a/WebWindowComplex/Models/FrameDimension.cs +++ b/WebWindowComplex/Models/FrameDimension.cs @@ -123,10 +123,18 @@ namespace WebWindowComplex.Models } } } - if (ParentFrame.AreaList.Count > 0 && sName.Equals("Width")) - ParentFrame.SearchAreaList(ParentFrame, dDimension, "Width"); - else - ParentFrame.SearchAreaList(ParentFrame, dDimension, "Height"); + Frame? f = (Frame)Parent; + double dimAvail = 0; + if (ParentFrame.AreaList.Count > 0 && sName.Equals("Width") && f != null) + { + dimAvail = f.AvailWidthArea(); + ParentFrame.SearchAreaList(ParentFrame, dimAvail, "Width"); + } + else if(f != null) + { + dimAvail = f.AvailHeightArea(); + ParentFrame.SearchAreaList(ParentFrame, dimAvail, "Height"); + } } } } diff --git a/WebWindowComplex/WebWindowComplex.csproj b/WebWindowComplex/WebWindowComplex.csproj index a64879d..76d5b81 100644 --- a/WebWindowComplex/WebWindowComplex.csproj +++ b/WebWindowComplex/WebWindowComplex.csproj @@ -6,7 +6,7 @@ net8.0 enable enable - 3.1.2.1709 + 3.1.2.1710 Annamaria Sassi Egalware Componente gestione Configurazioni avanzate Window per LUX @@ -158,6 +158,12 @@ + + + + + + diff --git a/WebWindowConfigurator/WebWindowConfigurator.csproj b/WebWindowConfigurator/WebWindowConfigurator.csproj index d585018..6b35485 100644 --- a/WebWindowConfigurator/WebWindowConfigurator.csproj +++ b/WebWindowConfigurator/WebWindowConfigurator.csproj @@ -6,7 +6,7 @@ net8.0 enable enable - 3.1.2.1709 + 3.1.2.1710 Annamaria Sassi Egalware Componente gestione JWD per LUX @@ -140,6 +140,13 @@ + + + + + + +