Example #1
0
        private void listViewGroups_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (listViewGroups.SelectedItems.Count < 1)
            {
                return;
            }

            _currentGroup = listViewGroups.SelectedItems[0].Tag as MultipleSearchAndReplaceGroup;
            if (_currentGroup == null)
            {
                return;
            }

            groupBoxReplaces.Text = string.Format(Configuration.Settings.Language.MultipleReplace.RulesForGroupX, _currentGroup.Name);
            _loading = true;
            listViewRules.BeginUpdate();
            listViewRules.Items.Clear();
            foreach (var rule in _currentGroup.Rules)
            {
                AddToRulesListView(rule);
            }
            if (_currentGroup.Rules.Count > 0)
            {
                listViewRules.Items[0].Selected = true;
            }
            else
            {
                textBoxFind.Text    = string.Empty;
                textBoxReplace.Text = string.Empty;
            }
            listViewRules.EndUpdate();
            _loading = false;
        }
Example #2
0
 private void MoveRulesToGroup(MultipleSearchAndReplaceGroup newGroup)
 {
     foreach (ListViewItem item in listViewRules.SelectedItems)
     {
         var rule = (MultipleSearchAndReplaceSetting)item.Tag;
         _currentGroup.Rules.Remove(rule);
         newGroup.Rules.Add(rule);
     }
     UpdateViewFromModel(Configuration.Settings.MultipleSearchAndReplaceGroups, _currentGroup);
     GeneratePreview();
 }
Example #3
0
 private void newToolStripMenuItem_Click(object sender, EventArgs e)
 {
     using (var form = new MultipleReplaceNewGroup(string.Empty))
     {
         if (form.ShowDialog(this) == DialogResult.OK && form.GroupName.Length > 0)
         {
             var newGroup = new MultipleSearchAndReplaceGroup {
                 Enabled = true, Name = form.GroupName, Rules = new List <MultipleSearchAndReplaceSetting>()
             };
             Configuration.Settings.MultipleSearchAndReplaceGroups.Add(newGroup);
             UpdateViewFromModel(Configuration.Settings.MultipleSearchAndReplaceGroups, newGroup);
         }
     }
 }
Example #4
0
        private void deleteToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            if (_currentGroup == null)
            {
                return;
            }

            var idx = Configuration.Settings.MultipleSearchAndReplaceGroups.IndexOf(_currentGroup);

            Configuration.Settings.MultipleSearchAndReplaceGroups.RemoveAt(idx);
            if (Configuration.Settings.MultipleSearchAndReplaceGroups.Count > 0)
            {
                if (idx >= Configuration.Settings.MultipleSearchAndReplaceGroups.Count)
                {
                    idx--;
                }
                _currentGroup = Configuration.Settings.MultipleSearchAndReplaceGroups[idx];
            }
            else
            {
                _currentGroup = null;
            }
            UpdateViewFromModel(Configuration.Settings.MultipleSearchAndReplaceGroups, _currentGroup);
        }
Example #5
0
        public void Initialize(Subtitle subtitle)
        {
            if (subtitle == null)
            {
                throw new ArgumentNullException("subtitle");
            }

            _subtitle = subtitle;
            _oldMultipleSearchAndReplaceGroups.Clear();

            if (Configuration.Settings.MultipleSearchAndReplaceGroups.Count == 0)
            {
                Configuration.Settings.MultipleSearchAndReplaceGroups.Add(new MultipleSearchAndReplaceGroup {
                    Enabled = true, Name = "Default", Rules = new List <MultipleSearchAndReplaceSetting>()
                });
            }

            foreach (var group in Configuration.Settings.MultipleSearchAndReplaceGroups)
            {
                var oldGroup = new MultipleSearchAndReplaceGroup {
                    Name = group.Name, Enabled = group.Enabled, Rules = new List <MultipleSearchAndReplaceSetting>()
                };
                foreach (var rule in group.Rules)
                {
                    oldGroup.Rules.Add(rule);
                }
                _oldMultipleSearchAndReplaceGroups.Add(oldGroup);
            }

            if (subtitle.Paragraphs == null || subtitle.Paragraphs.Count == 0)
            {
                groupBoxLinesFound.Enabled = false;
            }

            UpdateViewFromModel(Configuration.Settings.MultipleSearchAndReplaceGroups, Configuration.Settings.MultipleSearchAndReplaceGroups.Count > 0 ? Configuration.Settings.MultipleSearchAndReplaceGroups[0] : null);
        }
Example #6
0
 private void UpdateViewFromModel(List <MultipleSearchAndReplaceGroup> groups, MultipleSearchAndReplaceGroup focusGroup)
 {
     _loading = true;
     listViewGroups.BeginUpdate();
     listViewGroups.Items.Clear();
     for (int index = 0; index < groups.Count; index++)
     {
         var group = groups[index];
         var lvi   = new ListViewItem(group.Name)
         {
             Checked = group.Enabled, Tag = group
         };
         listViewGroups.Items.Add(lvi);
         if (group == focusGroup)
         {
             listViewGroups.Items[index].Selected = true;
         }
     }
     listViewGroups.EndUpdate();
     _loading = false;
 }