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();
 | |
|         }
 | |
|     }
 | |
| }
 |