Windows: Minor cleanups

This commit is contained in:
2024-08-08 23:18:15 +02:00
parent 2d737e2780
commit 170cfda37e
6 changed files with 33 additions and 22 deletions

View File

@ -1,4 +1,5 @@
<local:AdministrationWindow x:Class="Elwig.Windows.AreaComAdminWindow" <local:AdministrationWindow
x:Class="Elwig.Windows.AreaComAdminWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
@ -255,7 +256,7 @@
</GroupBox> </GroupBox>
</Grid> </Grid>
<StatusBar Grid.Row="5" Grid.ColumnSpan="3" BorderThickness="0,1,0,0" BorderBrush="Gray"> <StatusBar Grid.Row="2" Grid.ColumnSpan="3" BorderThickness="0,1,0,0" BorderBrush="Gray">
<StatusBar.ItemsPanel> <StatusBar.ItemsPanel>
<ItemsPanelTemplate> <ItemsPanelTemplate>
<Grid> <Grid>

View File

@ -117,7 +117,7 @@ namespace Elwig.Windows {
FinishInputFilling(); FinishInputFilling();
} }
private async void InitInputs() { private async Task InitInputs() {
ClearOriginalValues(); ClearOriginalValues();
ClearDefaultValues(); ClearDefaultValues();
await ViewModel.InitInputs(); await ViewModel.InitInputs();
@ -159,14 +159,14 @@ namespace Elwig.Windows {
NewAreaCommitmentButton_Click(null, null); NewAreaCommitmentButton_Click(null, null);
} }
private void NewAreaCommitmentButton_Click(object? sender, RoutedEventArgs? evt) { private async void NewAreaCommitmentButton_Click(object? sender, RoutedEventArgs? evt) {
IsCreating = true; IsCreating = true;
AreaCommitmentList.IsEnabled = false; AreaCommitmentList.IsEnabled = false;
AreaCommitmentList.SelectedItem = null; AreaCommitmentList.SelectedItem = null;
HideAreaCommitmentNewEditDeleteButtons(); HideAreaCommitmentNewEditDeleteButtons();
ShowAreaCommitmentSaveResetCancelButtons(); ShowAreaCommitmentSaveResetCancelButtons();
UnlockInputs(); UnlockInputs();
InitInputs(); await InitInputs();
LockSearchInputs(); LockSearchInputs();
} }
@ -197,17 +197,25 @@ namespace Elwig.Windows {
} }
private async void DeleteAreaCommitmentButton_Click(object? sender, RoutedEventArgs? evt) { private async void DeleteAreaCommitmentButton_Click(object? sender, RoutedEventArgs? evt) {
AreaCom a = (AreaCom)AreaCommitmentList.SelectedItem; if (AreaCommitmentList.SelectedItem is not AreaCom a)
if (a == null) return; return;
var r = MessageBox.Show( var r = MessageBox.Show(
$"Soll die Flächenbindung {a.GstNr} ({a.Area} m²) wirklich unwiderruflich gelöscht werden?", $"Soll die Flächenbindung {a.GstNr} ({a.Area} m²) wirklich unwiderruflich gelöscht werden?",
"Flächenbindung löschen", MessageBoxButton.OKCancel, MessageBoxImage.Warning, MessageBoxResult.Cancel); "Flächenbindung löschen", MessageBoxButton.OKCancel, MessageBoxImage.Warning, MessageBoxResult.Cancel);
if (r == MessageBoxResult.OK) { if (r == MessageBoxResult.OK) {
using var ctx = new AppDbContext(); Mouse.OverrideCursor = Cursors.AppStarting;
ctx.Remove(a); try {
await ctx.SaveChangesAsync(); using (var ctx = new AppDbContext()) {
await RefreshList(); ctx.Remove(a);
await ctx.SaveChangesAsync();
}
await App.HintContextChange();
} catch (Exception exc) {
var str = "Der Eintrag konnte nicht in der Datenbank aktualisiert werden!\n\n" + exc.Message;
if (exc.InnerException != null) str += "\n\n" + exc.InnerException.Message;
MessageBox.Show(str, "Flächenbindung löschen", MessageBoxButton.OK, MessageBoxImage.Error);
}
Mouse.OverrideCursor = null;
} }
} }
@ -246,11 +254,11 @@ namespace Elwig.Windows {
AreaCommitmentResetButton_Click(null, null); AreaCommitmentResetButton_Click(null, null);
} }
private void AreaCommitmentResetButton_Click(object? sender, RoutedEventArgs? evt) { private async void AreaCommitmentResetButton_Click(object? sender, RoutedEventArgs? evt) {
if (IsEditing) { if (IsEditing) {
RefreshInputs(); RefreshInputs();
} else if (IsCreating) { } else if (IsCreating) {
InitInputs(); await InitInputs();
} }
UpdateButtons(); UpdateButtons();
} }

