Skip to content

Commit 090d622

Browse files
committed
Fix: improve responsive ui on generation
1 parent f6cb475 commit 090d622

File tree

2 files changed

+14
-3
lines changed

2 files changed

+14
-3
lines changed

DebitExpress.VatRelief/MainWindow.xaml.cs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
using System.Linq;
55
using System.Reflection;
66
using System.Windows;
7+
using DebitExpress.Controls.Dialogs;
8+
using DebitExpress.DialogService;
79
using DebitExpress.VatRelief.Models;
810
using DebitExpress.VatRelief.Utils;
911
using MaterialDesignThemes.Wpf;
@@ -15,6 +17,7 @@ namespace DebitExpress.VatRelief;
1517
/// </summary>
1618
public partial class MainWindow
1719
{
20+
private readonly IDialog _dialog = new Dialog();
1821
private string _filePath = string.Empty;
1922
private readonly SnackbarMessageQueue _messageQueue;
2023
private readonly SnackbarMessageQueue _errorQueue;
@@ -33,8 +36,8 @@ public MainWindow()
3336

3437
GenerateButton.Click += OnGenerate;
3538
DownloadButton.Click += OnDownload;
36-
GithubButton.Click+= OnGithub;
37-
Loaded+= OnLoaded;
39+
GithubButton.Click += OnGithub;
40+
Loaded += OnLoaded;
3841
}
3942

4043
private void OnLoaded(object sender, RoutedEventArgs e)
@@ -89,6 +92,7 @@ private void OnDragOver(object sender, DragEventArgs e)
8992

9093
private async void OnGenerate(object sender, RoutedEventArgs e)
9194
{
95+
var loader = await _dialog.ShowLoadingAsync();
9296
try
9397
{
9498
if (!File.Exists(_filePath))
@@ -120,7 +124,7 @@ private async void OnGenerate(object sender, RoutedEventArgs e)
120124
}
121125

122126
var reconWriter = new ExcelReconWriter();
123-
var writeResult = reconWriter.WriteReconciliationReport(data, path);
127+
var writeResult = await reconWriter.WriteReconciliationReportAsync(data, path);
124128

125129
if (writeResult.IsFaulted)
126130
{
@@ -135,6 +139,7 @@ private async void OnGenerate(object sender, RoutedEventArgs e)
135139
finally
136140
{
137141
GenerateButton.IsEnabled = true;
142+
await _dialog.CloseLoadingAsync(loader);
138143
}
139144
}
140145

DebitExpress.VatRelief/Utils/ExcelReconWriter.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using System.Collections.Generic;
33
using System.IO;
44
using System.Linq;
5+
using System.Threading.Tasks;
56
using ClosedXML.Excel;
67
using DebitExpress.StringBuilders;
78
using DebitExpress.VatRelief.Models;
@@ -10,6 +11,11 @@ namespace DebitExpress.VatRelief.Utils;
1011

1112
public class ExcelReconWriter
1213
{
14+
public Task<Result> WriteReconciliationReportAsync(ExcelData data, string path)
15+
{
16+
return Task.Factory.StartNew(() => WriteReconciliationReport(data, path));
17+
}
18+
1319
public Result WriteReconciliationReport(ExcelData data, string path)
1420
{
1521
try

0 commit comments

Comments
 (0)