Aggiunto ABGOption e modificato lista di test hardware

This commit is contained in:
Annamaria Sassi
2025-09-16 16:08:24 +02:00
parent 7f8d5621ed
commit 8550044f84
13 changed files with 309 additions and 144 deletions
@@ -13,3 +13,7 @@
LiveSVG="@currSvg"
CurrJwd="@InitialJwd">
</Test>
@* <p>
@m_CurrArgs.GetValueOrDefault("Jwd")
</p> *@
+1 -1
View File
@@ -69,7 +69,7 @@
"JointType": "FULL_V"
}
],
"Hardware": "102111",
"Hardware": "000559",
"AreaList": [
{
"AreaList": [
+1 -1
View File
@@ -64,7 +64,7 @@
"JointType": "FULL_H"
}
],
"Hardware": "101111",
"Hardware": "000558",
"AreaList": [
{
"FillType": "GLASS",
+1 -1
View File
@@ -94,7 +94,7 @@
"JointType": "FULL_H"
}
],
"Hardware": "102112",
"Hardware": "000559",
"AreaList": [
{
"AreaList": [
+12 -83
View File
@@ -1,119 +1,48 @@
[
{
"sId": "101111",
"sId": "000558",
"sFamily": "Natura",
"sName": "Natura_ANTA_RIBALTA_RECTANGLE_1SASH_2T_12_2T",
"sName": "Profilo78_Rect_Sash",
"sOpeningType": "ANTA_RIBALTA",
"sShape": "RECTANGLE",
"nSashQty": "1",
"nSashPosition": "1"
},
{
"sId": "101112",
"sId": "000562",
"sFamily": "Natura",
"sName": "Natura_ANTA_RIBALTA_RECTANGLE_1SASH_3T_12_3T",
"sOpeningType": "ANTA_RIBALTA",
"sShape": "RECTANGLE",
"nSashQty": "1",
"nSashPosition": "1"
},
{
"sId": "101121",
"sFamily": "Natura",
"sName": "Natura_ANTA_BANDIERA_RECTANGLE_1SASH_2T_12_2T",
"sName": "Profilo78_Rect_Sash",
"sOpeningType": "ANTA_BANDIERA",
"sShape": "RECTANGLE",
"nSashQty": "1",
"nSashPosition": "1"
},
{
"sId": "101122",
"sId": "000559",
"sFamily": "Natura",
"sName": "Natura_ANTA_BANDIERA_RECTANGLE_1SASH_3T_12_3T",
"sOpeningType": "ANTA_BANDIERA",
"sShape": "RECTANGLE",
"nSashQty": "1",
"nSashPosition": "1"
},
{
"sId": "101211",
"sFamily": "Natura",
"sName": "Natura_ANTA_RIBALTA_CHAMFER_1SASH_3T_12_3T",
"sOpeningType": "ANTA_RIBALTA",
"sShape": "CHAMFER",
"nSashQty": "1",
"nSashPosition": "1"
},
{
"sId": "102111",
"sFamily": "Natura",
"sName": "Natura_ANTA_RIBALTA_RECTANGLE_2SASH_3T_12_3T",
"sName": "Profilo78_Rect_DoubleSash",
"sOpeningType": "ANTA_RIBALTA",
"sShape": "RECTANGLE",
"nSashQty": "2",
"nSashPosition": "1"
},
{
"sId": "102112",
"sId": "000563",
"sFamily": "Natura",
"sName": "Natura_ANTA_RIBALTA_RECTANGLE_2SASH_2T_18_2T",
"sOpeningType": "ANTA_RIBALTA",
"sShape": "RECTANGLE",
"nSashQty": "2",
"nSashPosition": "1"
},
{
"sId": "102121",
"sFamily": "Natura",
"sName": "Natura_ANTA_BANDIERA_RECTANGLE_2SASH_3T_12_3T",
"sName": "Profilo78_TurnOnly_Rect_DoubleSash",
"sOpeningType": "ANTA_BANDIERA",
"sShape": "RECTANGLE",
"nSashQty": "2",
"nSashPosition": "1"
},
{
"sId": "102221",
"sId": "000560",
"sFamily": "Natura",
"sName": "Natura_ANTA_BANDIERA_CHAMFER_2SASH_3T_12_3T",
"sOpeningType": "ANTA_BANDIERA",
"sShape": "CHAMFER",
"nSashQty": "2",
"nSashPosition": "1"
},
{
"sId": "201111",
"sFamily": "Optima",
"sName": "Optima_ANTA_RIBALTA_RECTANGLE_1SASH_3T_12_3T",
"sName": "Profilo78_Rect_TripleSash",
"sOpeningType": "ANTA_RIBALTA",
"sShape": "RECTANGLE",
"nSashQty": "1",
"nSashPosition": "1"
},
{
"sId": "201221",
"sFamily": "Optima",
"sName": "Optima_ANTA_BANDIERA_RECTANGLE_1SASH_3T_12_3T",
"sOpeningType": "ANTA_BANDIERA",
"sShape": "CHAMFER",
"nSashQty": "1",
"nSashPosition": "1"
},
{
"sId": "202111",
"sFamily": "Optima",
"sName": "Optima_ANTA_RIBALTA_RECTANGLE_2SASH_3T_12_3T",
"sOpeningType": "ANTA_RIBALTA",
"sShape": "RECTANGLE",
"nSashQty": "2",
"nSashPosition": "1"
},
{
"sId": "202211",
"sFamily": "Optima",
"sName": "Optima_ANTA_RIBALTA_CHAMFER_2SASH_3T_12_3T",
"sOpeningType": "ANTA_RIBALTA",
"sShape": "CHAMFER",
"nSashQty": "2",
"nSashQty": "3",
"nSashPosition": "1"
}
]
+20 -1
View File
@@ -6,7 +6,7 @@
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<Version>2.7.9.1313</Version>
<Version>2.7.9.1615</Version>
<Authors>Annamaria Sassi</Authors>
<Company>Egalware</Company>
<Description>Componente gestione JWD per LUX</Description>
@@ -22,4 +22,23 @@
+3 -1
View File
@@ -6,7 +6,7 @@
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<Version>2.7.9.1313</Version>
<Version>2.7.9.1615</Version>
<Authors>Annamaria Sassi</Authors>
<Company>Egalware</Company>
<Description>Componente gestione Configurazioni avanzate Window per LUX</Description>
@@ -37,3 +37,5 @@
+2 -2
View File
@@ -17,7 +17,7 @@ namespace WebWindowComplex
{
public event EventHandler<OnPreviewEventArgs> OnPreview = delegate { };
private String m_sProfilePath;
private string m_sProfilePath;
public string sProfilePath
{
get
@@ -1093,7 +1093,7 @@ namespace WebWindowComplex
internal void SetSelHardwareFromId(string sId)
{
m_SelHardware = m_HardwareList.FirstOrDefault(x => x.sId == sId);
m_SelHardware = m_HardwareList.FirstOrDefault(x => x.sId == sId)?? new Hardware("","","","","",0,0);
if (m_SelHardware != null)
m_SelHardware = m_HardwareList[0];
}
@@ -6,7 +6,7 @@
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<Version>2.7.9.1313</Version>
<Version>2.7.9.1615</Version>
<Authors>Annamaria Sassi</Authors>
<Company>Egalware</Company>
<Description>Componente gestione JWD per LUX</Description>
@@ -48,3 +48,6 @@
+196
View File
@@ -0,0 +1,196 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WebWindowTest
{
public partial class ParametriOpzioni
{
private ParametriOpzioniParametri[] itemsField;
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute("Parametri", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public ParametriOpzioniParametri[] Items
{
get
{
return this.itemsField;
}
set
{
this.itemsField = value;
}
}
}
public partial class ParametriOpzioniParametri
{
private string nomeParametroField;
private string descrizioneParametroField;
private string valoreCorrenteField;
private string tipoField;
private string visibleField;
private string ricalcolaSeModificatoField;
private ParametriOpzioniParametriOpzioni[] opzioniField;
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string NomeParametro
{
get
{
return this.nomeParametroField;
}
set
{
this.nomeParametroField = value;
}
}
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string DescrizioneParametro
{
get
{
return this.descrizioneParametroField;
}
set
{
this.descrizioneParametroField = value;
}
}
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string ValoreCorrente
{
get
{
return this.valoreCorrenteField;
}
set
{
this.valoreCorrenteField = value;
}
}
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string Tipo
{
get
{
return this.tipoField;
}
set
{
this.tipoField = value;
}
}
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string Visible
{
get
{
return this.visibleField;
}
set
{
this.visibleField = value;
}
}
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string RicalcolaSeModificato
{
get
{
return this.ricalcolaSeModificatoField;
}
set
{
this.ricalcolaSeModificatoField = value;
}
}
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute("Opzioni", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public ParametriOpzioniParametriOpzioni[] Opzioni
{
get
{
return this.opzioniField;
}
set
{
this.opzioniField = value;
}
}
}
public partial class ParametriOpzioniParametriOpzioni
{
private string nomeParametroField;
private string descrizioneOpzioneField;
private string valoreField;
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string NomeParametro
{
get
{
return this.nomeParametroField;
}
set
{
this.nomeParametroField = value;
}
}
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string DescrizioneOpzione
{
get
{
return this.descrizioneOpzioneField;
}
set
{
this.descrizioneOpzioneField = value;
}
}
/// <remarks/>
//[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
public string Valore
{
get
{
return this.valoreField;
}
set
{
this.valoreField = value;
}
}
}
}
+2 -2
View File
@@ -368,7 +368,7 @@
int Index = j;
<div class="col-4">
<div class="input-group mb-2">
<button class="btn btn-outline-secondary btn-sm" @onclick="() => CopySplitted(currSplitted, Index)">Copy sash @(j+1)</button>
<button class="btn btn-outline-secondary btn-sm" @onclick="() => CopySash(currSplitted, Index)">Copy sash @(j+1)</button>
</div>
</div>
}
@@ -483,7 +483,7 @@
int IndexModify = i * 2 + j;
<div class="col-sm-4">
<div class="input-group">
<button class="btn btn-outline-secondary btn-sm" @onclick="() => CopyContent(item, IndexCopy, IndexModify)">Copy @(k)</button>
<button class="btn btn-outline-secondary btn-sm" @onclick="() => CopyContentSash(item, IndexCopy, IndexModify)">Copy @(k)</button>
</div>
</div>
}
+10 -23
View File
@@ -281,10 +281,8 @@ namespace WebWindowTest
/// </summary>
/// <param name="sashDim"></param>
/// <returns></returns>
protected async Task changeHandle(SashDimension sashDim)
protected void changeHandle(SashDimension sashDim)
{
//if(m_SashList[0].AreaList.Count < 3)
//{
foreach (SashDimension item in SashList[0].SashList)
{
if (item.Equals(sashDim))
@@ -296,8 +294,6 @@ namespace WebWindowTest
item.bHasHandle = false;
}
}
//}
await Task.Delay(1);
}
// Ancora da fare...
@@ -623,7 +619,7 @@ namespace WebWindowTest
/// Metodo per settare tutti i Joints di Frame o Sash come ANGLED o FULL_H o FULL_V
/// </summary>
/// <param name="n_type"> tipo di giunzione (ANGLED o FULL_H o FULL_V)</param>
/// <param name="n_place"> oggetto a cui essere applicato (Frame o Sash)</param>
/// <param name="area"> area su cui eseguire la funzione (Frame o Sash)</param>
/// <returns></returns>
private async Task AllJointsFrame(int n_type, Area area)
{
@@ -651,20 +647,6 @@ namespace WebWindowTest
joint.SetSelJointType(type);
}
}
//if (n_place == 0)
//{
// foreach (Joint joint in FrameWindow.JointList)
// {
// joint.SetSelJointType(type);
// }
//}
//else if (n_place == 1)
//{
// foreach (Joint joint in m_SashList[0].JointList)
// {
// joint.SetSelJointType(type);
// }
//}
await DoPreviewSvg();
}
@@ -693,7 +675,7 @@ namespace WebWindowTest
/// <param name="sashItem">Sash dove si torva anta </param>
/// <param name="IndexCopy">Indice dell'anta che si copia</param>
/// <param name="IndexModify">Indice dell'anta che si modifica</param>
private async Task CopyContent(Sash sashItem, int IndexCopy, int IndexModify)
private async Task CopyContentSash(Sash sashItem, int IndexCopy, int IndexModify)
{
// Anta selezionata
Area sashSplitted = sashItem.AreaList[IndexModify];
@@ -706,7 +688,13 @@ namespace WebWindowTest
await DoPreviewSvg();
}
private async Task CopySplitted(Splitted currSplitted, int numSash)
/// <summary>
/// Metodo per copiare una sash intera
/// </summary>
/// <param name="currSplitted"></param>
/// <param name="numSash"></param>
/// <returns></returns>
private async Task CopySash(Splitted currSplitted, int numSash)
{
//Rimuovo contenuto di Splitted
currSplitted.AreaList.RemoveAll(i => i != null);
@@ -776,7 +764,6 @@ namespace WebWindowTest
currSash = -1;
}
private void ChangeColorWindow(ColorWindow newColorWin)
{
currColorWin = newColorWin;
+53 -28
View File
@@ -7,6 +7,7 @@ using System.Drawing;
using System.Runtime.Intrinsics.Arm;
using System.Xml.Serialization;
using WebWindowTest.Json;
using static WebWindowTest.ParametriOpzioni;
using static WebWindowTest.Json.WindowConst;
namespace WebWindowTest
@@ -16,7 +17,7 @@ namespace WebWindowTest
{
public event EventHandler<OnPreviewEventArgs> OnPreview = delegate { };
private String m_sProfilePath;
private string m_sProfilePath;
public string sProfilePath
{
get
@@ -1092,7 +1093,7 @@ namespace WebWindowTest
internal void SetSelHardwareFromId(string sId)
{
m_SelHardware = m_HardwareList.FirstOrDefault(x => x.sId == sId);
m_SelHardware = m_HardwareList.FirstOrDefault(x => x.sId == sId)?? new Hardware("","","","","",0,0);
if (m_SelHardware == null)
m_SelHardware = m_HardwareList[0];
}
@@ -1125,8 +1126,8 @@ namespace WebWindowTest
}
}
private ObservableCollection<AGBOption> m_HwdOptionList = new ObservableCollection<AGBOption>();
public ObservableCollection<AGBOption> HwdOptionList
private ObservableCollection<ParametriOpzioni> m_HwdOptionList = new ObservableCollection<ParametriOpzioni>();
public ObservableCollection<ParametriOpzioni> HwdOptionList
{
get
{
@@ -1831,7 +1832,7 @@ namespace WebWindowTest
}
}
public class AGBOption
public partial class ParametriOpzioni
{
public enum HDWOPTIONTYPES : int
{
@@ -1840,7 +1841,7 @@ namespace WebWindowTest
COMBO = 3
}
private HDWOPTIONTYPES m_Type;
protected HDWOPTIONTYPES m_Type;
public HDWOPTIONTYPES Type
{
get
@@ -1867,6 +1868,25 @@ namespace WebWindowTest
}
}
private Visibility m_OptVisibility;
public Visibility OptVisibility
{
get
{
return m_OptVisibility;
}
}
public ParametriOpzioni(ParametriOpzioniParametri HdwOptionParam)
{
m_sName = HdwOptionParam.NomeParametro;
m_sDescription = HdwOptionParam.DescrizioneParametro;
m_OptVisibility = Visibility.VISIBLE; // If(HdwOptionParam.Visible.ToLower = "true", Visibility.Visible, Visibility.Collapsed)
}
}
public class AGBOptionCombo : ParametriOpzioni
{
private List<AGBOptionParameter> m_ValueList = new List<AGBOptionParameter>();
public List<AGBOptionParameter> ValueList
{
@@ -1889,30 +1909,13 @@ namespace WebWindowTest
}
}
private Visibility m_OptVisibility;
public Visibility OptVisibility
public AGBOptionCombo(ParametriOpzioniParametri HdwOptionParam) : base(HdwOptionParam)
{
get
{
return m_OptVisibility;
}
m_Type = HDWOPTIONTYPES.COMBO;
foreach (var Value in HdwOptionParam.Opzioni)
m_ValueList.Add(new AGBOptionParameter(Value.Valore, Value.DescrizioneOpzione));
m_sValue = m_ValueList.FirstOrDefault(x => x.sValue == HdwOptionParam.ValoreCorrente)?? new AGBOptionParameter("", "");
}
//public AGBOption(ParametriOpzioniParametri HdwOptionParam)
//{
// if (HdwOptionParam.Opzioni.Count > 0)
// {
// m_Type = HDWOPTIONTYPES.COMBO;
// foreach (var Value in HdwOptionParam.Opzioni)
// m_ValueList.Add(new AGBOptionParameter(Value.Valore, Value.DescrizioneOpzione));
// }
// else
// m_Type = HDWOPTIONTYPES.TEXT;
// m_sName = HdwOptionParam.NomeParametro;
// m_sDescription = HdwOptionParam.DescrizioneParametro;
// m_sValue = m_ValueList.FirstOrDefault(x => x.sValue == HdwOptionParam.ValoreCorrente);
// m_OptVisibility = Visibility.Visible; // If(HdwOptionParam.Visible.ToLower = "true", Visibility.Visible, Visibility.Collapsed)
//}
}
public class AGBOptionParameter
@@ -1942,6 +1945,28 @@ namespace WebWindowTest
}
}
public class AGBOptionText : ParametriOpzioni
{
private string m_sValue;
public string sValue
{
get
{
return m_sValue;
}
set
{
m_sValue = value;
}
}
public AGBOptionText(ParametriOpzioniParametri HdwOptionParam) : base(HdwOptionParam)
{
m_Type = HDWOPTIONTYPES.TEXT;
m_sValue = HdwOptionParam.ValoreCorrente;
}
}
public class FrameDimension
{
// valore massimo e minimo della dimensione del frame