View File

@ -605,7 +605,7 @@
</GroupBox> </GroupBox>
</Grid> </Grid>
<StatusBar Grid.Row="5" Grid.ColumnSpan="3" BorderThickness="0,1,0,0" BorderBrush="Gray"> <StatusBar Grid.Row="2" Grid.ColumnSpan="3" BorderThickness="0,1,0,0" BorderBrush="Gray">
<StatusBar.ItemsPanel> <StatusBar.ItemsPanel>
<ItemsPanelTemplate> <ItemsPanelTemplate>
<Grid> <Grid>

View File

@ -1243,7 +1243,7 @@ namespace Elwig.Windows {
private void WineVarietyInput_SelectionChanged(object sender, SelectionChangedEventArgs evt) { private void WineVarietyInput_SelectionChanged(object sender, SelectionChangedEventArgs evt) {
if (WineVarietyInput.SelectedItem is WineVar s) if (WineVarietyInput.SelectedItem is WineVar s)
ViewModel.SortId = s.SortId; ViewModel.SortId = s.SortId;
} }
private void UpdateWineQualityLevels() { private void UpdateWineQualityLevels() {

View File

@ -637,7 +637,7 @@
</GroupBox> </GroupBox>
</Grid> </Grid>
<StatusBar Grid.Row="5" Grid.ColumnSpan="3" BorderThickness="0,1,0,0" BorderBrush="Gray"> <StatusBar Grid.Row="2" Grid.ColumnSpan="3" BorderThickness="0,1,0,0" BorderBrush="Gray">
<StatusBar.ItemsPanel> <StatusBar.ItemsPanel>
<ItemsPanelTemplate> <ItemsPanelTemplate>
<Grid> <Grid>

View File

@ -131,7 +131,8 @@ namespace Elwig.Windows {
.ToDictionary(m => m, m => m.SearchScore(filter)) .ToDictionary(m => m, m => m.SearchScore(filter))
.OrderByDescending(a => a.Value) .OrderByDescending(a => a.Value)
.ThenBy(a => a.Key.FamilyName) .ThenBy(a => a.Key.FamilyName)
.ThenBy(a => a.Key.GivenName); .ThenBy(a => a.Key.GivenName)
.ThenBy(a => a.Key.MgNr);
var threshold = dict.Select(a => a.Value).Max() * 3 / 4; var threshold = dict.Select(a => a.Value).Max() * 3 / 4;
members = dict members = dict
.Where(a => a.Value > threshold) .Where(a => a.Value > threshold)
@ -141,6 +142,7 @@ namespace Elwig.Windows {
members = members members = members
.OrderBy(m => m.FamilyName) .OrderBy(m => m.FamilyName)
.ThenBy(m => m.GivenName) .ThenBy(m => m.GivenName)
.ThenBy(m => m.MgNr)
.ToList(); .ToList();
} }
@ -167,7 +169,7 @@ namespace Elwig.Windows {
GC.Collect(); GC.Collect();
} }
private async void InitInputs() { private async Task InitInputs() {
ClearOriginalValues(); ClearOriginalValues();
ClearDefaultValues(); ClearDefaultValues();
await ViewModel.InitInputs(); await ViewModel.InitInputs();
@ -301,7 +303,7 @@ namespace Elwig.Windows {
NewMemberButton_Click(null, null); NewMemberButton_Click(null, null);
} }
private void NewMemberButton_Click(object? sender, RoutedEventArgs? evt) { private async void NewMemberButton_Click(object? sender, RoutedEventArgs? evt) {
IsCreating = true; IsCreating = true;
MemberList.IsEnabled = false; MemberList.IsEnabled = false;
ViewModel.SelectedMember = null; ViewModel.SelectedMember = null;
@ -311,7 +313,7 @@ namespace Elwig.Windows {
ShowSaveResetCancelButtons(); ShowSaveResetCancelButtons();
UnlockInputs(); UnlockInputs();
UpdateContactInfoVisibility(true); UpdateContactInfoVisibility(true);
InitInputs(); await InitInputs();
ViewModel.EnableSearchInputs = false; ViewModel.EnableSearchInputs = false;
} }
@ -425,7 +427,7 @@ namespace Elwig.Windows {
await RefreshInputs(); await RefreshInputs();
} else if (IsCreating) { } else if (IsCreating) {
ClearInputs(); ClearInputs();
InitInputs(); await InitInputs();
} }
UpdateButtons(); UpdateButtons();
} }