mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-01 09:47:22 +13:00
Added editor mode and capture buttons
This commit is contained in:
parent
f0f8d0711c
commit
a9eca34158
1 changed files with 109 additions and 101 deletions
|
@ -275,6 +275,52 @@ private void CreateMenu()
|
||||||
|
|
||||||
menuForm.Controls.Add(tsMain);
|
menuForm.Controls.Add(tsMain);
|
||||||
|
|
||||||
|
#region Editor mode
|
||||||
|
|
||||||
|
if (form.Mode == RegionCaptureMode.Editor)
|
||||||
|
{
|
||||||
|
ToolStripButton tsbCompleteEdit = new ToolStripButton("Run after capture tasks");
|
||||||
|
tsbCompleteEdit.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbCompleteEdit.Image = Resources.tick;
|
||||||
|
tsbCompleteEdit.MouseDown += (sender, e) => form.Close(RegionResult.AnnotateRunAfterCaptureTasks);
|
||||||
|
tsMain.Items.Add(tsbCompleteEdit);
|
||||||
|
|
||||||
|
ToolStripButton tsbSaveImage = new ToolStripButton("Save image");
|
||||||
|
tsbSaveImage.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbSaveImage.Enabled = !string.IsNullOrEmpty(form.ImageFilePath);
|
||||||
|
tsbSaveImage.Image = Resources.disk_black;
|
||||||
|
tsbSaveImage.MouseDown += (sender, e) => form.Close(RegionResult.AnnotateSaveImage);
|
||||||
|
tsMain.Items.Add(tsbSaveImage);
|
||||||
|
|
||||||
|
ToolStripButton tsbSaveImageAs = new ToolStripButton("Save image as...");
|
||||||
|
tsbSaveImageAs.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbSaveImageAs.Image = Resources.disks_black;
|
||||||
|
tsbSaveImageAs.MouseDown += (sender, e) => form.Close(RegionResult.AnnotateSaveImageAs);
|
||||||
|
tsMain.Items.Add(tsbSaveImageAs);
|
||||||
|
|
||||||
|
ToolStripButton tsbCopyImage = new ToolStripButton("Copy image to clipboard");
|
||||||
|
tsbCopyImage.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbCopyImage.Image = Resources.clipboard;
|
||||||
|
tsbCopyImage.MouseDown += (sender, e) => form.Close(RegionResult.AnnotateCopyImage);
|
||||||
|
tsMain.Items.Add(tsbCopyImage);
|
||||||
|
|
||||||
|
ToolStripButton tsbUploadImage = new ToolStripButton("Upload image");
|
||||||
|
tsbUploadImage.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbUploadImage.Image = Resources.drive_globe;
|
||||||
|
tsbUploadImage.MouseDown += (sender, e) => form.Close(RegionResult.AnnotateUploadImage);
|
||||||
|
tsMain.Items.Add(tsbUploadImage);
|
||||||
|
|
||||||
|
ToolStripButton tsbPrintImage = new ToolStripButton("Print image...");
|
||||||
|
tsbPrintImage.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbPrintImage.Image = Resources.printer;
|
||||||
|
tsbPrintImage.MouseDown += (sender, e) => form.Close(RegionResult.AnnotatePrintImage);
|
||||||
|
tsMain.Items.Add(tsbPrintImage);
|
||||||
|
|
||||||
|
tsMain.Items.Add(new ToolStripSeparator());
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion Editor mode
|
||||||
|
|
||||||
#region Main
|
#region Main
|
||||||
|
|
||||||
string buttonText;
|
string buttonText;
|
||||||
|
@ -296,25 +342,6 @@ private void CreateMenu()
|
||||||
|
|
||||||
#endregion Main
|
#endregion Main
|
||||||
|
|
||||||
#region Selected object
|
|
||||||
|
|
||||||
tssObjectOptions = new ToolStripSeparator();
|
|
||||||
tsMain.Items.Add(tssObjectOptions);
|
|
||||||
|
|
||||||
tsbDeleteSelected = new ToolStripButton(Resources.ShapeManager_CreateContextMenu_Delete_selected_object);
|
|
||||||
tsbDeleteSelected.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
|
||||||
tsbDeleteSelected.Image = Resources.layer__minus;
|
|
||||||
tsbDeleteSelected.MouseDown += (sender, e) => DeleteCurrentShape();
|
|
||||||
tsMain.Items.Add(tsbDeleteSelected);
|
|
||||||
|
|
||||||
tsbDeleteAll = new ToolStripButton(Resources.ShapeManager_CreateContextMenu_Delete_all_objects);
|
|
||||||
tsbDeleteAll.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
|
||||||
tsbDeleteAll.Image = Resources.minus;
|
|
||||||
tsbDeleteAll.MouseDown += (sender, e) => DeleteAllShapes();
|
|
||||||
tsMain.Items.Add(tsbDeleteAll);
|
|
||||||
|
|
||||||
#endregion Selected object
|
|
||||||
|
|
||||||
#region Tools
|
#region Tools
|
||||||
|
|
||||||
tsMain.Items.Add(new ToolStripSeparator());
|
tsMain.Items.Add(new ToolStripSeparator());
|
||||||
|
@ -401,6 +428,69 @@ private void CreateMenu()
|
||||||
|
|
||||||
#endregion Tools
|
#endregion Tools
|
||||||
|
|
||||||
|
#region Selected object
|
||||||
|
|
||||||
|
tssObjectOptions = new ToolStripSeparator();
|
||||||
|
tsMain.Items.Add(tssObjectOptions);
|
||||||
|
|
||||||
|
tsbDeleteSelected = new ToolStripButton(Resources.ShapeManager_CreateContextMenu_Delete_selected_object);
|
||||||
|
tsbDeleteSelected.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbDeleteSelected.Image = Resources.layer__minus;
|
||||||
|
tsbDeleteSelected.MouseDown += (sender, e) => DeleteCurrentShape();
|
||||||
|
tsMain.Items.Add(tsbDeleteSelected);
|
||||||
|
|
||||||
|
tsbDeleteAll = new ToolStripButton(Resources.ShapeManager_CreateContextMenu_Delete_all_objects);
|
||||||
|
tsbDeleteAll.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbDeleteAll.Image = Resources.minus;
|
||||||
|
tsbDeleteAll.MouseDown += (sender, e) => DeleteAllShapes();
|
||||||
|
tsMain.Items.Add(tsbDeleteAll);
|
||||||
|
|
||||||
|
#endregion Selected object
|
||||||
|
|
||||||
|
#region Capture
|
||||||
|
|
||||||
|
if (form.Mode != RegionCaptureMode.Editor)
|
||||||
|
{
|
||||||
|
tsMain.Items.Add(new ToolStripSeparator());
|
||||||
|
|
||||||
|
ToolStripButton tsbFullscreenCapture = new ToolStripButton(Resources.ShapeManager_CreateContextMenu_Capture_fullscreen);
|
||||||
|
tsbFullscreenCapture.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbFullscreenCapture.Image = Resources.layer_fullscreen;
|
||||||
|
tsbFullscreenCapture.MouseDown += (sender, e) => form.Close(RegionResult.Fullscreen);
|
||||||
|
tsMain.Items.Add(tsbFullscreenCapture);
|
||||||
|
|
||||||
|
ToolStripButton tsbActiveMonitorCapture = new ToolStripButton(Resources.ShapeManager_CreateContextMenu_Capture_active_monitor);
|
||||||
|
tsbActiveMonitorCapture.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbActiveMonitorCapture.Image = Resources.monitor;
|
||||||
|
tsbActiveMonitorCapture.MouseDown += (sender, e) => form.Close(RegionResult.ActiveMonitor);
|
||||||
|
tsMain.Items.Add(tsbActiveMonitorCapture);
|
||||||
|
|
||||||
|
ToolStripDropDownButton tsbMonitorCapture = new ToolStripDropDownButton(Resources.ShapeManager_CreateContextMenu_Capture_monitor);
|
||||||
|
tsbMonitorCapture.HideImageMargin();
|
||||||
|
tsbMonitorCapture.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbMonitorCapture.Image = Resources.monitor_window;
|
||||||
|
tsMain.Items.Add(tsbMonitorCapture);
|
||||||
|
|
||||||
|
tsbMonitorCapture.DropDownItems.Clear();
|
||||||
|
|
||||||
|
Screen[] screens = Screen.AllScreens;
|
||||||
|
|
||||||
|
for (int i = 0; i < screens.Length; i++)
|
||||||
|
{
|
||||||
|
Screen screen = screens[i];
|
||||||
|
ToolStripMenuItem tsmi = new ToolStripMenuItem(string.Format("{0}. {1}x{2}", i + 1, screen.Bounds.Width, screen.Bounds.Height));
|
||||||
|
int index = i;
|
||||||
|
tsmi.MouseDown += (sender, e) =>
|
||||||
|
{
|
||||||
|
form.MonitorIndex = index;
|
||||||
|
form.Close(RegionResult.Monitor);
|
||||||
|
};
|
||||||
|
tsbMonitorCapture.DropDownItems.Add(tsmi);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion Capture
|
||||||
|
|
||||||
menuForm.ResumeLayout(false);
|
menuForm.ResumeLayout(false);
|
||||||
|
|
||||||
menuForm.Show(form);
|
menuForm.Show(form);
|
||||||
|
@ -438,47 +528,6 @@ private void CreateContextMenu()
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#region Editor mode
|
|
||||||
|
|
||||||
if (form.Mode == RegionCaptureMode.Editor)
|
|
||||||
{
|
|
||||||
ToolStripMenuItem tsmiCompleteEdit = new ToolStripMenuItem("Run after capture tasks");
|
|
||||||
tsmiCompleteEdit.Image = Resources.tick;
|
|
||||||
tsmiCompleteEdit.Click += (sender, e) => form.Close(RegionResult.AnnotateRunAfterCaptureTasks);
|
|
||||||
cmsContextMenu.Items.Add(tsmiCompleteEdit);
|
|
||||||
|
|
||||||
ToolStripMenuItem tsmiSaveImage = new ToolStripMenuItem("Save image");
|
|
||||||
tsmiSaveImage.Enabled = !string.IsNullOrEmpty(form.ImageFilePath);
|
|
||||||
tsmiSaveImage.Image = Resources.disk_black;
|
|
||||||
tsmiSaveImage.Click += (sender, e) => form.Close(RegionResult.AnnotateSaveImage);
|
|
||||||
cmsContextMenu.Items.Add(tsmiSaveImage);
|
|
||||||
|
|
||||||
ToolStripMenuItem tsmiSaveImageAs = new ToolStripMenuItem("Save image as...");
|
|
||||||
tsmiSaveImageAs.Image = Resources.disks_black;
|
|
||||||
tsmiSaveImageAs.Click += (sender, e) => form.Close(RegionResult.AnnotateSaveImageAs);
|
|
||||||
cmsContextMenu.Items.Add(tsmiSaveImageAs);
|
|
||||||
|
|
||||||
ToolStripMenuItem tsmiCopyImage = new ToolStripMenuItem("Copy image to clipboard");
|
|
||||||
tsmiCopyImage.Image = Resources.clipboard;
|
|
||||||
tsmiCopyImage.Click += (sender, e) => form.Close(RegionResult.AnnotateCopyImage);
|
|
||||||
cmsContextMenu.Items.Add(tsmiCopyImage);
|
|
||||||
|
|
||||||
ToolStripMenuItem tsmiUploadImage = new ToolStripMenuItem("Upload image");
|
|
||||||
tsmiUploadImage.Image = Resources.drive_globe;
|
|
||||||
tsmiUploadImage.Click += (sender, e) => form.Close(RegionResult.AnnotateUploadImage);
|
|
||||||
cmsContextMenu.Items.Add(tsmiUploadImage);
|
|
||||||
|
|
||||||
ToolStripMenuItem tsmiPrintImage = new ToolStripMenuItem("Print image...");
|
|
||||||
tsmiPrintImage.Image = Resources.printer;
|
|
||||||
tsmiPrintImage.Click += (sender, e) => form.Close(RegionResult.AnnotatePrintImage);
|
|
||||||
cmsContextMenu.Items.Add(tsmiPrintImage);
|
|
||||||
|
|
||||||
ToolStripSeparator tssEditorMode = new ToolStripSeparator();
|
|
||||||
cmsContextMenu.Items.Add(tssEditorMode);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion Editor mode
|
|
||||||
|
|
||||||
#region Shape options
|
#region Shape options
|
||||||
|
|
||||||
tssShapeOptions = new ToolStripSeparator();
|
tssShapeOptions = new ToolStripSeparator();
|
||||||
|
@ -670,47 +719,6 @@ private void CreateContextMenu()
|
||||||
|
|
||||||
#endregion Shape options
|
#endregion Shape options
|
||||||
|
|
||||||
#region Capture
|
|
||||||
|
|
||||||
if (form.Mode != RegionCaptureMode.Editor)
|
|
||||||
{
|
|
||||||
cmsContextMenu.Items.Add(new ToolStripSeparator());
|
|
||||||
|
|
||||||
ToolStripMenuItem tsmiFullscreenCapture = new ToolStripMenuItem(Resources.ShapeManager_CreateContextMenu_Capture_fullscreen);
|
|
||||||
tsmiFullscreenCapture.Image = Resources.layer_fullscreen;
|
|
||||||
tsmiFullscreenCapture.Click += (sender, e) => form.Close(RegionResult.Fullscreen);
|
|
||||||
cmsContextMenu.Items.Add(tsmiFullscreenCapture);
|
|
||||||
|
|
||||||
ToolStripMenuItem tsmiActiveMonitorCapture = new ToolStripMenuItem(Resources.ShapeManager_CreateContextMenu_Capture_active_monitor);
|
|
||||||
tsmiActiveMonitorCapture.Image = Resources.monitor;
|
|
||||||
tsmiActiveMonitorCapture.Click += (sender, e) => form.Close(RegionResult.ActiveMonitor);
|
|
||||||
cmsContextMenu.Items.Add(tsmiActiveMonitorCapture);
|
|
||||||
|
|
||||||
ToolStripMenuItem tsmiMonitorCapture = new ToolStripMenuItem(Resources.ShapeManager_CreateContextMenu_Capture_monitor);
|
|
||||||
tsmiMonitorCapture.HideImageMargin();
|
|
||||||
tsmiMonitorCapture.Image = Resources.monitor_window;
|
|
||||||
cmsContextMenu.Items.Add(tsmiMonitorCapture);
|
|
||||||
|
|
||||||
tsmiMonitorCapture.DropDownItems.Clear();
|
|
||||||
|
|
||||||
Screen[] screens = Screen.AllScreens;
|
|
||||||
|
|
||||||
for (int i = 0; i < screens.Length; i++)
|
|
||||||
{
|
|
||||||
Screen screen = screens[i];
|
|
||||||
ToolStripMenuItem tsmi = new ToolStripMenuItem(string.Format("{0}. {1}x{2}", i + 1, screen.Bounds.Width, screen.Bounds.Height));
|
|
||||||
int index = i;
|
|
||||||
tsmi.Click += (sender, e) =>
|
|
||||||
{
|
|
||||||
form.MonitorIndex = index;
|
|
||||||
form.Close(RegionResult.Monitor);
|
|
||||||
};
|
|
||||||
tsmiMonitorCapture.DropDownItems.Add(tsmi);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion Capture
|
|
||||||
|
|
||||||
#region Options
|
#region Options
|
||||||
|
|
||||||
if (form.Mode != RegionCaptureMode.Editor)
|
if (form.Mode != RegionCaptureMode.Editor)
|
||||||
|
|
Loading…
Reference in a new issue