Example #1
0
        public override void Execute(object parameter)
        {
            _presenter.Show();

            var panel = _presenter.Window() as SourceControlPanel;

            if (panel != null)
            {
                var vm = panel.ViewModel as SourceControlViewViewModel;
                if (vm != null)
                {
                    vm.SetTab(SourceControlTab.Changes);
                }
            }
        }
        public override void Execute(object parameter)
        {
            var panel = _presenter.Window() as SourceControlPanel;

            if (panel == null)
            {
                return;
            }

            var panelVM = panel.ViewModel as SourceControlViewViewModel;

            if (panelVM == null)
            {
                return;
            }

            panelVM.SetTab(SourceControlTab.Changes);
            var changesVM = panelVM.SelectedItem.ViewModel as ChangesViewViewModel;

            if (changesVM == null)
            {
                return;
            }

            var fileName = GetFileName((CodeExplorerComponentViewModel)parameter);
            var result   = _messageBox.Show(string.Format(RubberduckUI.SourceControl_UndoPrompt, fileName),
                                            RubberduckUI.SourceControl_UndoTitle, System.Windows.Forms.MessageBoxButtons.OKCancel,
                                            System.Windows.Forms.MessageBoxIcon.Warning, System.Windows.Forms.MessageBoxDefaultButton.Button2);

            if (result != System.Windows.Forms.DialogResult.OK)
            {
                return;
            }

            changesVM.UndoChangesToolbarButtonCommand.Execute(new FileStatusEntry(fileName, FileStatus.Modified));
            _presenter.Show();
        }