using System; using System.Collections.Generic; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CatalogLib { public class PicSettings { //TODO: Singleton private Dictionary _settingsDict = new Dictionary(); public PicSettings() { SetDefaults(); } public void Set(string key, object value) { if (_settingsDict.ContainsKey(key)) { _settingsDict[key] = value; } else { _settingsDict.Add(key,value); } } public bool Exists(string key) { return _settingsDict.ContainsKey(key); } public int GetInt(string key) { return _settingsDict.ContainsKey(key) ? (int) _settingsDict[key] : 0; } public string GetString(string key) { return _settingsDict.ContainsKey(key) ? (string) _settingsDict[key] : string.Empty; } public bool GetBool(string key) { return _settingsDict.ContainsKey(key) && (bool) _settingsDict[key]; } public void SetBool(string key, bool value) { if (_settingsDict.ContainsKey(key)) { _settingsDict[key] = value; } else { _settingsDict.Add(key, value); } } public object GetObject(string key) { return _settingsDict.ContainsKey(key) ? _settingsDict[key] : null; } public void SetDefaults() { Set("dirSorgente",string.Empty); Set("dirDestinazione",string.Empty); Set("dirAggiornaSottodirectory", false); Set("dirCreaSottoCartelle",false); //Set(); } public bool Grassetto { get { return GetBool("Grassetto"); } set { SetBool("Grassetto", value);} } public string IlFont //todo { get { return GetString(""); } set { } } public bool TestoMin //todo { get { return false; } set { } } public bool AggTempoGaraMin //todo { get { return false; } set { } } public bool UsaTempoGaraTestoApplicare //todo { get { return false; } set { } } public bool AggNumTempMin //todo { get { return false; } set { } } public bool CreaMiniature //todo { get { return false; } set { } } public bool AggiungiScritteMiniature { get { return false; } set { } } public string Suffisso { get { return string.Empty; } set { } } public string Codice { get { return null; } set {} } public int Trasparenza { get { return 0; } } public string Posizione { get { return string.Empty; } } public bool UsaRotazioneAutomatica { get; set; } public DateTime DataPartenza { get; set; } public string TestoOrario { get; internal set; } public int DimStandard { get; internal set; } public int DimStandardMiniatura { get; internal set; } public bool UsaOrarioTestoApplicare { get; set; } public bool UsaOrarioMiniatura { get; set; } public string TestoFirmaStart { get; set; } public string TestoFirmaStartV { get; set; } public bool UsaForzaJpg { get; set; } public string DirectorySorgente { get; set; } public string DirectoryDestinazione { get; set; } public float Margine { get; set; } public float MargVert { get; set; } public string Allineamento { get; set; } } }