Files
ersatztv/ErsatzTV/ViewModels/DecoTemplateTreeItemViewModel.cs
T
Jason DoveandGitHub 2a9f23cce6 update layout for group editors (#2140)
* update block group editor

* update playlist group editor

* update template group editor

* update deco group editor

* update deco template group editor

* update deco editor

* update logs layout

* update changelog
2025-07-12 13:45:50 +00:00

54 lines
1.5 KiB
C#

using ErsatzTV.Application.Scheduling;
using ErsatzTV.Application.Tree;
using MudBlazor;
namespace ErsatzTV.ViewModels;
public class DecoTemplateTreeItemViewModel
{
public DecoTemplateTreeItemViewModel(DecoTemplateGroupViewModel decoTemplateGroup)
{
Text = decoTemplateGroup.Name;
TreeItems = [];
DecoTemplateGroupId = decoTemplateGroup.Id;
Icon = Icons.Material.Filled.Folder;
}
public DecoTemplateTreeItemViewModel(TreeGroupViewModel decoTemplateGroup)
{
Text = decoTemplateGroup.Name;
TreeItems = decoTemplateGroup.Children.Map(d => new TreeItemData<DecoTemplateTreeItemViewModel>
{ Value = new DecoTemplateTreeItemViewModel(d) }).ToList();
DecoTemplateGroupId = decoTemplateGroup.Id;
Icon = Icons.Material.Filled.Folder;
}
public DecoTemplateTreeItemViewModel(DecoTemplateViewModel decoTemplate)
{
Text = decoTemplate.Name;
TreeItems = [];
CanExpand = false;
DecoTemplateId = decoTemplate.Id;
}
public DecoTemplateTreeItemViewModel(TreeItemViewModel decoTemplate)
{
Text = decoTemplate.Name;
TreeItems = [];
CanExpand = false;
DecoTemplateId = decoTemplate.Id;
}
public string Text { get; }
public string Icon { get; }
public bool CanExpand { get; }
public int? DecoTemplateId { get; }
public int? DecoTemplateGroupId { get; }
public List<TreeItemData<DecoTemplateTreeItemViewModel>> TreeItems { get; }
}