Update main UI a bit

This commit is contained in:
2026-02-16 14:00:16 +09:00
parent 7218eee197
commit 9bae4b49eb
3 changed files with 63 additions and 41 deletions
+31
View File
@@ -0,0 +1,31 @@
#nullable enable
using System;
using System.Collections.ObjectModel;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using Avalonia.Platform.Storage;
using Avalonia.Themes.Fluent;
using DialogHostAvalonia;
using ImageMagick;
using MigraDoc.DocumentObjectModel;
using MigraDoc.Rendering;
using PdfSharp.Fonts;
using PdfSharp.Pdf.IO;
using PdfSharp.Snippets.Font;
using ReceiptPDFBuilder.Interfaces;
using ReceiptPDFBuilder.Models;
namespace ReceiptPDFBuilder.ViewModels;
class EditFileViewModel : BaseViewModel
{
ReportFile _file;
public EditFileViewModel(ReportFile file, IChangeViewModel viewModelChanger) : base(viewModelChanger)
{
_file = file;
}
}
+5 -24
View File
@@ -103,30 +103,6 @@ class MainViewModel : BaseViewModel, IFontResolver
}
}
public void MoveItemUp(ReportFile file)
{
var idx = ReportFiles.IndexOf(file);
if (idx != 0)
{
// .Move() is not observed -_-
// https://github.com/AvaloniaUI/Avalonia.Controls.DataGrid/issues/74
// ReportFiles.Move(idx, idx - 1);
// So, remove and insert.
ReportFiles.RemoveAt(idx);
ReportFiles.Insert(idx - 1, file);
}
}
public void MoveItemDown(ReportFile file)
{
var idx = ReportFiles.IndexOf(file);
if (idx != ReportFiles.Count - 1)
{
ReportFiles.RemoveAt(idx);
ReportFiles.Insert(idx + 1, file);
}
}
public async void RemoveFile(ReportFile file)
{
var result = await DialogHost.Show(new WarningDeleteItemModel(file));
@@ -140,6 +116,11 @@ class MainViewModel : BaseViewModel, IFontResolver
}
}
public async void EditFileProperties(ReportFile file)
{
var result = await DialogHost.Show(new EditFileViewModel(file, ViewModelChanger));
}
private async void BuildPDF()
{
try