Files
2026-01-16 15:10:19 +01:00

67 lines
1.8 KiB
C#

using Egw.Window.Data;
using Microsoft.AspNetCore.Components;
using WebWindowTest.Models;
namespace WebWindowTest.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 async Task RaiseCopySash(int indexCurrSash)
{
//Rimuovo contenuto di Splitted e rimuovo area da conteggio gruppi
CurrSplitted.AreaList.RemoveAll(i => i != null);
// Copio sash
Area a = SashList[indexCurrSash].Copy(CurrSplitted);
a.SetParentArea(CurrSplitted);
// Aggiungo copia a Splitted
CurrSplitted.AreaList.Add(a);
await EC_UpdateSplitted.InvokeAsync(CurrSplitted);
}
/// <summary>
/// Metodo per aggiungere prima sash
/// </summary>
/// <returns></returns>
private async Task RaiseAddSash()
{
CurrSplitted.AddFirstSash();
await EC_UpdateSplitted.InvokeAsync(CurrSplitted);
}
#endregion Private Methods
}
}