diff --git a/WebWindowComplex/TableComp.razor.cs b/WebWindowComplex/TableComp.razor.cs index e30c160..ff01122 100644 --- a/WebWindowComplex/TableComp.razor.cs +++ b/WebWindowComplex/TableComp.razor.cs @@ -631,12 +631,14 @@ namespace WebWindowComplex currFill = -1; currSplit = -1; currStep = CompileStep.Tree; + editLock = false; await DoPreviewSvg(); } // Ancora da fare.. protected async Task DoSave() { + editLock = false; //manca salvataggio JWD await EC_OnClose.InvokeAsync(true); } @@ -647,10 +649,19 @@ namespace WebWindowComplex /// template selezionato protected async void DoSelect(TemplateSelectDTO newSel) { + editLock = false; SelTemplateDTO = newSel; await EC_OnSelectedTemplate.InvokeAsync(newSel); } + /// + /// Primo init componente + /// + protected override void OnInitialized() + { + // reset editLock... + editLock = false; + } /// /// Gestione update post ricezione parametri da controllo chiamante @@ -669,7 +680,11 @@ namespace WebWindowComplex UpdateSelParameter(); JsonWindow WindowFromJson = JsonConvert.DeserializeObject(m_CurrJwd, new PolymorphicJsonConverter()) ?? new JsonWindow("", "", "", ""); setCurrWindow(WindowFromJson); - currStep = CompileStep.Tree; + //SOLO SE non sono in edit... + if (!editLock) + { + currStep = CompileStep.Tree; + } } else if (CurrSelection != null && CurrSelection.Template != null) { @@ -691,11 +706,6 @@ namespace WebWindowComplex } } - /// - /// Salvataggio JWD precedente x evitare loop su update - /// - private string prevJwd { get; set; } = ""; - protected void setCurrWindow(JsonWindow WindowFromJson) { if (m_CurrWindow != null) @@ -760,15 +770,11 @@ namespace WebWindowComplex #region Private Fields private int currAnta = 0; - private int currFill = -1; - private int currSash = -1; - private int currSplit = -1; - private CompileStep currStep; - + private bool editLock = false; private List m_FillList = new List(); private Frame? m_Frame; @@ -797,6 +803,11 @@ namespace WebWindowComplex private Template m_SelTemplate { get; set; } = null!; + /// + /// Salvataggio JWD precedente x evitare loop su update + /// + private string prevJwd { get; set; } = ""; + #endregion Private Properties #region Private Methods @@ -1041,6 +1052,7 @@ namespace WebWindowComplex /// step successivo private async void NextStepAndPreview(CompileStep newStep, int Index = -1) { + editLock = true; currStep = newStep; switch (newStep) { @@ -1066,7 +1078,11 @@ namespace WebWindowComplex break; } } + +#if false await DoPreviewSvg(); +#endif + await Task.Delay(1); } /// diff --git a/WebWindowComplex/WebWindowComplex.csproj b/WebWindowComplex/WebWindowComplex.csproj index 7258839..98a23ff 100644 --- a/WebWindowComplex/WebWindowComplex.csproj +++ b/WebWindowComplex/WebWindowComplex.csproj @@ -87,6 +87,8 @@ + + diff --git a/WebWindowConfigurator/WebWindowConfigurator.csproj b/WebWindowConfigurator/WebWindowConfigurator.csproj index 59834fa..8ac63fc 100644 --- a/WebWindowConfigurator/WebWindowConfigurator.csproj +++ b/WebWindowConfigurator/WebWindowConfigurator.csproj @@ -102,6 +102,8 @@ + +