Man kann jetzt die einstellungen speichern

This commit is contained in:
Husky
2018-07-14 12:25:47 +02:00
parent 7b626f9b61
commit f7e3042daa
8 changed files with 144 additions and 6 deletions

View File

@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SanSystem.Einstellungen
{
class ObjecteListSetting : Settings
{
public ObjecteListSetting() : base("ObjecteList") { }
public override void InitDevValues()
{
// Hausnummer
// Von punkt
// Bis punkt
// Haltungslänge
configuration.Add("Hausnummer", 40);
configuration.Add("VonPunkt", 100);
configuration.Add("BisPunkt", 100);
configuration.Add("Haltungslaenge", 40);
}
}
}

View File

@@ -0,0 +1,49 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SanSystem.Einstellungen
{
abstract class Settings : IDisposable
{
public Dictionary<string, int> configuration = new Dictionary<string, int>();
const string pfad = "Settings";
string modPath = "";
public Settings(string module)
{
string modname = string.Format("{0}.set", module);
modPath = Path.Combine(pfad, modname);
if (!Directory.Exists(pfad)) Directory.CreateDirectory(pfad);
if(!File.Exists(modPath))
{
InitDevValues();
SaveSettings();
}
else
{
string input = File.ReadAllText(modPath);
configuration = (Dictionary<string, int>)JsonConvert.DeserializeObject(input, typeof(Dictionary<string, int>));
}
}
public abstract void InitDevValues();
public virtual void SaveSettings()
{
string ser = JsonConvert.SerializeObject(configuration);
File.WriteAllText(modPath, ser);
}
public void Dispose()
{
SaveSettings();
}
}
}