Example #1
0
        private void SaveClicked(object sender, RoutedEventArgs e)
        {
            if (string.IsNullOrEmpty(m_currentPreset) || PresetListBox.SelectedIndex < 0)
            {
                return;
            }

            // If preset was renamed, then check name uniqueness
            if (PresetName.Text != m_currentPreset)
            {
                if (Presets.Exists(x => x.Name == PresetName.Text))
                {
                    MessageBox.Show(
                        $"Preset '{PresetName.Text}' already exists. Choose another name.",
                        "Preset Name",
                        MessageBoxButton.OK,
                        MessageBoxImage.Error);
                    return;
                }
            }

            var preset         = Presets.Find(x => x.Name == m_currentPreset);
            int presetPosition = PresetListBox.Items.IndexOf(m_currentPreset);

            preset.Name           = PresetName.Text;
            preset.GroupPat       = GroupPatsTextBox.Text;
            preset.FoldPercentage = FoldPercentTextBox.Text;
            preset.FoldPat        = FoldRegExTextBox.Text;
            preset.Comment        = CommentTextBox.Text;
            PresetListBox.UnselectAll();
            PresetListBox.Items[presetPosition] = preset.Name;
            PresetListBox.SelectedItem          = preset.Name;
        }
Example #2
0
        private void DeleteClicked(object sender, RoutedEventArgs e)
        {
            if (string.IsNullOrEmpty(m_currentPreset) || PresetListBox.SelectedIndex < 0)
            {
                return;
            }

            Presets.RemoveAll(x => x.Name == m_currentPreset);
            PresetListBox.Items.Remove(m_currentPreset);
            if (Presets.Count > 0)
            {
                PresetListBox.SelectedItem = Presets[0].Name;
            }
            else
            {
                PresetListBox.UnselectAll();
            }
        }