63 lines
2.4 KiB
C#
63 lines
2.4 KiB
C#
using Elwig.Helpers;
|
|
using System.Windows;
|
|
using System.Windows.Controls;
|
|
|
|
namespace Elwig.Dialogs {
|
|
public partial class AreaComModifyDialog : Window {
|
|
|
|
public int? YearTo { get; set; }
|
|
public bool ModifyRetroactively { get; set; }
|
|
|
|
public string OrigYearFrom { get; set; }
|
|
public string OrigYearTo { get; set; }
|
|
public string Area { get; set; }
|
|
|
|
public AreaComModifyDialog(int? yearFrom, int? yearTo, int area, bool delete) {
|
|
Area = $"{area:N0}";
|
|
OrigYearFrom = $"{yearFrom}";
|
|
OrigYearTo = $"{yearTo}";
|
|
InitializeComponent();
|
|
Title = delete ? "Flächenbindung löschen" : "Flächenbindung bearbeiten";
|
|
RetroactiveInput.Content = delete ? "Rückwirkend löschen" : "Rückwirkend bearbeiten";
|
|
if (delete) {
|
|
QuestionBlock1.Visibility = Visibility.Hidden;
|
|
QuestionBlock2.Visibility = Visibility.Visible;
|
|
DescBlock1.Visibility = Visibility.Hidden;
|
|
DescBlock2.Visibility = Visibility.Visible;
|
|
}
|
|
if ((yearTo.HasValue && yearTo < Utils.CurrentNextSeason) || (yearFrom.HasValue && yearFrom >= Utils.CurrentNextSeason)) {
|
|
RetroactiveInput.IsChecked = true;
|
|
} else {
|
|
SeasonInput.Text = $"{Utils.CurrentNextSeason}";
|
|
}
|
|
}
|
|
|
|
private void SeasonInput_TextChanged(object sender, TextChangedEventArgs evt) {
|
|
YearTo = SeasonInput.Value! - 1;
|
|
CancelSeason1.Text = $"{YearTo}";
|
|
CancelSeason2.Text = $"{YearTo}";
|
|
NewSeason1.Text = $"{YearTo + 1}";
|
|
}
|
|
|
|
private void RetroactiveInput_Changed(object sender, RoutedEventArgs evt) {
|
|
if (ModifyRetroactively) {
|
|
SeasonInput.IsEnabled = false;
|
|
SeasonInput.Text = "";
|
|
YearTo = null;
|
|
DescBlock1.Visibility = Visibility.Hidden;
|
|
DescBlock2.Visibility = Visibility.Hidden;
|
|
} else {
|
|
SeasonInput.IsEnabled = true;
|
|
SeasonInput.Text = $"{Utils.CurrentNextSeason}";
|
|
DescBlock1.Visibility = QuestionBlock1.Visibility;
|
|
DescBlock2.Visibility = QuestionBlock2.Visibility;
|
|
}
|
|
}
|
|
|
|
private void ConfirmButton_Click(object sender, RoutedEventArgs evt) {
|
|
DialogResult = true;
|
|
Close();
|
|
}
|
|
}
|
|
}
|