Exemplo n.º 1
0
        private void AddList(string parameter)
        {
            if (String.IsNullOrEmpty(parameter))
            {
                this.Messenger.Raise(new InformationMessage("リストが選択されていません。", "追加エラー", System.Windows.MessageBoxImage.Error, "WarningMessage"));
                return;
            }
            this.property.FollowingLists =
                this.property.FollowingLists.Concat(new[] { parameter }).Distinct().ToArray();
            var sp = parameter.Split('/');

            ListReceiverManager.RegisterReceive(sp[0], sp[1]);
            this.FilterEditorViewModel.AddChild(new FilterList(sp[0], sp[1]));
            RaisePropertyChanged(() => FollowingLists);
        }
Exemplo n.º 2
0
        public void CloseTab(TabViewModel tabViewModel)
        {
            RemoveTab(tabViewModel);
            // cleanup additional receiver
            foreach (var query in tabViewModel.TabProperty.StreamingQueries)
            {
                ConnectionManager.RemoveQuery(query);
            }

            foreach (var list in tabViewModel.TabProperty.FollowingLists)
            {
                var split = list.Split('/');
                ListReceiverManager.RemoveReceive(split[0], split[1]);
            }
            this.Parent.PushClosedTabStack(tabViewModel);
            this.Parent.GCColumn();
        }
Exemplo n.º 3
0
        private void RemoveList(string parameter)
        {
            if (String.IsNullOrEmpty(parameter))
            {
                this.Messenger.Raise(new InformationMessage("リストが選択されていません。", "削除エラー", System.Windows.MessageBoxImage.Error, "WarningMessage"));
                return;
            }
            this.property.FollowingLists =
                this.property.FollowingLists.Except(new[] { parameter }).Distinct().ToArray();
            var sp = parameter.Split('/');

            ListReceiverManager.RemoveReceive(sp[0], sp[1]);
            this.FilterEditorViewModel.RootFilters
            .OfType <FilterList>()
            .Where(f => f.ListUser == sp[0] && f.ListName == sp[1])
            .ForEach(f => this.FilterEditorViewModel.RemoveChild(f));
            RaisePropertyChanged(() => FollowingLists);
        }
Exemplo n.º 4
0
        private void RebirthTab()
        {
            var tabViewModel = this.Parent.PopClosedTab();

            this.AddTab(tabViewModel);
            foreach (var query in tabViewModel.TabProperty.StreamingQueries.ToArray())
            {
                if (!ConnectionManager.AddQuery(query))
                {
                    ExceptionStorage.Register(new Exception("クエリリッスンに失敗"),
                                              ExceptionCategory.InternalError,
                                              "追加受信キーワードの登録に失敗しました。");
                    tabViewModel.TabProperty.StreamingQueries =
                        tabViewModel.TabProperty.StreamingQueries.Except(new[] { query }).ToArray();
                }
            }

            foreach (var list in tabViewModel.TabProperty.FollowingLists)
            {
                var split = list.Split('/');
                ListReceiverManager.RegisterReceive(split[0], split[1]);
            }
        }