protected override void OnStartup(StartupEventArgs e) { log.Info("========= Application Startup ========="); emoticonManager.LoadEmoticons(); string DefaultFontFamily = "Segoe UI"; Color DefaultFontColor = Colors.Black; var settings = Client.Properties.Settings.Default; var fontFamily = settings.FontFamily; if (Fonts.SystemFontFamilies.FirstOrDefault(family => family.Source == fontFamily) == null) { fontFamily = DefaultFontFamily; } Color fontColor = DefaultFontColor; try { fontColor = ColorConverter.ConvertFromString(settings.FontColor) as Color? ?? Colors.Black; } catch (FormatException) // If the font color from settings is invalid, we stick with the default { } FontStyle fontStyle = (settings.FontBold ? FontStyle.Bold : 0) | (settings.FontItalic ? FontStyle.Italic : 0) | (settings.FontUnderline ? FontStyle.Underline : 0); ClientFont = new FontOptions(fontFamily, fontColor, fontStyle); if (statusBrushMap.Count == 0) { statusBrushMap.Add(UserStatus.Available, Resources["AvailableBrush"] as SolidColorBrush); statusBrushMap.Add(UserStatus.Away, Resources["AwayBrush"] as SolidColorBrush); statusBrushMap.Add(UserStatus.Busy, Resources["BusyBrush"] as SolidColorBrush); statusBrushMap.Add(UserStatus.Offline, Resources["OfflineBrush"] as SolidColorBrush); statusBrushMap.Add(UserStatus.Unknown, Resources["OfflineBrush"] as SolidColorBrush); } IViewController views = this as IViewController; views.Navigate(views.CreateLoginView()); base.OnStartup(e); }
void TryLogIn() { string username = UsernameTextBox.Text; string password = PasswordTextBox.Password; string server; if (ServerComboBox.SelectedItem == null) { server = ServerComboBox.Text; } else { server = (ServerComboBox.SelectedItem as ComboBoxItem).Tag as string; } client = new ChatClient(); App.ChatClient = client; App.ConnectionManager = new ConnectionManager(client); if (App.ConnectionManager.Connect(server, ConnectionManager.DefaultPort, username, password)) { var settings = Properties.Settings.Default; if (RememberUsernameCheckBox.IsChecked ?? false) { settings.Username = username; } settings.Server = server; if (AutoLoginCheckBox.IsChecked ?? false) { settings.Password = password; } settings.Save(); var mainView = views.CreateMainView(); views.Navigate(mainView); } else { Show(); } }
void LogOut() { views.Navigate(views.CreateLoginView()); }