private void NewBitmapAnimationButton_Click(object sender, RoutedEventArgs e)
        {
            EditBitmapAnimation dlg = new EditBitmapAnimation(this, mOffset,
                                                              CreateEditedSetList(), null);

            if (dlg.ShowDialog() != true)
            {
                return;
            }
            VisualizationList.Add(dlg.NewAnim);
            visualizationGrid.SelectedIndex = VisualizationList.Count - 1;

            okButton.Focus();
        }
        public EditVisualizationSet(Window owner, DisasmProject project, Formatter formatter,
                                    VisualizationSet curSet, int offset)
        {
            InitializeComponent();
            Owner       = owner;
            DataContext = this;

            mProject   = project;
            mFormatter = formatter;
            mOrigSet   = curSet;
            mOffset    = offset;

            RemovedSerials = new List <int>();

            if (curSet != null)
            {
                // Populate the data grid ItemsSource.
                foreach (Visualization vis in curSet)
                {
                    VisualizationList.Add(vis);
                }
            }
            if (VisualizationList.Count > 0)
            {
                visualizationGrid.SelectedIndex = 0;
            }

            // Check to see if we have any relevant plugins.  If not, disable New/Edit.
            Dictionary <string, IPlugin> plugins = project.GetActivePlugins();

            foreach (IPlugin chkPlug in plugins.Values)
            {
                if (chkPlug is IPlugin_Visualizer)
                {
                    HasVisPlugins = true;
                    break;
                }
            }
        }