public ScreenshotToolPreviewViewModel(OverviewScreenshotToolViewModel rpOwner)
        {
            Owner = rpOwner;

            TakeScreenshotCommand = new DelegatedCommand(() =>
            {
                Screenshot = ScreenshotService.Instance.TakePartialScreenshot(ScreenshotToolViewModel.Regions[Owner.Type]);
                OnPropertyChanged(nameof(Screenshot));
            });
        }
        public ScreenshotToolViewModel()
        {
            Overview = new OverviewScreenshotToolViewModel(this);

            TakeGeneralScreenshotCommand = new DelegatedCommand<ScreenshotRegion>(r => ScreenshotService.Instance.TakePartialScreenshotAndOutput(Regions[r], r_OutputToClipboard));

            ShowOverlayWindowCommand = new DelegatedCommand<ScreenshotRegion>(r =>
            {
                r_OverlayWindow = new ScreenshotToolOverlayWindow();
                r_OverlayWindow.Show(Regions[r]);
            });
            HideOverlayWindowCommand = new DelegatedCommand(() =>
            {
                r_OverlayWindow?.Hide();
                r_OverlayWindow = null;
            });
        }