Added "Auto close editor on task" option

This commit is contained in:
Jaex 2017-12-24 12:01:16 +03:00
parent f95a4b4141
commit 9a8d8f0fc5
5 changed files with 61 additions and 20 deletions

View file

@ -270,17 +270,9 @@
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\image.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\notebook.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\application-block.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\globe.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

View file

@ -1465,7 +1465,16 @@ internal void OnSaveImageRequested()
if (SaveImageRequested != null)
{
Image img = GetResultImage();
SaveImageRequested(img, ImageFilePath);
if (Options.AutoCloseEditorOnTask)
{
Close();
TaskEx.Run(() => SaveImageRequested(img, ImageFilePath));
}
else
{
SaveImageRequested(img, ImageFilePath);
}
}
}
@ -1474,7 +1483,16 @@ internal void OnSaveImageAsRequested()
if (SaveImageAsRequested != null)
{
Image img = GetResultImage();
SaveImageAsRequested(img, ImageFilePath);
if (Options.AutoCloseEditorOnTask)
{
Close();
TaskEx.Run(() => SaveImageAsRequested(img, ImageFilePath));
}
else
{
SaveImageAsRequested(img, ImageFilePath);
}
}
}
@ -1483,7 +1501,16 @@ internal void OnCopyImageRequested()
if (CopyImageRequested != null)
{
Image img = GetResultImage();
CopyImageRequested(img);
if (Options.AutoCloseEditorOnTask)
{
Close();
TaskEx.Run(() => CopyImageRequested(img));
}
else
{
CopyImageRequested(img);
}
}
}
@ -1492,7 +1519,16 @@ internal void OnUploadImageRequested()
if (UploadImageRequested != null)
{
Image img = GetResultImage();
UploadImageRequested(img);
if (Options.AutoCloseEditorOnTask)
{
Close();
TaskEx.Run(() => UploadImageRequested(img));
}
else
{
UploadImageRequested(img);
}
}
}
@ -1501,7 +1537,16 @@ internal void OnPrintImageRequested()
if (PrintImageRequested != null)
{
Image img = GetResultImage();
PrintImageRequested(img);
if (Options.AutoCloseEditorOnTask)
{
Close();
TaskEx.Run(() => PrintImageRequested(img));
}
else
{
PrintImageRequested(img);
}
}
}

View file

@ -81,8 +81,9 @@ public class RegionCaptureOptions
// Image editor
public ImageEditorStartMode ImageEditorStartMode = ImageEditorStartMode.AutoSize;
public WindowState ImageEditorWindowState = new WindowState();
public bool AutoCloseEditorOnTask = true;
public Color ImageEditorBackgroundColor = Color.FromArgb(200, 200, 200);
public bool ShowEditorPanTip = true;
public ImageEditorInterpolationMode ImageEditorInterpolationMode = ImageEditorInterpolationMode.Bicubic;
public ImageEditorInterpolationMode ImageEditorResizeInterpolationMode = ImageEditorInterpolationMode.Bicubic;
}
}

View file

@ -1478,16 +1478,16 @@ private void ChangeImageSize()
{
Size oldSize = Form.Canvas.Size;
using (ImageSizeForm imageSizeForm = new ImageSizeForm(oldSize, Options.ImageEditorInterpolationMode))
using (ImageSizeForm imageSizeForm = new ImageSizeForm(oldSize, Options.ImageEditorResizeInterpolationMode))
{
if (imageSizeForm.ShowDialog(Form) == DialogResult.OK)
{
Size size = imageSizeForm.ImageSize;
Options.ImageEditorInterpolationMode = imageSizeForm.InterpolationMode;
Options.ImageEditorResizeInterpolationMode = imageSizeForm.InterpolationMode;
if (size != oldSize)
{
InterpolationMode interpolationMode = GetInterpolationMode(Options.ImageEditorInterpolationMode);
InterpolationMode interpolationMode = GetInterpolationMode(Options.ImageEditorResizeInterpolationMode);
Image img = ImageHelpers.ResizeImage(Form.Canvas, size, interpolationMode);
if (img != null)

View file

@ -159,10 +159,7 @@ internal void CreateToolbar()
tsbCloseCancel.Image = Resources.cross;
tsbCloseCancel.Click += (sender, e) => Form.Close(RegionResult.AnnotateCancelTask);
tsMain.Items.Add(tsbCloseCancel);
}
if (Form.Mode == RegionCaptureMode.TaskEditor)
{
tsMain.Items.Add(new ToolStripSeparator());
}
@ -752,6 +749,12 @@ internal void CreateToolbar()
(sender, e) => Options.ImageEditorStartMode = (ImageEditorStartMode)tscbImageEditorStartMode.Content.SelectedIndex;
tsddbOptions.DropDownItems.Add(tscbImageEditorStartMode);
ToolStripMenuItem tsmiAutoCloseEditorOnTask = new ToolStripMenuItem("Auto close editor on task");
tsmiAutoCloseEditorOnTask.Checked = Options.AutoCloseEditorOnTask;
tsmiAutoCloseEditorOnTask.CheckOnClick = true;
tsmiAutoCloseEditorOnTask.Click += (sender, e) => Options.AutoCloseEditorOnTask = tsmiAutoCloseEditorOnTask.Checked;
tsddbOptions.DropDownItems.Add(tsmiAutoCloseEditorOnTask);
tsmiImageEditorBackgroundColor = new ToolStripMenuItem(Resources.ShapeManager_CreateToolbar_EditorBackgroundColor);
tsmiImageEditorBackgroundColor.Click += (sender, e) =>
{