diff --git a/zaaReloaded2/Controller/SettingsRepository.cs b/zaaReloaded2/Controller/SettingsRepository.cs
index 2bc9960..61614c7 100755
--- a/zaaReloaded2/Controller/SettingsRepository.cs
+++ b/zaaReloaded2/Controller/SettingsRepository.cs
@@ -167,25 +167,10 @@ namespace zaaReloaded2.Controller
return SettingsList.FirstOrDefault(s => s.Uid == uid);
}
- ///
- /// Imports one Settings object by deserialization
- /// from a stream.
- ///
- /// Stream to read from.
- /// True if the import was successful.
- bool Import(Stream s)
+ public static bool IsDefaultSettings(Settings settings)
{
- XmlSerializer ser = new XmlSerializer(typeof(Settings));
- Settings settings = ser.Deserialize(s) as Settings;
- if (settings != null)
- {
- SettingsList.Add(settings);
- return true;
- }
- else
- {
- return false;
- }
+ return (settings.Name == Properties.Settings.Default.SettingsNameClinic + BUILTIN_LABEL ||
+ settings.Name == Properties.Settings.Default.SettingsNameWard + BUILTIN_LABEL);
}
#endregion
@@ -223,7 +208,7 @@ namespace zaaReloaded2.Controller
// Configure the settings for the ward
SettingsList.Add(
new Settings(
- def.SettingsNameWard,
+ def.SettingsNameWard + BUILTIN_LABEL,
new List()
{
new TwoColumns(),
@@ -238,7 +223,7 @@ namespace zaaReloaded2.Controller
// Configure the settings for the outpatient clinic
SettingsList.Add(
new Settings(
- def.SettingsNameClinic,
+ def.SettingsNameClinic + BUILTIN_LABEL,
new List()
{
new SelectEachDay(defaultItems),
@@ -250,7 +235,12 @@ namespace zaaReloaded2.Controller
#endregion
- #region Private constants
+ #region Constants
+
+ ///
+ /// Label that is appended to the default Settings' names.
+ ///
+ public const string BUILTIN_LABEL = " (eingebaut)";
///
/// Constant GUID for the first default Settings.
diff --git a/zaaReloaded2/ViewModels/SettingsRepositoryViewModel.cs b/zaaReloaded2/ViewModels/SettingsRepositoryViewModel.cs
index 837e7fa..2c1b155 100755
--- a/zaaReloaded2/ViewModels/SettingsRepositoryViewModel.cs
+++ b/zaaReloaded2/ViewModels/SettingsRepositoryViewModel.cs
@@ -149,6 +149,7 @@ namespace zaaReloaded2.ViewModels
return _exportSettingsCommand;
}
}
+
public DelegatingCommand ImportSettingsCommand
{
get
@@ -270,12 +271,7 @@ namespace zaaReloaded2.ViewModels
public SettingsRepositoryViewModel(SettingsRepository repository)
{
_repository = repository;
- SettingsList = new ObservableCollection();
- foreach (Settings s in repository.SettingsList)
- {
- SettingsViewModel vm = new SettingsViewModel(s);
- AddSettingsViewModel(vm);
- }
+ BuildSettingsList();
RequestCloseView += (sender, args) =>
{
_repository.Store();
@@ -286,6 +282,17 @@ namespace zaaReloaded2.ViewModels
#region Private methods
+ void BuildSettingsList()
+ {
+ SettingsList = new ObservableCollection();
+ foreach (Settings s in _repository.SettingsList)
+ {
+ SettingsViewModel vm = new SettingsViewModel(s);
+ AddSettingsViewModel(vm);
+ }
+ OnPropertyChanged("SettingsList");
+ }
+
void DoEditSettings()
{
if (CanEditSettings())
@@ -356,7 +363,8 @@ namespace zaaReloaded2.ViewModels
{
if (content.Confirmed)
{
-
+ _repository = new SettingsRepository();
+ BuildSettingsList();
}
}
@@ -365,6 +373,10 @@ namespace zaaReloaded2.ViewModels
if (LastSelected != null)
{
SettingsViewModel copy = LastSelected.Clone() as SettingsViewModel;
+ if (IsDefaultSettings())
+ {
+ copy.Name = copy.Name.Replace(SettingsRepository.BUILTIN_LABEL, String.Empty);
+ }
_repository.SettingsList.Add(copy.RevealModelObject() as Settings);
AddSettingsViewModel(copy);
LastSelected.IsSelected = false;
@@ -390,9 +402,7 @@ namespace zaaReloaded2.ViewModels
{
if (LastSelected != null)
{
- return
- (LastSelected.Name == zaaReloaded2.Properties.Settings.Default.SettingsNameClinic
- || LastSelected.Name == zaaReloaded2.Properties.Settings.Default.SettingsNameWard);
+ return SettingsRepository.IsDefaultSettings(LastSelected.RevealModelObject() as Settings);
}
else
{
diff --git a/zaaReloaded2/Views/SettingsRepositoryView.xaml b/zaaReloaded2/Views/SettingsRepositoryView.xaml
index 11bf804..cb47ece 100755
--- a/zaaReloaded2/Views/SettingsRepositoryView.xaml
+++ b/zaaReloaded2/Views/SettingsRepositoryView.xaml
@@ -38,6 +38,10 @@
+
+
+
@@ -62,6 +66,7 @@
+