Windows: Add cursor waiting
This commit is contained in:
@ -102,15 +102,19 @@ namespace Elwig.Windows {
|
|||||||
|
|
||||||
private async void Menu_Print_ShowDeliveryNote_Click(object sender, RoutedEventArgs evt) {
|
private async void Menu_Print_ShowDeliveryNote_Click(object sender, RoutedEventArgs evt) {
|
||||||
if (DeliveryList.SelectedItem is not Delivery d) return;
|
if (DeliveryList.SelectedItem is not Delivery d) return;
|
||||||
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
using var doc = new DeliveryNote(d, Context);
|
using var doc = new DeliveryNote(d, Context);
|
||||||
await doc.Generate();
|
await doc.Generate();
|
||||||
doc.Show();
|
doc.Show();
|
||||||
|
Mouse.OverrideCursor = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private async void Menu_Print_PrintDeliveryNote_Click(object sender, RoutedEventArgs evt) {
|
private async void Menu_Print_PrintDeliveryNote_Click(object sender, RoutedEventArgs evt) {
|
||||||
if (DeliveryList.SelectedItem is not Delivery d) return;
|
if (DeliveryList.SelectedItem is not Delivery d) return;
|
||||||
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
using var doc = new DeliveryNote(d, Context);
|
using var doc = new DeliveryNote(d, Context);
|
||||||
await doc.Generate();
|
await doc.Generate();
|
||||||
|
Mouse.OverrideCursor = null;
|
||||||
await doc.Print();
|
await doc.Print();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -702,26 +706,36 @@ namespace Elwig.Windows {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private async void NewDeliveryPartButton_Click(object sender, RoutedEventArgs evt) {
|
private async void NewDeliveryPartButton_Click(object sender, RoutedEventArgs evt) {
|
||||||
|
FinishButton.IsEnabled = false;
|
||||||
|
NewDeliveryPartButton.IsEnabled = false;
|
||||||
|
NewDeliveryPartButton.Cursor = Cursors.Wait;
|
||||||
DeliveryPartList.IsEnabled = false;
|
DeliveryPartList.IsEnabled = false;
|
||||||
var p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
|
var p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
|
||||||
await RefreshDeliveryList();
|
await RefreshDeliveryList();
|
||||||
await RefreshDeliveryParts();
|
await RefreshDeliveryParts();
|
||||||
|
NewDeliveryPartButton.Cursor = null;
|
||||||
DeliveryList.SelectedItem = p?.Delivery;
|
DeliveryList.SelectedItem = p?.Delivery;
|
||||||
DeliveryPartList.SelectedItem = null;
|
DeliveryPartList.SelectedItem = null;
|
||||||
InitialInputs();
|
InitialInputs();
|
||||||
}
|
}
|
||||||
|
|
||||||
private async void FinishButton_Click(object sender, RoutedEventArgs evt) {
|
private async void FinishButton_Click(object sender, RoutedEventArgs evt) {
|
||||||
|
FinishButton.IsEnabled = false;
|
||||||
|
NewDeliveryPartButton.IsEnabled = false;
|
||||||
|
FinishButton.Cursor = Cursors.Wait;
|
||||||
DeliveryPartList.IsEnabled = false;
|
DeliveryPartList.IsEnabled = false;
|
||||||
var p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
|
var p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
|
||||||
await RefreshDeliveryList();
|
await RefreshDeliveryList();
|
||||||
await RefreshDeliveryParts();
|
await RefreshDeliveryParts();
|
||||||
if (p?.Delivery != null) {
|
if (p?.Delivery != null) {
|
||||||
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
using var doc = new DeliveryNote(p.Delivery, Context);
|
using var doc = new DeliveryNote(p.Delivery, Context);
|
||||||
await doc.Generate();
|
await doc.Generate();
|
||||||
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
doc.Show();
|
doc.Show();
|
||||||
//await doc.Print(2);
|
//await doc.Print(2);
|
||||||
}
|
}
|
||||||
|
FinishButton.Cursor = null;
|
||||||
DeliveryList.SelectedItem = null;
|
DeliveryList.SelectedItem = null;
|
||||||
InitInputs();
|
InitInputs();
|
||||||
}
|
}
|
||||||
@ -769,6 +783,7 @@ namespace Elwig.Windows {
|
|||||||
try {
|
try {
|
||||||
if (res == null || res <= 0)
|
if (res == null || res <= 0)
|
||||||
return;
|
return;
|
||||||
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
ClearOriginalValues();
|
ClearOriginalValues();
|
||||||
if (res >= p.Weight) {
|
if (res >= p.Weight) {
|
||||||
ControlUtils.SelectComboBoxItem(WineQualityLevelInput, q => (q as WineQualLevel)?.QualId, "WEI");
|
ControlUtils.SelectComboBoxItem(WineQualityLevelInput, q => (q as WineQualLevel)?.QualId, "WEI");
|
||||||
@ -797,6 +812,7 @@ namespace Elwig.Windows {
|
|||||||
}
|
}
|
||||||
await Context.SaveChangesAsync();
|
await Context.SaveChangesAsync();
|
||||||
await RefreshDeliveryParts();
|
await RefreshDeliveryParts();
|
||||||
|
Mouse.OverrideCursor = null;
|
||||||
FinishInputFilling();
|
FinishInputFilling();
|
||||||
} catch (Exception exc) {
|
} catch (Exception exc) {
|
||||||
if (entry1 != null) {
|
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?",
|
$"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);
|
"Lieferung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
|
||||||
if (r == MessageBoxResult.Yes) {
|
if (r == MessageBoxResult.Yes) {
|
||||||
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
Context.Remove(d);
|
Context.Remove(d);
|
||||||
await Context.SaveChangesAsync();
|
await Context.SaveChangesAsync();
|
||||||
await RefreshDeliveryList();
|
await RefreshDeliveryList();
|
||||||
await RefreshDeliveryParts();
|
await RefreshDeliveryParts();
|
||||||
|
Mouse.OverrideCursor = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private async void SaveButton_Click(object sender, RoutedEventArgs evt) {
|
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;
|
IsEditing = false;
|
||||||
IsCreating = false;
|
IsCreating = false;
|
||||||
DeliveryList.IsEnabled = true;
|
DeliveryList.IsEnabled = true;
|
||||||
DeliveryPartList.IsEnabled = true;
|
DeliveryPartList.IsEnabled = true;
|
||||||
|
|
||||||
|
DeliveryPart p = await UpdateDeliveryPart(DeliveryList.SelectedItem as Delivery, DeliveryPartList.SelectedItem as DeliveryPart);
|
||||||
|
|
||||||
|
SaveButton.Cursor = null;
|
||||||
|
|
||||||
HideSaveResetCancelButtons();
|
HideSaveResetCancelButtons();
|
||||||
ShowNewEditDeleteButtons();
|
ShowNewEditDeleteButtons();
|
||||||
LockInputs();
|
LockInputs();
|
||||||
@ -925,12 +948,12 @@ namespace Elwig.Windows {
|
|||||||
.ToListAsync();
|
.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;
|
EntityEntry<Delivery>? entry = null;
|
||||||
try {
|
try {
|
||||||
Delivery? d = null;
|
Delivery? d = null;
|
||||||
if (res == null) {
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
return;
|
if (res == "new") {
|
||||||
} else if (res == "new") {
|
|
||||||
d = Context.CreateProxy<Delivery>();
|
d = Context.CreateProxy<Delivery>();
|
||||||
d.Date = delivery.Date;
|
d.Date = delivery.Date;
|
||||||
d.Time = delivery.Time;
|
d.Time = delivery.Time;
|
||||||
@ -958,6 +981,7 @@ namespace Elwig.Windows {
|
|||||||
await Context.Entry(p).ReloadAsync();
|
await Context.Entry(p).ReloadAsync();
|
||||||
await Context.Entry(delivery).ReloadAsync();
|
await Context.Entry(delivery).ReloadAsync();
|
||||||
|
|
||||||
|
Mouse.OverrideCursor = null;
|
||||||
await RefreshDeliveryList();
|
await RefreshDeliveryList();
|
||||||
DeliveryList.SelectedItem = d;
|
DeliveryList.SelectedItem = d;
|
||||||
} catch (Exception exc) {
|
} catch (Exception exc) {
|
||||||
@ -979,9 +1003,11 @@ namespace Elwig.Windows {
|
|||||||
$"Soll die Teillieferung Nr. {p.DPNr} wirklich unwiderruflich gelöscht werden?",
|
$"Soll die Teillieferung Nr. {p.DPNr} wirklich unwiderruflich gelöscht werden?",
|
||||||
"Lieferung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
|
"Lieferung löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No);
|
||||||
if (r == MessageBoxResult.Yes) {
|
if (r == MessageBoxResult.Yes) {
|
||||||
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
Context.Remove(p);
|
Context.Remove(p);
|
||||||
await Context.SaveChangesAsync();
|
await Context.SaveChangesAsync();
|
||||||
await RefreshDeliveryParts();
|
await RefreshDeliveryParts();
|
||||||
|
Mouse.OverrideCursor = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
|
using System.Windows.Input;
|
||||||
using Elwig.Documents;
|
using Elwig.Documents;
|
||||||
using Elwig.Helpers;
|
using Elwig.Helpers;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
namespace Elwig.Windows {
|
namespace Elwig.Windows {
|
||||||
public partial class MainWindow : Window {
|
public partial class MainWindow : Window {
|
||||||
@ -38,13 +40,13 @@ namespace Elwig.Windows {
|
|||||||
// TODO
|
// TODO
|
||||||
}
|
}
|
||||||
|
|
||||||
private void PdfButton_Click(object sender, RoutedEventArgs evt) {
|
private async void PdfButton_Click(object sender, RoutedEventArgs evt) {
|
||||||
Utils.RunBackground("PDF Generation", async () => {
|
Mouse.OverrideCursor = Cursors.Wait;
|
||||||
using var ctx = new AppDbContext();
|
using var ctx = new AppDbContext();
|
||||||
using var doc = new DeliveryNote(ctx.Deliveries.OrderBy(d => d.Parts.Count).ThenBy(d => d.Year).ThenBy(d => d.DId).Last(), ctx);
|
using var doc = new DeliveryNote(await ctx.Deliveries.OrderBy(d => d.Parts.Count).ThenBy(d => d.Year).ThenBy(d => d.DId).LastAsync(), ctx);
|
||||||
await doc.Generate();
|
await doc.Generate();
|
||||||
doc.Show();
|
doc.Show();
|
||||||
});
|
Mouse.OverrideCursor = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void TestWindowButton_Click(object sender, RoutedEventArgs evt) {
|
private void TestWindowButton_Click(object sender, RoutedEventArgs evt) {
|
||||||
|
Reference in New Issue
Block a user