Beispiel #1
0
        public void ShowDialog(ChatTagListWindowViewModel viewModel)
        {
            var window = new ChatTagListWindow(viewModel);

            window.Owner = App.Current.MainWindow;
            window.ShowDialog();
        }
Beispiel #2
0
        public ChatTagListWindow(ChatTagListWindowViewModel viewModel)
        {
            this.DataContext      = viewModel;
            viewModel.CloseEvent += (sender, e) => this.Close();

            InitializeComponent();
        }
        public ChatTagListWindow(ChatTagListWindowViewModel viewModel)
        {
            this.DataContext      = viewModel;
            viewModel.CloseEvent += (sender, e) => this.Close();

            InitializeComponent();

            this.MouseLeftButtonDown += (sender, e) => this.DragMove();
        }
Beispiel #4
0
        private void TabTagList()
        {
            var tags = new HashSet <Tag>();

            {
                foreach (var profile in _messageManager.GetProfiles())
                {
                    tags.UnionWith(profile.Value.Tags);
                }

                {
                    var chatCategoryViewModels = new List <ChatCategoryViewModel>();
                    chatCategoryViewModels.Add(this.TabViewModel.Value);

                    for (int i = 0; i < chatCategoryViewModels.Count; i++)
                    {
                        chatCategoryViewModels.AddRange(chatCategoryViewModels[i].Categories);
                        tags.ExceptWith(chatCategoryViewModels[i].Threads.Select(n => n.Model.Tag));
                    }
                }
            }

            if (this.TabSelectedItem.Value is ChatCategoryViewModel chatCategoryViewModel)
            {
                var viewModel = new ChatTagListWindowViewModel(tags);
                viewModel.Callback += (tag) =>
                {
                    chatCategoryViewModel.Model.ThreadInfos.Add(new ChatThreadInfo()
                    {
                        Tag = tag
                    });
                };

                _dialogService.ShowDialog(viewModel);
            }
        }