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