private void StopRecordingButton_OnClick(object sender, RoutedEventArgs e) { videoWriter.Close(); LogManager.GetCurrentClassLogger().Info("Recording finished (" + videoWriter.Filename + ")"); videoWriter = null; RecordingButton.Visibility = Visibility.Collapsed; StopRecordingButton.Visibility = Visibility.Collapsed; }
private void Save(IStreamable sender) { if (sender is IImage) { var saveFileDialog = new System.Windows.Forms.SaveFileDialog(); saveFileDialog.FileName = "*"; saveFileDialog.DefaultExt = "jpg"; saveFileDialog.ValidateNames = true; saveFileDialog.Filter = "Image File (.jpg)|*.jpg"; DialogResult result = saveFileDialog.ShowDialog(); if (!(result == DialogResult.OK)) // Test result. { return; } sender.Save(saveFileDialog.FileName); } else if (sender is IVideo || sender is ICamera) { if (videoWriter == null) { var saveFileDialog = new System.Windows.Forms.SaveFileDialog(); saveFileDialog.FileName = "*"; saveFileDialog.DefaultExt = "gyg"; saveFileDialog.ValidateNames = true; saveFileDialog.Filter = "Gygax Video (.gyg)|*.gyg"; DialogResult result = saveFileDialog.ShowDialog(); if (!(result == DialogResult.OK)) // Test result. { return; } videoWriter = new GygaxVideoWriter(saveFileDialog.FileName); videoWriter.Source = (IStreamable)sender; RecordingButton.Visibility = Visibility.Visible; StopRecordingButton.Visibility = Visibility.Visible; } } }