중간 저장

This commit is contained in:
2026-04-22 13:30:24 +09:00
parent 7cedeef5a9
commit 31857815d7
69 changed files with 7211 additions and 148 deletions

View File

@@ -16,6 +16,8 @@ public sealed class ChannelScheduleItem : ObservableObject
private string _currentRegionLabel = string.Empty;
private double _defaultCutDurationSeconds;
private int _totalCuts;
private double _thumbnailWidth = 160;
private double _thumbnailHeight = 90;
private ImageSource? _thumbnailSource;
public Guid Id { get; set; } = Guid.NewGuid();
@@ -140,6 +142,20 @@ public sealed class ChannelScheduleItem : ObservableObject
[JsonIgnore]
public bool HasThumbnail => CutThumbnailAssetCatalog.HasThumbnail(FormatId);
[JsonIgnore]
public double ThumbnailWidth
{
get => _thumbnailWidth;
private set => SetProperty(ref _thumbnailWidth, value);
}
[JsonIgnore]
public double ThumbnailHeight
{
get => _thumbnailHeight;
private set => SetProperty(ref _thumbnailHeight, value);
}
[JsonIgnore]
public string ThumbnailStatusLabel => HasThumbnail ? "등록 썸네일" : "기본 아이콘";
@@ -151,6 +167,12 @@ public sealed class ChannelScheduleItem : ObservableObject
OnPropertyChanged(nameof(ThumbnailStatusLabel));
}
public void UpdateThumbnailLayout(ThumbnailDisplayMetrics metrics)
{
ThumbnailWidth = metrics.Width;
ThumbnailHeight = metrics.Height;
}
public static ChannelScheduleItem FromTemplate(FormatTemplateDefinition template, ScheduleRegionOption? regionOption = null)
{
var selectedRegion = regionOption ?? new ScheduleRegionOption