Пример #1
0
        public MainView(string[] args)
        {
            Logger.WriteToLog("Programmstart", LogLevel.Info);

            //Pfad zur Konfigurationsdatei ermitteln
            var configPath = Properties.Settings.Default.DefaultSettingsFileName;

            if (args.Any(x => x.ToLower().Contains(".config")))
            {
                configPath = args.First(x => x.Contains(".config"));
                Logger.WriteToLog("Spezifische Konfiguration: " + configPath, LogLevel.Info);
            }

            //Konfigurationsdatei laden
            ProgramSettings settings = null;

            if (File.Exists(configPath))
            {
                settings = ProgramSettings.FromFile(configPath);
                Logger.WriteToLog("Konfiguration geladen", LogLevel.Info);
            }
            else
            {
                settings = ProgramSettings.CreateDefault();
                settings.ToFile();
                Logger.WriteToLog("Standard Konfiguration erzeugt und geladen", LogLevel.Info);
            }

            //Form initialisieren
            InitializeComponent();
            devToolStripMenuItem1.Visible = false;
            setupParameterSelection();
            setAllParameters(true);
            toolStripStatusLabel_Bridge.Text = "keine Bridge verbunden";
            this.Text = "Hue2Json - " + Application.ProductVersion;

            //Controller initialisieren
            m_Controller = new Controller(settings);
            Logger.WriteToLog("Controller initialisiert", LogLevel.Info);


            //DevMode aktivieren
            if (args.Any(x => x.ToLower().Contains("devmode")))
            {
                Logger.WriteToLog("DevMode wird aktiviert", LogLevel.Info);
                m_Controller.DevMode          = true;
                devToolStripMenuItem1.Visible = true;
                btn_ReadParameters.Enabled    = true;
                btn_ShowParameters.Enabled    = true;
                btn_FullBackup.Enabled        = true;

                btn_OpenBackupFile.Enabled = true;
                btn_ReadConfig.Enabled     = true;
                btn_Remapping.Enabled      = true;
                btn_Restore.Enabled        = true;
            }
            else
            {
                tabControl.TabPages.RemoveAt(1);
            }

            //Bridge-Simulation aktivieren
            if (args.Any(x => x.ToLower().Contains("sim")))
            {
                Logger.WriteToLog("SimMode wird aktiviert", LogLevel.Info);
                m_Controller.SimMode = true;
            }

            Logger.LogMessageEvent += appendRestoreLogLine;
        }