diff --git a/Test.UI/Components/Pages/TestComponentTemplate.razor b/Test.UI/Components/Pages/TestComponentTemplate.razor index 89f1f0e..ea70946 100644 --- a/Test.UI/Components/Pages/TestComponentTemplate.razor +++ b/Test.UI/Components/Pages/TestComponentTemplate.razor @@ -13,3 +13,7 @@ LiveSVG="@currSvg" CurrJwd="@InitialJwd"> + +@*

+ @m_CurrArgs.GetValueOrDefault("Jwd") +

*@ diff --git a/Test.UI/Data/AntaDoppia.jwd b/Test.UI/Data/AntaDoppia.jwd index 1fdcc46..1f9e28e 100644 --- a/Test.UI/Data/AntaDoppia.jwd +++ b/Test.UI/Data/AntaDoppia.jwd @@ -69,7 +69,7 @@ "JointType": "FULL_V" } ], - "Hardware": "102111", + "Hardware": "000559", "AreaList": [ { "AreaList": [ diff --git a/Test.UI/Data/AntaSingola.jwd b/Test.UI/Data/AntaSingola.jwd index 46c2320..f1902ad 100644 --- a/Test.UI/Data/AntaSingola.jwd +++ b/Test.UI/Data/AntaSingola.jwd @@ -64,7 +64,7 @@ "JointType": "FULL_H" } ], - "Hardware": "101111", + "Hardware": "000558", "AreaList": [ { "FillType": "GLASS", diff --git a/Test.UI/Data/FinDueAnteBottomFisso.jwd b/Test.UI/Data/FinDueAnteBottomFisso.jwd index 9ddb068..66a1f2b 100644 --- a/Test.UI/Data/FinDueAnteBottomFisso.jwd +++ b/Test.UI/Data/FinDueAnteBottomFisso.jwd @@ -94,7 +94,7 @@ "JointType": "FULL_H" } ], - "Hardware": "102112", + "Hardware": "000559", "AreaList": [ { "AreaList": [ diff --git a/Test.UI/Hardware/Setup.json b/Test.UI/Hardware/Setup.json index b232b3f..c937c0f 100644 --- a/Test.UI/Hardware/Setup.json +++ b/Test.UI/Hardware/Setup.json @@ -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" } + ] \ No newline at end of file diff --git a/WebWindow.Base/WebWindow.Base.csproj b/WebWindow.Base/WebWindow.Base.csproj index 3125f61..6fbe3d1 100644 --- a/WebWindow.Base/WebWindow.Base.csproj +++ b/WebWindow.Base/WebWindow.Base.csproj @@ -6,7 +6,7 @@ net8.0 enable enable - 2.7.9.1313 + 2.7.9.1615 Annamaria Sassi Egalware Componente gestione JWD per LUX @@ -22,4 +22,23 @@ + + + + + + + + + + + + + + + + + + + diff --git a/WebWindowComplex/WebWindowComplex.csproj b/WebWindowComplex/WebWindowComplex.csproj index 51fa38f..f460050 100644 --- a/WebWindowComplex/WebWindowComplex.csproj +++ b/WebWindowComplex/WebWindowComplex.csproj @@ -6,7 +6,7 @@ net8.0 enable enable - 2.7.9.1313 + 2.7.9.1615 Annamaria Sassi Egalware Componente gestione Configurazioni avanzate Window per LUX @@ -37,3 +37,5 @@ + + diff --git a/WebWindowComplex/Window.cs b/WebWindowComplex/Window.cs index 0364c68..62768dc 100644 --- a/WebWindowComplex/Window.cs +++ b/WebWindowComplex/Window.cs @@ -17,7 +17,7 @@ namespace WebWindowComplex { public event EventHandler 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]; } diff --git a/WebWindowConfigurator/WebWindowConfigurator.csproj b/WebWindowConfigurator/WebWindowConfigurator.csproj index eb9269d..f43082e 100644 --- a/WebWindowConfigurator/WebWindowConfigurator.csproj +++ b/WebWindowConfigurator/WebWindowConfigurator.csproj @@ -6,7 +6,7 @@ net8.0 enable enable - 2.7.9.1313 + 2.7.9.1615 Annamaria Sassi Egalware Componente gestione JWD per LUX @@ -48,3 +48,6 @@ + + + diff --git a/WebWindowTest/ParametriOpzioni.cs b/WebWindowTest/ParametriOpzioni.cs new file mode 100644 index 0000000..c91dbcc --- /dev/null +++ b/WebWindowTest/ParametriOpzioni.cs @@ -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; + + /// + //[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; + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string NomeParametro + { + get + { + return this.nomeParametroField; + } + set + { + this.nomeParametroField = value; + } + } + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string DescrizioneParametro + { + get + { + return this.descrizioneParametroField; + } + set + { + this.descrizioneParametroField = value; + } + } + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string ValoreCorrente + { + get + { + return this.valoreCorrenteField; + } + set + { + this.valoreCorrenteField = value; + } + } + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string Tipo + { + get + { + return this.tipoField; + } + set + { + this.tipoField = value; + } + } + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string Visible + { + get + { + return this.visibleField; + } + set + { + this.visibleField = value; + } + } + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string RicalcolaSeModificato + { + get + { + return this.ricalcolaSeModificatoField; + } + set + { + this.ricalcolaSeModificatoField = value; + } + } + + /// + //[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; + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string NomeParametro + { + get + { + return this.nomeParametroField; + } + set + { + this.nomeParametroField = value; + } + } + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string DescrizioneOpzione + { + get + { + return this.descrizioneOpzioneField; + } + set + { + this.descrizioneOpzioneField = value; + } + } + + /// + //[System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)] + public string Valore + { + get + { + return this.valoreField; + } + set + { + this.valoreField = value; + } + } + } + +} + + diff --git a/WebWindowTest/Test.razor b/WebWindowTest/Test.razor index 7c78520..02e10e7 100644 --- a/WebWindowTest/Test.razor +++ b/WebWindowTest/Test.razor @@ -368,7 +368,7 @@ int Index = j;
- +
} @@ -483,7 +483,7 @@ int IndexModify = i * 2 + j;
- +
} diff --git a/WebWindowTest/Test.razor.cs b/WebWindowTest/Test.razor.cs index a154dba..88bfdf6 100644 --- a/WebWindowTest/Test.razor.cs +++ b/WebWindowTest/Test.razor.cs @@ -281,10 +281,8 @@ namespace WebWindowTest /// /// /// - 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 /// /// tipo di giunzione (ANGLED o FULL_H o FULL_V) - /// oggetto a cui essere applicato (Frame o Sash) + /// area su cui eseguire la funzione (Frame o Sash) /// 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 /// Sash dove si torva anta /// Indice dell'anta che si copia /// Indice dell'anta che si modifica - 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) + /// + /// Metodo per copiare una sash intera + /// + /// + /// + /// + 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; diff --git a/WebWindowTest/Window.cs b/WebWindowTest/Window.cs index f3e35f3..b0f8bf2 100644 --- a/WebWindowTest/Window.cs +++ b/WebWindowTest/Window.cs @@ -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 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 m_HwdOptionList = new ObservableCollection(); - public ObservableCollection HwdOptionList + private ObservableCollection m_HwdOptionList = new ObservableCollection(); + public ObservableCollection 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 m_ValueList = new List(); public List 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