Files
webwindowconfigurator/WebWindowComplex/Compo/AreaFrame.razor.cs
T
2026-08-13 11:10:50 +02:00

91 lines
2.5 KiB
C#

using Microsoft.AspNetCore.Components;
using WebWindowComplex.Models;
namespace WebWindowComplex.Compo
{
public partial class AreaFrame
{
#region Public Properties
/// <summary>
/// Frame corrente
/// </summary>
[CascadingParameter(Name = "CurrFrameWindow")]
public Frame CurrFrameWindow { get; set; } = null!;
/// <summary>
/// Lista sash
/// </summary>
[CascadingParameter(Name = "SashGroupList")]
public List<Sash> SashGroupList { get; set; } = null!;
/// <summary>
/// Lista split
/// </summary>
[CascadingParameter(Name = "SplitList")]
public List<Split> SplitList { get; set; } = null!;
/// <summary>
/// Evento per richiesta traduzioni
/// </summary>
[CascadingParameter(Name = "Vocabulary")]
public Dictionary<string, string> Vocabulary { get; set; } = null!;
[Parameter]
public EventCallback<bool> EC_AddSash { get; set; }
[Parameter]
public EventCallback<bool> EC_AddSplit { get; set; }
[Parameter]
public EventCallback<bool> EC_AddInglesina { get; set; }
#endregion Public Properties
#region Private Methods
/// <summary>
/// Sollevo evento richiesta aggiunta sash su frame
/// </summary>
/// <returns></returns>
private Task RaiseAddSash()
{
return EC_AddSash.InvokeAsync(true);
}
/// <summary>
/// Sollevo evento richiesta aggiunta split su frame
/// </summary>
/// <returns></returns>
private Task RaiseAddSplit()
{
return EC_AddSplit.InvokeAsync(true);
}
/// <summary>
/// Sollevo evento richiesta aggiunta inglesina su frame
/// </summary>
/// <returns></returns>
private Task RaiseAddInglesina()
{
return EC_AddInglesina.InvokeAsync(true);
}
/// <summary>
/// Metodo per traduzione in lingua corrente
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
private string Traduci(string lemma)
{
string ans = lemma;
if (Vocabulary != null && Vocabulary.ContainsKey(lemma))
{
ans = Vocabulary.GetValueOrDefault(lemma) ?? "";
}
return ans;
}
#endregion Private Methods
}
}