public SettingsWindow(XML.AppSettings settings) { InitializeComponent(); this.settings = settings; emailToTextBox.Text = settings.emailTo; emailFromTextBox.Text = settings.emailFrom; emailSmtpHostTextBox.Text = settings.emailSmtpHost; emailSmtpPortTextBox.Text = settings.emailSmtpPort.ToString(); if (Settings.GetWindowsEmailCredentials(out string username, out string password)) { emailUsenameTextBox.Text = username; emailPasswordTextBox.Password = password; } }
public MainWindow() { singleton = this; InitializeComponent(); // load app settings settings = Settings.Load(); // set arg setting overrides bool settingOverrideFound = false; string emailUsername = null, emailPassword = null; foreach (string arg in Environment.GetCommandLineArgs()) { var parts = arg.Split('='); if (parts == null || parts.Length != 2) { continue; } settingOverrideFound = true; switch (parts[0].ToLower()) { case "-emailto": settings.emailTo = parts[1]; break; case "-emailfrom": settings.emailFrom = parts[1]; break; case "-emailsmtphost": settings.emailSmtpHost = parts[1]; break; case "-emailsmtpport": int.TryParse(parts[1], out settings.emailSmtpPort); break; case "-emailusername": emailUsername = parts[1]; break; case "-emailpassword": emailPassword = parts[1]; break; case "-tab": if (settings.tabs == null) { settings.tabs = new List <string>(); } if (!settings.tabs.Contains(parts[1])) { settings.tabs.Add(parts[1]); } break; } } if (!string.IsNullOrEmpty(emailUsername) && !string.IsNullOrEmpty(emailUsername)) { Settings.SetWindowsEmailCredentials(emailUsername, emailPassword); } if (settingOverrideFound) { Settings.Save(settings); Close(); return; } // apply settings if (settings.winX != -1) { Left = settings.winX; Top = settings.winY; Width = settings.winWidth; Height = settings.winHeight; if (settings.winMaximized) { WindowState = WindowState.Maximized; } } emailButton.IsEnabled = !string.IsNullOrEmpty(settings.emailTo); if (settings.tabs == null) { settings.tabs = new List <string>(); } foreach (string tab in settings.tabs) { AddTab(tab); } // start watch timer timer = new DispatcherTimer(TimeSpan.FromSeconds(1), DispatcherPriority.Background, CheckFileSizeCallback, Dispatcher); }