Windows: Add cursor waiting

This commit is contained in:
2023-09-06 18:04:13 +02:00
parent 540236f878
commit 7086a72fab
2 changed files with 40 additions and 12 deletions

View File

@ -102,15 +102,19 @@ namespace Elwig.Windows {
private async void Menu_Print_ShowDeliveryNote_Click(object sender, RoutedEventArgs evt) {
if (DeliveryList.SelectedItem is not Delivery d) return;
Mouse.OverrideCursor = Cursors.Wait;
using var doc = new DeliveryNote(d, Context);
await doc.Generate();
doc.Show();
Mouse.OverrideCursor = null;
}
private async void Menu_Print_PrintDeliveryNote_Click(object sender, RoutedEventArgs evt) {
if (DeliveryList.SelectedItem is not Delivery d) return;
Mouse.OverrideCursor = Cursors.Wait;
using var doc = new DeliveryNote(d, Context);
await doc.Generate();
Mouse.OverrideCursor = null;
await doc.Print();
}
@ -702,26 +706,36 @@ namespace Elwig.Windows {
}
private async void NewDeliveryPartButton_Click(object sender, RoutedEventArgs evt) {
FinishButton.IsEnabled = false;
NewDeliveryPartButton.IsEnabled = false;
NewDeliveryPartButton.Cursor = Cursors.Wait;
DeliveryPartList.IsEnabled = false;
var p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
await RefreshDeliveryList();
await RefreshDeliveryParts();
NewDeliveryPartButton.Cursor = null;
DeliveryList.SelectedItem = p?.Delivery;
DeliveryPartList.SelectedItem = null;
InitialInputs();
}
private async void FinishButton_Click(object sender, RoutedEventArgs evt) {
FinishButton.IsEnabled = false;
NewDeliveryPartButton.IsEnabled = false;
FinishButton.Cursor = Cursors.Wait;
DeliveryPartList.IsEnabled = false;
var p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
await RefreshDeliveryList();
await RefreshDeliveryParts();
if (p?.Delivery != null) {
Mouse.OverrideCursor = Cursors.Wait;
using var doc = new DeliveryNote(p.Delivery, Context);
await doc.Generate();
Mouse.OverrideCursor = Cursors.Wait;
doc.Show();
//await doc.Print(2);
}
FinishButton.Cursor = null;
DeliveryList.SelectedItem = null;
InitInputs();
}
@ -769,6 +783,7 @@ namespace Elwig.Windows {
try {
if (res == null || res <= 0)
return;
Mouse.OverrideCursor = Cursors.Wait;
ClearOriginalValues();
if (res >= p.Weight) {
ControlUtils.SelectComboBoxItem(WineQualityLevelInput, q => (q as WineQualLevel)?.QualId, "WEI");
@ -797,6 +812,7 @@ namespace Elwig.Windows {
}
await Context.SaveChangesAsync();
await RefreshDeliveryParts();
Mouse.OverrideCursor = null;
FinishInputFilling();
} catch (Exception exc) {
if (entry1 != null) {
@ -849,21 +865,28 @@ namespace Elwig.Windows {
$"Soll die Lieferung {d.LsNr} ({d.Member.AdministrativeName}, MgNr. {d.Member.MgNr}) wirklich unwiderruflich gelöscht werden?",
"Lieferung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
if (r == MessageBoxResult.Yes) {
Mouse.OverrideCursor = Cursors.Wait;
Context.Remove(d);
await Context.SaveChangesAsync();
await RefreshDeliveryList();
await RefreshDeliveryParts();
Mouse.OverrideCursor = null;
}
}
private async void SaveButton_Click(object sender, RoutedEventArgs evt) {
DeliveryPart p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
SaveButton.IsEnabled = false;
SaveButton.Cursor = Cursors.Wait;
IsEditing = false;
IsCreating = false;
DeliveryList.IsEnabled = true;
DeliveryPartList.IsEnabled = true;
DeliveryPart p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
SaveButton.Cursor = null;
HideSaveResetCancelButtons();
ShowNewEditDeleteButtons();
LockInputs();
@ -924,13 +947,13 @@ namespace Elwig.Windows {
.Select(d => d.LsNr)
.ToListAsync();
var res = Utils.ShowDeliveryExtractionDialog($"{delivery.LsNr}/{p.DPNr}", delivery.Member.AdministrativeName, count == 1, lsnrs);
var res = Utils.ShowDeliveryExtractionDialog($"{delivery.LsNr}/{p.DPNr}", delivery.Member.AdministrativeName, count == 1, lsnrs);
if (res == null) return;
EntityEntry<Delivery>? entry = null;
try {
Delivery? d = null;
if (res == null) {
return;
} else if (res == "new") {
Mouse.OverrideCursor = Cursors.Wait;
if (res == "new") {
d = Context.CreateProxy<Delivery>();
d.Date = delivery.Date;
d.Time = delivery.Time;
@ -958,6 +981,7 @@ namespace Elwig.Windows {
await Context.Entry(p).ReloadAsync();
await Context.Entry(delivery).ReloadAsync();
Mouse.OverrideCursor = null;
await RefreshDeliveryList();
DeliveryList.SelectedItem = d;
} catch (Exception exc) {
@ -979,9 +1003,11 @@ namespace Elwig.Windows {
$"Soll die Teillieferung Nr. {p.DPNr} wirklich unwiderruflich gelöscht werden?",
"Lieferung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
if (r == MessageBoxResult.Yes) {
Mouse.OverrideCursor = Cursors.Wait;
Context.Remove(p);
await Context.SaveChangesAsync();
await RefreshDeliveryParts();
Mouse.OverrideCursor = null;
}
}