/************************************************************************************************************************************** * * Initialisation and GUI state routines * * ***********************************************************************************************************************************/ /// <summary> /// Constructor for the class /// </summary> public MainForm() { InitializeComponent(); string appVersion = System.Diagnostics.FileVersionInfo.GetVersionInfo(Application.ExecutablePath).FileVersion; _localSettings = new SettingsDictionary(GetDataFilePath(TPaths.Settings), appVersion); _localSettings.Load(); _externalLinks = new ExternalLinksDictionary(GetDataFilePath(TPaths.ExternalLinks)); _externalLinks.Load(); _externalLinks.PopulateListBox(lstExternalWebLinks); PopulateCombos(); this.Text = Program.APP_TITLE; cboCodeGeneration.SelectedIndex = _localSettings.CodeGenerationComboID; cboCompilation.SelectedIndex = _localSettings.CompilationComboID; cboMiscellaneous.SelectedIndex = _localSettings.MiscellaneousComboID; cboDatabase.SelectedIndex = _localSettings.DatabaseComboID; cboSourceCode.SelectedIndex = _localSettings.SourceCodeComboID; chkAutoStartServer.Checked = _localSettings.AutoStartServer; chkAutoStopServer.Checked = _localSettings.AutoStopServer; chkCheckForUpdatesAtStartup.Checked = _localSettings.AutoCheckForUpdates; chkMinimizeServer.Checked = _localSettings.MinimiseServerAtStartup; chkTreatWarningsAsErrors.Checked = _localSettings.TreatWarningsAsErrors; chkCompileWinform.Checked = _localSettings.CompileWinForm; chkStartClientAfterGenerateWinform.Checked = _localSettings.StartClientAfterCompileWinForm; txtYAMLPath.Text = _localSettings.YAMLLocation; txtFlashAfterSeconds.Text = _localSettings.FlashAfterSeconds.ToString(); if (_localSettings.BranchLocation != String.Empty) { cboBranchLocation.Items.Add(_localSettings.BranchLocation); for (int i = 1; i < 10; i++) { string path = _localSettings.GetBranchHistory(i); if (path == String.Empty) { break; } cboBranchLocation.Items.Add(path); } cboBranchLocation.SelectedIndex = 0; } txtLaunchpadUserName.Text = _localSettings.LaunchpadUserName; txtBazaarPath.Text = _localSettings.BazaarPath; ValidateBazaarPath(); _sequence = ConvertStringToSequenceList(_localSettings.Sequence); _altSequence = ConvertStringToSequenceList(_localSettings.AltSequence); ShowSequence(txtSequence, _sequence); ShowSequence(txtAltSequence, _altSequence); lblVersion.Text = "Version " + appVersion; SetBranchDependencies(); GetServerState(); SetEnabledStates(); SetToolTips(); // Check if we were launched using commandline switches // If so, we execute the instruction, start a timer, which then will close us down. if (Program.cmdLine.StartServer) { linkLabelStartServer_LinkClicked(null, null); ShutdownTimer.Enabled = true; } else if (Program.cmdLine.StopServer) { linkLabelStopServer_LinkClicked(null, null); ShutdownTimer.Enabled = true; } }