Letzte Projekt wird beigehalten

This commit is contained in:
2023-08-06 19:19:44 +02:00
parent ba3e10fd2d
commit 778b4a9a64
6 changed files with 28 additions and 6 deletions

View File

@@ -15,7 +15,7 @@ namespace StammGenerator.ViewModel
private readonly IActualState _actualState;
private readonly IHaltungDataService _haltungDataService;
private readonly ISchachtDataService _schachtDataService;
private List<Schacht> avaibleSchaechte;
private List<Schacht> avaibleSchaechte = new List<Schacht>();
private int _selectedObenIndex;
private int _selectedUntenIndex;
private Kanal _model;

View File

@@ -42,9 +42,10 @@ namespace StammGenerator.ViewModel
UpdateCurrentViewModelCommand.Execute(EMainWindowViewType.Home);
_actualState = actualState;
_actualState.ProjektChanged += ActualState_ProjektChanged;
_actualState.LoadLastProjekt();
Navigator.StateChanged += Navigator_StateChanged;
}

View File

@@ -1,4 +1,5 @@
using SewerStammGen.Shared.Domain;
using Microsoft.Win32;
using SewerStammGen.Shared.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -9,6 +10,10 @@ namespace StammGenerator.ViewModel
{
internal class ActualState : IActualState
{
const string userroot = "HKEY_CURRENT_USER\\Software";
const string firmkey = "WWTech";
const string subkey = "StammGenerator";
// TODO: set auf private set setzen
public int ProjektID { get; set; }
@@ -25,6 +30,9 @@ namespace StammGenerator.ViewModel
{
OnProjektChanged();
}
string keyName = userroot + "\\" + firmkey + "\\" + subkey;
Registry.SetValue(keyName, "LastProjekt", ProjektID);
}
public void SetSchacht(Schacht schacht, bool notification = true)
{
@@ -61,6 +69,17 @@ namespace StammGenerator.ViewModel
{
HaltungChanged?.Invoke(this, new EventArgs());
}
public void LoadLastProjekt()
{
string keyName = userroot + "\\" + firmkey + "\\" + subkey;
if(Registry.GetValue(keyName,"LastProjekt","")!= null)
{
ProjektID = Convert.ToInt32(Registry.GetValue(keyName, "LastProjekt", ""));
OnProjektChanged();
}
}
}
}

View File

@@ -20,5 +20,7 @@ namespace StammGenerator.ViewModel
void SetProjekt(Projekt projekt, bool notification = true);
void SetSchacht(Schacht schacht, bool notification = true);
void SetHaltung(Kanal haltung, bool notification = true);
void LoadLastProjekt();
}
}