void Remember() { // Remember Video Source Settings.Video.SourceKind = VideoViewModel.SelectedVideoSourceKind.Name; switch (VideoViewModel.SelectedVideoSourceKind) { case RegionSourceProvider _: var rect = _regionProvider.SelectedRegion; Settings.Video.Source = RectangleConverter.ConvertToInvariantString(rect); break; default: Settings.Video.Source = VideoViewModel.SelectedVideoSource.ToString(); break; } // Remember Video Codec Settings.Video.WriterKind = VideoViewModel.SelectedVideoWriterKind.Name; Settings.Video.Writer = VideoViewModel.SelectedVideoWriter.ToString(); // Remember Audio Sources Settings.Audio.Microphone = AudioSource.SelectedRecordingSource.ToString(); Settings.Audio.Speaker = AudioSource.SelectedLoopbackSource.ToString(); // Remember ScreenShot Format Settings.ScreenShots.ImageFormat = SelectedScreenShotImageFormat.ToString(); // Remember ScreenShot Target Settings.ScreenShots.SaveTarget = VideoViewModel.SelectedImageWriter.ToString(); // Remember Webcam Settings.Video.Webcam = WebCamProvider.SelectedCam.Name; }
public void SaveScreenShot(Bitmap bmp) { // Save to Disk or Clipboard if (bmp != null) { if (SelectedScreenShotSaveTo == "Clipboard") { bmp.WriteToClipboard(SelectedScreenShotImageFormat.Equals(ImageFormat.Png)); Status = "Image Saved to Clipboard"; } else // Save to Disk { try { EnsureOutPath(); var extension = SelectedScreenShotImageFormat.Equals(ImageFormat.Icon) ? "ico" : SelectedScreenShotImageFormat.Equals(ImageFormat.Jpeg) ? "jpg" : SelectedScreenShotImageFormat.ToString().ToLower(); var fileName = Path.Combine(Settings.OutPath, DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss") + "." + extension); bmp.Save(fileName, SelectedScreenShotImageFormat); Status = "Image Saved to Disk"; RecentViewModel.Add(fileName, RecentItemType.Image); SystemTrayManager.ShowNotification("ScreenShot Saved", Path.GetFileName(fileName), 3000, () => Process.Start(fileName)); } catch (Exception E) { Status = "Not Saved. " + E.Message; } } bmp.Dispose(); } else { Status = "Not Saved - Image taken was Empty"; } }