Example #1
0
 public static void StartupStage(StartStage StagetoRun)
 {
     switch (StagetoRun)
     {
         case StartStage.PreUI:
             SettingsData.Instance.RestartTriggered = false;
             CommonCommands.ChangeTheme((SharedResourceDictionary)null);
             App.StartupStage(StartStage.MainWindow);
             break;
         case StartStage.MainWindow:
             new MainWindow().Show();
             break;
         case StartStage.UIRendered:
             if (SettingsData.Instance.SettingsRecreated)
             {
                 Messenger.Default.Send<DialogMessage>(new DialogMessage(string.Empty, (Action<MessageBoxResult>)(o => { })), (object)DialogType.ConfigError);
                 SettingsData.Instance.SettingsRecreated = false;
             }
             App.StartupStage(StartStage.OOBE);
             break;
         case StartStage.OOBE:
             if (!SettingsData.Instance.OOBEScreenDisplayed && Enumerable.Count<Decimal>((IEnumerable<Decimal>)CommonCommands.GetAvailableUserAccounts()) > 0)
             {
                 SettingsData.Instance.OOBEScreenDisplayed = true;
                 SettingsData.Save();
             }
             if (!SettingsData.Instance.OOBEScreenDisplayed)
             {
                 WelcomeView content = new WelcomeView();
                 AccountManagementViewModel model = new AccountManagementViewModel(0M)
                 {
                     IsOOBE = true
                 };
                 content.DataContext = model;
                 Messenger.Default.Send<GenericMessage<UserControl>>(new GenericMessage<UserControl>(content), ViewModelMessages.ShowCenterModalWindowHost);
             }
             App.StartupStage(StartStage.ProfileUpdate);
             break;
         case StartStage.ProfileUpdate:
             foreach (Decimal num in CommonCommands.GetAvailableUserAccounts())
             {
                 if (num > new Decimal(0))
                 {
                     UserAccountViewModel accountViewModel = new UserAccountViewModel(num);
                     if (accountViewModel.Settings.TwitterAccountID > new Decimal(0) && !string.IsNullOrEmpty(accountViewModel.Settings.TwitterAccountName))
                     {
                         App.AppState.Accounts.Add(accountViewModel);
                         (System.Windows.Application.Current as App).LoadExtensions(num);
                     }
                     else
                         CommonCommands.DeleteAccountData(num);
                 }
                 else
                 {
                     try
                     {
                         Directory.Delete(ApplicationPaths.AppConfigPath + "\\0", true);
                     }
                     catch
                     {
                     }
                 }
             }
             App.AppState.Accounts.Sort<int>((Func<UserAccountViewModel, int>)(x => x.Settings.Index), ListSortDirection.Ascending);
             if (App.AppState.Accounts.Count > 0)
                 LoginView.Show(System.Windows.Application.Current.MainWindow);
             else if (SettingsData.Instance.OOBEScreenDisplayed)
             {
                 Messenger.Default.Send<GenericMessage<object>>(new GenericMessage<object>((object)null), (object)ViewModelMessages.CloseCenterModalWindowHost);
                 AccountManagementViewModel managementViewModel = new AccountManagementViewModel(new Decimal(0));
                 ManageAccountView manageAccountView = new ManageAccountView();
                 manageAccountView.DataContext = (object)managementViewModel;
                 Messenger.Default.Send<GenericMessage<System.Windows.Controls.UserControl>>(new GenericMessage<System.Windows.Controls.UserControl>((System.Windows.Controls.UserControl)manageAccountView), (object)ViewModelMessages.ShowCenterModalWindowHost);
                 managementViewModel.AddUserAccountCommand.Execute((object)null);
             }
             foreach (UserAccountViewModel accountViewModel in (Collection<UserAccountViewModel>)App.AppState.Accounts)
                 accountViewModel.UpdateProfile(true);
             App.StartupStage(StartStage.LoadTwitViews);
             break;
         case StartStage.LoadTwitViews:
             ((System.Windows.Application.Current.MainWindow as MainWindow).DataContext as MainViewModel).PostLoad();
             break;
     }
 }
Example #2
0
 private void AddUserAccount()
 {
     Messenger.Default.Send<GenericMessage<object>>(new GenericMessage<object>((object) null), (object) ViewModelMessages.CloseCenterModalWindowHost);
       ManageAccountView manageAccountView = new ManageAccountView();
       manageAccountView.DataContext = (object) new AccountManagementViewModel(new Decimal(0));
       Messenger.Default.Send<GenericMessage<UserControl>>(new GenericMessage<UserControl>((UserControl) manageAccountView), (object) ViewModelMessages.ShowCenterModalWindowHost);
 }
 private void ManageAccounts()
 {
     this.IsOOBE = false;
     Messenger.Default.Send<GenericMessage<object>>(new GenericMessage<object>(null), ViewModelMessages.CloseCenterModalWindowHost);
     ManageAccountView content = new ManageAccountView
     {
         DataContext = this
     };
     Messenger.Default.Send<GenericMessage<UserControl>>(new GenericMessage<UserControl>(content), ViewModelMessages.ShowCenterModalWindowHost);
 }