Use AnnotateImage method in notification form

This commit is contained in:
Jaex 2016-09-07 16:53:54 +03:00
parent 8fd061e4c8
commit 27ccde41c9
2 changed files with 39 additions and 34 deletions

View file

@ -193,7 +193,7 @@ private void NotificationForm_MouseClick(object sender, MouseEventArgs e)
{
case ToastClickAction.AnnotateImage:
if (!string.IsNullOrEmpty(ToastConfig.FilePath) && Helpers.IsImageFile(ToastConfig.FilePath))
TaskHelpers.AnnotateImageUsingGreenshot(ToastConfig.FilePath);
TaskHelpers.AnnotateImage(ToastConfig.FilePath);
break;
case ToastClickAction.CopyImageToClipboard:
if (!string.IsNullOrEmpty(ToastConfig.FilePath))

View file

@ -201,26 +201,6 @@ public static bool ShowAfterCaptureForm(TaskSettings taskSettings, out string fi
return true;
}
public static void AnnotateImageUsingGreenshot(string filePath)
{
AnnotateImageUsingGreenshot(null, filePath);
}
public static Image AnnotateImageUsingGreenshot(Image img, string imgPath)
{
return ImageHelpers.AnnotateImage(img, imgPath, !Program.Sandbox, Program.PersonalFolder,
x => Program.MainForm.InvokeSafe(() => ClipboardHelpers.CopyImage(x)),
x => Program.MainForm.InvokeSafe(() => UploadManager.UploadImage(x)),
(x, filePath) => Program.MainForm.InvokeSafe(() => ImageHelpers.SaveImage(x, filePath)),
(x, filePath) =>
{
string newFilePath = null;
Program.MainForm.InvokeSafe(() => newFilePath = ImageHelpers.SaveImageFileDialog(x, filePath));
return newFilePath;
},
x => Program.MainForm.InvokeSafe(() => PrintImage(x)));
}
public static void PrintImage(Image img)
{
if (Program.Settings.DontShowPrintSettingsDialog)
@ -594,12 +574,7 @@ public static void AnnotateImage(TaskSettings taskSettings = null)
{
if (taskSettings.AdvancedSettings.UseShareXForAnnotation)
{
Image result = RegionCaptureTasks.AnnotateImage(img, taskSettings.CaptureSettingsReference.SurfaceOptions);
if (result != null)
{
UploadManager.RunImageTask(result, taskSettings);
}
AnnotateImageUsingShareX(img, taskSettings);
}
else
{
@ -624,20 +599,50 @@ public static void AnnotateImage(string filePath, TaskSettings taskSettings = nu
if (taskSettings.AdvancedSettings.UseShareXForAnnotation)
{
Image result = RegionCaptureTasks.AnnotateImage(filePath, taskSettings.CaptureSettingsReference.SurfaceOptions);
if (result != null)
{
UploadManager.RunImageTask(result, taskSettings);
}
AnnotateImageUsingShareX(filePath, taskSettings);
}
else
{
AnnotateImageUsingGreenshot(filePath);
AnnotateImageUsingGreenshot(null, filePath);
}
}
}
public static void AnnotateImageUsingShareX(Image img, TaskSettings taskSettings = null)
{
Image result = RegionCaptureTasks.AnnotateImage(img, taskSettings.CaptureSettingsReference.SurfaceOptions);
if (result != null)
{
UploadManager.RunImageTask(result, taskSettings);
}
}
public static void AnnotateImageUsingShareX(string filePath, TaskSettings taskSettings = null)
{
Image result = RegionCaptureTasks.AnnotateImage(filePath, taskSettings.CaptureSettingsReference.SurfaceOptions);
if (result != null)
{
UploadManager.RunImageTask(result, taskSettings);
}
}
public static Image AnnotateImageUsingGreenshot(Image img, string imgPath)
{
return ImageHelpers.AnnotateImage(img, imgPath, !Program.Sandbox, Program.PersonalFolder,
x => Program.MainForm.InvokeSafe(() => ClipboardHelpers.CopyImage(x)),
x => Program.MainForm.InvokeSafe(() => UploadManager.UploadImage(x)),
(x, filePath) => Program.MainForm.InvokeSafe(() => ImageHelpers.SaveImage(x, filePath)),
(x, filePath) =>
{
string newFilePath = null;
Program.MainForm.InvokeSafe(() => newFilePath = ImageHelpers.SaveImageFileDialog(x, filePath));
return newFilePath;
},
x => Program.MainForm.InvokeSafe(() => PrintImage(x)));
}
public static void OpenImageEffects()
{
string filePath = ImageHelpers.OpenImageFileDialog();