- Corretto conversione tipi dimensioni
- Corretto aggiornamento dimensioni a causa di una modifica (no gestione split grid)
This commit is contained in:
+29
-119
@@ -34,17 +34,17 @@ namespace WebWindowComplex.Models
|
||||
|
||||
#region Public Properties
|
||||
|
||||
public bool bIsMeasureGlass
|
||||
{
|
||||
get
|
||||
{
|
||||
return m_bIsMeasureGlass;
|
||||
}
|
||||
set
|
||||
{
|
||||
m_bIsMeasureGlass = value;
|
||||
}
|
||||
}
|
||||
//public bool bIsMeasureGlass
|
||||
//{
|
||||
// get
|
||||
// {
|
||||
// return m_bIsMeasureGlass;
|
||||
// }
|
||||
// set
|
||||
// {
|
||||
// m_bIsMeasureGlass = value;
|
||||
// }
|
||||
//}
|
||||
|
||||
public bool bIsSashVertical
|
||||
{
|
||||
@@ -104,7 +104,7 @@ namespace WebWindowComplex.Models
|
||||
{
|
||||
if (value > 0 && value <= 3)
|
||||
{
|
||||
double widthTot = CalculateWidthArea(ParentWindow.AreaList.First(), ParentWindow.AreaList.FirstOrDefault().DimensionList.Where(x => x.sName == "Width").First().dValue);
|
||||
double widthTot = CalculateWidthArea(ParentWindow.AreaList.First(), ParentWindow.AreaList.FirstOrDefault().DimensionList.Where(x => x.sName == "Width").First().dDimension);
|
||||
if (value > m_SashList.Count)
|
||||
{
|
||||
// recupero larghezza ultimo
|
||||
@@ -145,7 +145,16 @@ namespace WebWindowComplex.Models
|
||||
SashList.RemoveAt(SplitIndex);
|
||||
}
|
||||
if (!itemDelete.SelMeasureType.Equals(m_SashList[SashList.Count - 1].SelMeasureType))
|
||||
deleteDim = itemDelete.ConvertDimension(itemDelete.SelMeasureType, m_SashList[SashList.Count - 1].SelMeasureType, widthTot);
|
||||
{
|
||||
AreaDimension ad = new AreaDimension(itemDelete.dDimension, itemDelete.SelMeasureType);
|
||||
List<AreaDimension> adList = new List<AreaDimension>();
|
||||
foreach (var it in SashList)
|
||||
{
|
||||
adList.Add(new AreaDimension(it.dDimension, it.SelMeasureType));
|
||||
}
|
||||
deleteDim = ad.ConvertDimension(adList, itemDelete.SelMeasureType, m_SashList[SashList.Count - 1].SelMeasureType, widthTot, m_SashList.IndexOf(itemDelete));
|
||||
}
|
||||
//deleteDim = Convert.ConvertDimension(itemDelete, itemDelete.SelMeasureType, m_SashList[SashList.Count - 1].SelMeasureType, itemDelete.dDimension, widthTot);
|
||||
else
|
||||
deleteDim = itemDelete.dDimension;
|
||||
//dLastDimension += m_SashList[SashList.Count - 1].dDimension;
|
||||
@@ -227,6 +236,8 @@ namespace WebWindowComplex.Models
|
||||
}
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < AreaList.Count; i++)
|
||||
AreaList.ElementAt(i).SearchAreaList(AreaList.ElementAt(i), SashList.ElementAt(i).dDimension, "Width");
|
||||
}
|
||||
RefreshHardwareList();
|
||||
ClearHardwareOptionList();
|
||||
@@ -270,7 +281,6 @@ namespace WebWindowComplex.Models
|
||||
}
|
||||
set
|
||||
{
|
||||
// Controllo che il valore inserito sia positivo
|
||||
if (value >= 0)
|
||||
{
|
||||
m_nSashBottomRailQty = value;
|
||||
@@ -384,7 +394,6 @@ namespace WebWindowComplex.Models
|
||||
{
|
||||
m_bIsSashVertical = false;
|
||||
}
|
||||
//m_ParentWindow.OnUpdatePreview(m_ParentWindow.sSerialized());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -444,6 +453,9 @@ namespace WebWindowComplex.Models
|
||||
Enums.OpeningTypes sOpeningType = ConvertOpeningType();
|
||||
if (string.IsNullOrEmpty(m_SelFamilyHardware))
|
||||
m_SelFamilyHardware = s_FamilyHardwareList.FirstOrDefault();
|
||||
int sashPosition = 1;
|
||||
if (nSashQty > 2 && !(SashList.First().bHasHandle || SashList.Last().bHasHandle))
|
||||
sashPosition = 2;
|
||||
var iComp = StringComparison.InvariantCultureIgnoreCase;
|
||||
var rawList = m_HardwareCompleteList
|
||||
.Where(x => x.Id == "000000" ||
|
||||
@@ -451,7 +463,8 @@ namespace WebWindowComplex.Models
|
||||
x.FamilyName.Equals(m_SelFamilyHardware, iComp) &&
|
||||
x.SashQty == nSashQty &&
|
||||
x.Shape.Equals(m_CurrShape, iComp) &&
|
||||
x.OpeningType == sOpeningType)
|
||||
x.OpeningType == sOpeningType &&
|
||||
x.SashPosition == sashPosition)
|
||||
)
|
||||
.ToList() ?? new List<Hardware>();
|
||||
if(rawList.Count == 0 || rawList == null)
|
||||
@@ -475,31 +488,6 @@ namespace WebWindowComplex.Models
|
||||
//m_ParentWindow.OnUpdatePreview(m_ParentWindow.sSerialized());
|
||||
}
|
||||
|
||||
///// <summary>
|
||||
///// Richiesta calcolo shape corrente
|
||||
///// </summary>
|
||||
//public void ReqRefreshShape()
|
||||
//{
|
||||
// if (m_HardwareCompleteList != null && m_HardwareCompleteList.Count > 0)
|
||||
// {
|
||||
// m_HardwareList.Clear();
|
||||
// // reset shape corrente
|
||||
// m_CurrShape = "";
|
||||
// // chiamata evento calcolo shape: gruppo da calcolare
|
||||
// }
|
||||
//}
|
||||
|
||||
///// <summary>
|
||||
///// Richiesta calcolo hardware option list
|
||||
///// </summary>
|
||||
//public void ReqRefreshHwOption()
|
||||
//{
|
||||
// HwOptionList.Clear();
|
||||
// m_ReqHwOption = true;
|
||||
// // chiamata evento calcolo opzioni hardware
|
||||
// //m_ParentWindow.OnReqHwOptionPreview(m_ParentWindow.sSerialized(), GroupId);
|
||||
//}
|
||||
|
||||
public void SetSelFamilyHardware(string sFamilyHw)
|
||||
{
|
||||
m_SelFamilyHardware = sFamilyHw;
|
||||
@@ -559,84 +547,6 @@ namespace WebWindowComplex.Models
|
||||
|
||||
#region Internal Methods
|
||||
|
||||
///// <summary>
|
||||
///// Metodo per calcolare larghezza intera sash group
|
||||
///// </summary>
|
||||
///// <param name="area"> area di partenza </param>
|
||||
///// <param name="width"> larghezza di partenza </param>
|
||||
///// <returns></returns>
|
||||
//internal double CalculateWidthSashGroup(Area area, double width)
|
||||
//{
|
||||
// for (int i = 0; i < area.AreaList.Count; i++)
|
||||
// {
|
||||
// double risultato = -1;
|
||||
// if (area.Equals(this))
|
||||
// return width;
|
||||
// Area item = area.AreaList[i];
|
||||
// if (area is Split)
|
||||
// {
|
||||
// Split split = (Split)area;
|
||||
// if(split.SplitVertList.Count > 0)
|
||||
// {
|
||||
// switch (split.SplitVertList.ElementAt(i).SelMeasureType)
|
||||
// {
|
||||
// case MeasureTypes.ABSOLUTE:
|
||||
// {
|
||||
// risultato = CalculateWidthSashGroup(item, split.SplitVertList.ElementAt(i).dDimension);
|
||||
// break;
|
||||
// }
|
||||
// case MeasureTypes.PROPORTIONAL:
|
||||
// {
|
||||
// //risultato = CalculateWidthSashGroup(item, split.SplitVertList.ElementAt(i).dDimension);
|
||||
// break;
|
||||
// }
|
||||
// case MeasureTypes.PERCENTAGE:
|
||||
// {
|
||||
// risultato = CalculateWidthSashGroup(item, split.SplitVertList.ElementAt(i).dDimension * width / 100);
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// risultato = CalculateWidthSashGroup(item, width);
|
||||
// }
|
||||
// if (risultato != -1)
|
||||
// return risultato;
|
||||
// }
|
||||
// else if (area is Sash)
|
||||
// {
|
||||
// Sash sash = (Sash)area;
|
||||
// switch (sash.SashList.ElementAt(i).SelMeasureType)
|
||||
// {
|
||||
// case MeasureTypes.ABSOLUTE:
|
||||
// {
|
||||
// risultato = CalculateWidthSashGroup(item, sash.SashList.ElementAt(i).dDimension);
|
||||
// break;
|
||||
// }
|
||||
// case MeasureTypes.PROPORTIONAL:
|
||||
// {
|
||||
// //risultato = CalculateWidthSashGroup(item, sash.SashList.ElementAt(i).dDimension);
|
||||
// break;
|
||||
// }
|
||||
// case MeasureTypes.PERCENTAGE:
|
||||
// {
|
||||
// risultato = CalculateWidthSashGroup(item, sash.SashList.ElementAt(i).dDimension * width / 100);
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
// if (risultato != -1)
|
||||
// return risultato;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// risultato = CalculateWidthSashGroup(item, width);
|
||||
// if (risultato != -1)
|
||||
// return risultato;
|
||||
// }
|
||||
// }
|
||||
// return width;
|
||||
//}
|
||||
internal static Sash CreateSash(Area Area)
|
||||
{
|
||||
Sash newSash = new Sash(Area, Area.ParentWindow);
|
||||
|
||||
Reference in New Issue
Block a user