Пример #1
0
        private void RestoreTabs()
        {
            string tabs = GlobalSettings.Default.OpenTabs;

            if (tabs == null)
            {
                return;
            }

            IReadOnlyCollection <TabSettings> ts = TabSettings.FromString(tabs);

            foreach (TabSettings t in ts)
            {
                ConnectedAccount sa = ConnectedAccount.RootFolder.FindConnectedAccountById(t.AccountId);
                if (sa == null)
                {
                    continue;
                }

                AddTab(sa, t.Settings, false);

                if (t.IsActive)
                {
                    SelectedAccount = ActiveStorageAccounts.Last();
                }
            }
        }
Пример #2
0
        public void AddTab(ConnectedAccount connectedAccount, string settings = null, bool makeActive = true)
        {
            if (connectedAccount == null)
            {
                return;
            }

            if (connectedAccount.System == "msg")
            {
                ActiveStorageAccounts.Add(new MessengerViewModel(connectedAccount));
            }
            else if (connectedAccount.System == "ai")
            {
                ActiveStorageAccounts.Add(new ApplicationInsightsPanelViewModel(connectedAccount));
            }
            else if (connectedAccount.System == "redis")
            {
                ActiveStorageAccounts.Add(new RedisViewModel(connectedAccount));
            }
            else
            {
                ActiveStorageAccounts.Add(new BlobStoragePanelViewModel(connectedAccount));
            }

            if (makeActive)
            {
                SelectedAccount = ActiveStorageAccounts.Last();
            }
            ActiveStorageAccounts.Last().RestoreSettings(settings);
        }
Пример #3
0
        private void SaveTabs()
        {
            string s = TabSettings.ToString(ActiveStorageAccounts.Select(
                                                asa => new TabSettings(
                                                    asa.Account.Id,
                                                    asa.Account.Id == SelectedAccount.Account.Id,
                                                    asa.GetSettings())));

            GlobalSettings.Default.OpenTabs = s;
        }
Пример #4
0
        public MainViewModel()
        {
            if (!IsInDesignMode)
            {
                RestoreTabs();

                /*if(ActiveStorageAccounts.Count == 0)
                 * {
                 * AddTab(RegisteredAccounts.First());
                 * }*/

                if (SelectedAccount == null)
                {
                    SelectedAccount = ActiveStorageAccounts.LastOrDefault();
                }
            }
        }