Files
webwindowconfigurator/WebWindowComplex/Compo/AreaSplit.razor.cs
T
2026-02-04 18:16:30 +01:00

64 lines
1.7 KiB
C#

using Egw.Window.Data;
using Microsoft.AspNetCore.Components;
using WebWindowComplex.Models;
namespace WebWindowComplex.Compo
{
public partial class AreaSplit
{
#region Public Properties
/// <summary>
/// Lista delle sash
/// </summary>
[Parameter]
public List<Sash> SashList { get; set; } = null!;
/// <summary>
/// Oggetto splitted corrente
/// </summary>
[Parameter]
public Splitted CurrSplitted { get; set; } = null!;
/// <summary>
/// Lista degli Splitted
/// </summary>
[Parameter]
public List<Splitted> SplittedList { get; set; } = null!;
/// <summary>
/// Evento per aggiungere Sash
/// </summary>
[Parameter]
public EventCallback<Splitted> EC_UpdateSplitted { get; set; }
#endregion Public Properties
#region Private Methods
/// <summary>
/// Metodo per copiare sash
/// </summary>
/// <returns></returns>
private Task RaiseCopySash(int indexCurrSash)
{
CurrSplitted.AreaList.RemoveAll(i => i != null);
Area a = SashList[indexCurrSash].Copy(CurrSplitted);
a.SetParentArea(CurrSplitted);
CurrSplitted.AreaList.Add(a);
return EC_UpdateSplitted.InvokeAsync(CurrSplitted);
}
/// <summary>
/// Metodo per aggiungere prima sash
/// </summary>
/// <returns></returns>
private Task RaiseAddSash()
{
CurrSplitted.AddFirstSash();
return EC_UpdateSplitted.InvokeAsync(CurrSplitted);
}
#endregion Private Methods
}
}