From a9225638493d6bd1e0d35a456b6ecc7880b703f7 Mon Sep 17 00:00:00 2001 From: mdn <1stdragon@gmail.com> Date: Sat, 5 Dec 2015 23:54:31 +0100 Subject: [PATCH] =?UTF-8?q?Hinzuf=C3=BCgen=20und=20entfernen=20eingebaut?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TimeScheduler/TimeScheduler/Domain/IDomain.cs | 3 ++ .../TimeScheduler/Domain/Impl/FileDomain.cs | 2 ++ .../TimeScheduler/Domain/Impl/TimeItem.cs | 2 +- TimeScheduler/TimeScheduler/MainWindow.xaml | 29 ++++++++++++++----- .../TimeScheduler/ViewModel/MainViewModel.cs | 9 ++++++ 5 files changed, 36 insertions(+), 9 deletions(-) diff --git a/TimeScheduler/TimeScheduler/Domain/IDomain.cs b/TimeScheduler/TimeScheduler/Domain/IDomain.cs index d6dd570..f986d89 100644 --- a/TimeScheduler/TimeScheduler/Domain/IDomain.cs +++ b/TimeScheduler/TimeScheduler/Domain/IDomain.cs @@ -11,6 +11,9 @@ namespace TimeScheduler.Domain /// Der Tag für den Werte gesucht werden sollen /// Die Daten, für den angefragten Tag IEnumerable GetItems(DateTime date); + /// Erzeugt ein neues -Element + /// Ein neues -Element + ITimeItem NewItem(); /// Ermittelt die gültigen Kostenstellen /// Liste der gültigen Kostenstellen diff --git a/TimeScheduler/TimeScheduler/Domain/Impl/FileDomain.cs b/TimeScheduler/TimeScheduler/Domain/Impl/FileDomain.cs index 34d5824..9a7740e 100644 --- a/TimeScheduler/TimeScheduler/Domain/Impl/FileDomain.cs +++ b/TimeScheduler/TimeScheduler/Domain/Impl/FileDomain.cs @@ -88,6 +88,8 @@ namespace TimeScheduler.Domain.Impl .OrderBy(x => x.From) .Cast(); } + ITimeItem IDomain.NewItem() { return new TimeItem(); } + Dictionary IDomain.GetCostUnits() { diff --git a/TimeScheduler/TimeScheduler/Domain/Impl/TimeItem.cs b/TimeScheduler/TimeScheduler/Domain/Impl/TimeItem.cs index a686ef5..a162887 100644 --- a/TimeScheduler/TimeScheduler/Domain/Impl/TimeItem.cs +++ b/TimeScheduler/TimeScheduler/Domain/Impl/TimeItem.cs @@ -15,7 +15,7 @@ namespace TimeScheduler.Domain.Impl { #region Konstruktion /// Standard-Konstruktor - public TimeItem() { key_ = -1; } + public TimeItem() { key_ = -1; From = DateTime.Now.Date; Till = From; } /// Konstruktor /// Beschreibung diff --git a/TimeScheduler/TimeScheduler/MainWindow.xaml b/TimeScheduler/TimeScheduler/MainWindow.xaml index bad02f2..3795fc7 100644 --- a/TimeScheduler/TimeScheduler/MainWindow.xaml +++ b/TimeScheduler/TimeScheduler/MainWindow.xaml @@ -28,6 +28,12 @@ + + + + + + + @@ -134,18 +144,21 @@ - - + + + + + - - + + - - + - - + diff --git a/TimeScheduler/TimeScheduler/ViewModel/MainViewModel.cs b/TimeScheduler/TimeScheduler/ViewModel/MainViewModel.cs index c62ba94..ae38ded 100644 --- a/TimeScheduler/TimeScheduler/ViewModel/MainViewModel.cs +++ b/TimeScheduler/TimeScheduler/ViewModel/MainViewModel.cs @@ -62,6 +62,8 @@ namespace TimeScheduler.ViewModel private void CreateCommands() { RefreshCommand = new RelayCommand(Refresh); + AddNewCommand = new RelayCommand(AddNew); + DeleteCommand = new RelayCommand(Delete, CanDelete); } public ICommand RefreshCommand { get; private set; } @@ -110,6 +112,13 @@ namespace TimeScheduler.ViewModel SelectedTimeItem = TimeItems.FirstOrDefault(); } + + public ICommand AddNewCommand { get; private set; } + private void AddNew() { TimeItems.Add(Provider.NewItem()); } + + public ICommand DeleteCommand { get; private set; } + private void Delete() { TimeItems.Remove(SelectedTimeItem); } + public bool CanDelete() { return SelectedTimeItem != null; } #endregion #region Hilfsfunktionen