private void RecButton_Click(object sender, RoutedEventArgs e) { if (_recorder == null) { return; } int click; PowerPointSlide currentSlide; try { click = _slideShowWindow.View.GetClickIndex(); currentSlide = PowerPointSlide.FromSlideFactory(_slideShowWindow.View.Slide); } catch (COMException) { Forms.MessageBox.Show(NarrationsLabText.InShowControlErrorInvalidRecCommand); return; } switch (_status) { case ButtonStatus.Idle: _status = ButtonStatus.Rec; undoButton.IsEnabled = false; _recordStartClick = click; _recordStartSlide = currentSlide; recButton.Content = NarrationsLabText.InShowControlRecButtonIdleText; recButton.Foreground = new SolidColorBrush(Colors.Red); _recorder.RecButtonIdleHandler(); _slideShowWindow.Activate(); break; case ButtonStatus.Rec: recButton.Content = NarrationsLabText.InShowControlRecButtonRecText; undoButton.IsEnabled = true; recButton.Foreground = new SolidColorBrush(Colors.Black); _recorder.StopButtonRecordingHandler(_recordStartClick, _recordStartSlide, true); _slideShowWindow.Activate(); var totalClick = _slideShowWindow.View.GetClickCount(); if (click + 1 > totalClick) { _slideShowWindow.View.Next(); } else { _slideShowWindow.View.GotoClick(click + 1); } _status = ButtonStatus.Idle; // stop produces a undo-able record, thus enable undo button undoButton.IsEnabled = true; break; } }
public override void Focus() { window.Activate(); }