Example #1
0
        private void CalculateCustomText(CustomTextViewModel viewmodel)
        {
            var vm = viewmodel;

            if (viewmodel.CustomRtfText.Length > 2500)
            {
                vm.CustomText = Properties.Resources.ParsingText;
                Task.Factory.StartNew(() => CalculateCustomTextCore(vm));
            }
            else
            {
                CalculateCustomTextCore(vm);
            }
        }
Example #2
0
        private void LoadData()
        {
            // načtení kolekce uživatelských textů
            _textsVM = new List <CustomTextViewModel>();
            var customTexts = _repository.GetTexts();

            foreach (var customText in customTexts)
            {
                var customTextVM = new CustomTextViewModel(customText);
                _textsVM.Add(customTextVM);
                CalculateCustomText(customTextVM);
            }

            // nabindování do gridu
            BindAllTexts();
        }
Example #3
0
        private void CalculateCustomTextCore(CustomTextViewModel viewmodel)
        {
            string rawText = RichTextStripper.StripRichTextFormat(viewmodel.CustomRtfText);

            if (InvokeRequired)
            {
                Invoke(new Action(() =>
                {
                    viewmodel.CustomText = rawText;
                    dgvTexts.Invalidate();
                }));
            }
            else
            {
                viewmodel.CustomText = rawText;
            }
        }
Example #4
0
        private void EditText(int index)
        {
            CustomTextViewModel vm = (CustomTextViewModel)bsTexts[index];

            var frm = new CustomTextEditor(_repository);

            frm.CustomText = vm.Model;
            if (frm.ShowDialog() == DialogResult.OK)
            {
                var sorting = GetSortInfo(dgvTexts);

                _repository.UpdateCustomText(frm.CustomText);
                bsTexts.ResetBindings(false);

                CalculateCustomText(vm);

                TrySetSortInfo(dgvTexts, sorting);
            }
        }
Example #5
0
        private void cmdNew_Click(object sender, EventArgs e)
        {
            var frm = new CustomTextEditor(_repository);

            frm.CustomText = new CustomText {
                is_header = true
            };
            if (frm.ShowDialog() == DialogResult.OK)
            {
                var sorting = GetSortInfo(dgvTexts);

                _repository.CreateCustomText(frm.CustomText);
                var vm = new CustomTextViewModel(frm.CustomText);

                CalculateCustomText(vm);

                bsTexts.Add(vm);
                bsTexts.ResetBindings(false);

                TrySetSortInfo(dgvTexts, sorting);
            }
        }
Example #6
0
        private void cmdDelete_Click(object sender, EventArgs e)
        {
            if (dgvTexts.SelectedRows.Count == 0)
            {
                return;
            }

            if (MessageBox.Show(Resources.ReallyDeleteText, this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                var sorting = GetSortInfo(dgvTexts);

                int index = dgvTexts.SelectedRows[0].Index;
                CustomTextViewModel vm = (CustomTextViewModel)bsTexts[index];

                _repository.DeleteCustomText(vm.Model);

                _textsVM.Remove(vm);
                bsTexts.RemoveAt(index);
                bsTexts.ResetBindings(false);

                TrySetSortInfo(dgvTexts, sorting);
            }
        }