mirror of
https://github.com/ShareX/ShareX.git
synced 2024-09-30 01:07:21 +13:00
Added constant settings to RegionCaptureOptions
This commit is contained in:
parent
a1346db119
commit
35e0a826b6
7 changed files with 2129 additions and 2368 deletions
|
@ -24,12 +24,6 @@ You should have received a copy of the GNU General Public License
|
||||||
#endregion License Information (GPL v3)
|
#endregion License Information (GPL v3)
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.ComponentModel;
|
|
||||||
using System.Data;
|
|
||||||
using System.Drawing;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace ShareX.HelpersLib
|
namespace ShareX.HelpersLib
|
||||||
|
@ -56,7 +50,7 @@ public decimal Value
|
||||||
}
|
}
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
nudValue.Value = value.Between(Minimum, Maximum);
|
nudValue.SetValue(value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -30,6 +30,14 @@ namespace ShareX.ScreenCaptureLib
|
||||||
{
|
{
|
||||||
public class RegionCaptureOptions
|
public class RegionCaptureOptions
|
||||||
{
|
{
|
||||||
|
public const int MagnifierPixelCountMinimum = 3;
|
||||||
|
public const int MagnifierPixelCountMaximum = 35;
|
||||||
|
public const int MagnifierPixelSizeMinimum = 2;
|
||||||
|
public const int MagnifierPixelSizeMaximum = 30;
|
||||||
|
public const int SnapDistance = 30;
|
||||||
|
public const int MoveSpeedMinimum = 1;
|
||||||
|
public const int MoveSpeedMaximum = 10;
|
||||||
|
|
||||||
public bool QuickCrop = true;
|
public bool QuickCrop = true;
|
||||||
public RegionCaptureAction MouseRightClickAction = RegionCaptureAction.OpenOptionsMenu;
|
public RegionCaptureAction MouseRightClickAction = RegionCaptureAction.OpenOptionsMenu;
|
||||||
public RegionCaptureAction MouseMiddleClickAction = RegionCaptureAction.CancelCapture;
|
public RegionCaptureAction MouseMiddleClickAction = RegionCaptureAction.CancelCapture;
|
||||||
|
|
|
@ -78,9 +78,6 @@ public bool Visible
|
||||||
public bool IsResizing { get; private set; }
|
public bool IsResizing { get; private set; }
|
||||||
public bool IsBottomRightResizing { get; set; }
|
public bool IsBottomRightResizing { get; set; }
|
||||||
|
|
||||||
private const int MinMoveSpeed = 1;
|
|
||||||
private const int MaxMoveSpeed = 10;
|
|
||||||
|
|
||||||
private ShapeManager shapeManager;
|
private ShapeManager shapeManager;
|
||||||
private NodeObject[] nodes;
|
private NodeObject[] nodes;
|
||||||
private bool isUpPressed, isDownPressed, isLeftPressed, isRightPressed;
|
private bool isUpPressed, isDownPressed, isLeftPressed, isRightPressed;
|
||||||
|
@ -216,7 +213,7 @@ private void form_KeyDown(object sender, KeyEventArgs e)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
int speed = e.Shift ? MaxMoveSpeed : MinMoveSpeed;
|
int speed = e.Shift ? RegionCaptureOptions.MoveSpeedMaximum : RegionCaptureOptions.MoveSpeedMinimum;
|
||||||
int y = isUpPressed && isDownPressed ? 0 : isDownPressed ? speed : isUpPressed ? -speed : 0;
|
int y = isUpPressed && isDownPressed ? 0 : isDownPressed ? speed : isUpPressed ? -speed : 0;
|
||||||
int x = isLeftPressed && isRightPressed ? 0 : isRightPressed ? speed : isLeftPressed ? -speed : 0;
|
int x = isLeftPressed && isRightPressed ? 0 : isRightPressed ? speed : isLeftPressed ? -speed : 0;
|
||||||
|
|
||||||
|
|
|
@ -200,8 +200,6 @@ public AnnotationOptions AnnotationOptions
|
||||||
public event Action<BaseShape> CurrentShapeChanged;
|
public event Action<BaseShape> CurrentShapeChanged;
|
||||||
public event Action<ShapeType> CurrentShapeTypeChanged;
|
public event Action<ShapeType> CurrentShapeTypeChanged;
|
||||||
|
|
||||||
private const int SnapDistance = 30;
|
|
||||||
|
|
||||||
private RectangleRegionForm form;
|
private RectangleRegionForm form;
|
||||||
private ContextMenuStrip cmsContextMenu;
|
private ContextMenuStrip cmsContextMenu;
|
||||||
private ToolStripSeparator tssObjectOptions, tssShapeOptions;
|
private ToolStripSeparator tssObjectOptions, tssShapeOptions;
|
||||||
|
@ -618,16 +616,16 @@ private void CreateContextMenu()
|
||||||
tsmiOptions.DropDownItems.Add(tsmiUseSquareMagnifier);
|
tsmiOptions.DropDownItems.Add(tsmiUseSquareMagnifier);
|
||||||
|
|
||||||
ToolStripLabeledNumericUpDown tslnudMagnifierPixelCount = new ToolStripLabeledNumericUpDown(Resources.ShapeManager_CreateContextMenu_Magnifier_pixel_count_);
|
ToolStripLabeledNumericUpDown tslnudMagnifierPixelCount = new ToolStripLabeledNumericUpDown(Resources.ShapeManager_CreateContextMenu_Magnifier_pixel_count_);
|
||||||
tslnudMagnifierPixelCount.Content.Minimum = 1;
|
tslnudMagnifierPixelCount.Content.Minimum = RegionCaptureOptions.MagnifierPixelCountMinimum;
|
||||||
tslnudMagnifierPixelCount.Content.Maximum = 35;
|
tslnudMagnifierPixelCount.Content.Maximum = RegionCaptureOptions.MagnifierPixelCountMaximum;
|
||||||
tslnudMagnifierPixelCount.Content.Increment = 2;
|
tslnudMagnifierPixelCount.Content.Increment = 2;
|
||||||
tslnudMagnifierPixelCount.Content.Value = Config.MagnifierPixelCount;
|
tslnudMagnifierPixelCount.Content.Value = Config.MagnifierPixelCount;
|
||||||
tslnudMagnifierPixelCount.Content.ValueChanged = (sender, e) => Config.MagnifierPixelCount = (int)tslnudMagnifierPixelCount.Content.Value;
|
tslnudMagnifierPixelCount.Content.ValueChanged = (sender, e) => Config.MagnifierPixelCount = (int)tslnudMagnifierPixelCount.Content.Value;
|
||||||
tsmiOptions.DropDownItems.Add(tslnudMagnifierPixelCount);
|
tsmiOptions.DropDownItems.Add(tslnudMagnifierPixelCount);
|
||||||
|
|
||||||
ToolStripLabeledNumericUpDown tslnudMagnifierPixelSize = new ToolStripLabeledNumericUpDown(Resources.ShapeManager_CreateContextMenu_Magnifier_pixel_size_);
|
ToolStripLabeledNumericUpDown tslnudMagnifierPixelSize = new ToolStripLabeledNumericUpDown(Resources.ShapeManager_CreateContextMenu_Magnifier_pixel_size_);
|
||||||
tslnudMagnifierPixelSize.Content.Minimum = 2;
|
tslnudMagnifierPixelSize.Content.Minimum = RegionCaptureOptions.MagnifierPixelSizeMinimum;
|
||||||
tslnudMagnifierPixelSize.Content.Maximum = 30;
|
tslnudMagnifierPixelSize.Content.Maximum = RegionCaptureOptions.MagnifierPixelSizeMaximum;
|
||||||
tslnudMagnifierPixelSize.Content.Value = Config.MagnifierPixelSize;
|
tslnudMagnifierPixelSize.Content.Value = Config.MagnifierPixelSize;
|
||||||
tslnudMagnifierPixelSize.Content.ValueChanged = (sender, e) => Config.MagnifierPixelSize = (int)tslnudMagnifierPixelSize.Content.Value;
|
tslnudMagnifierPixelSize.Content.ValueChanged = (sender, e) => Config.MagnifierPixelSize = (int)tslnudMagnifierPixelSize.Content.Value;
|
||||||
tsmiOptions.DropDownItems.Add(tslnudMagnifierPixelSize);
|
tsmiOptions.DropDownItems.Add(tslnudMagnifierPixelSize);
|
||||||
|
@ -884,11 +882,11 @@ private void form_MouseWheel(object sender, MouseEventArgs e)
|
||||||
{
|
{
|
||||||
if (e.Delta > 0)
|
if (e.Delta > 0)
|
||||||
{
|
{
|
||||||
if (Config.MagnifierPixelCount < 41) Config.MagnifierPixelCount += 2;
|
Config.MagnifierPixelCount = Math.Min(Config.MagnifierPixelCount + 2, RegionCaptureOptions.MagnifierPixelCountMaximum);
|
||||||
}
|
}
|
||||||
else if (e.Delta < 0)
|
else if (e.Delta < 0)
|
||||||
{
|
{
|
||||||
if (Config.MagnifierPixelCount > 2) Config.MagnifierPixelCount -= 2;
|
Config.MagnifierPixelCount = Math.Max(Config.MagnifierPixelCount - 2, RegionCaptureOptions.MagnifierPixelCountMinimum);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (form.Mode == RectangleRegionMode.Annotation)
|
else if (form.Mode == RectangleRegionMode.Annotation)
|
||||||
|
@ -1298,7 +1296,7 @@ private Point SnapPosition(Point posOnClick, Point posCurrent)
|
||||||
|
|
||||||
SnapSize snapSize = (from size in Config.SnapSizes
|
SnapSize snapSize = (from size in Config.SnapSizes
|
||||||
let distance = MathHelpers.Distance(vector, new Vector2(size.Width, size.Height))
|
let distance = MathHelpers.Distance(vector, new Vector2(size.Width, size.Height))
|
||||||
where distance > 0 && distance < SnapDistance
|
where distance > 0 && distance < RegionCaptureOptions.SnapDistance
|
||||||
orderby distance
|
orderby distance
|
||||||
select size).FirstOrDefault();
|
select size).FirstOrDefault();
|
||||||
|
|
||||||
|
|
30
ShareX/Forms/TaskSettingsForm.Designer.cs
generated
30
ShareX/Forms/TaskSettingsForm.Designer.cs
generated
|
@ -1146,22 +1146,7 @@ private void InitializeComponent()
|
||||||
// nudRegionCaptureMagnifierPixelSize
|
// nudRegionCaptureMagnifierPixelSize
|
||||||
//
|
//
|
||||||
resources.ApplyResources(this.nudRegionCaptureMagnifierPixelSize, "nudRegionCaptureMagnifierPixelSize");
|
resources.ApplyResources(this.nudRegionCaptureMagnifierPixelSize, "nudRegionCaptureMagnifierPixelSize");
|
||||||
this.nudRegionCaptureMagnifierPixelSize.Maximum = new decimal(new int[] {
|
|
||||||
30,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0});
|
|
||||||
this.nudRegionCaptureMagnifierPixelSize.Minimum = new decimal(new int[] {
|
|
||||||
2,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0});
|
|
||||||
this.nudRegionCaptureMagnifierPixelSize.Name = "nudRegionCaptureMagnifierPixelSize";
|
this.nudRegionCaptureMagnifierPixelSize.Name = "nudRegionCaptureMagnifierPixelSize";
|
||||||
this.nudRegionCaptureMagnifierPixelSize.Value = new decimal(new int[] {
|
|
||||||
2,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0});
|
|
||||||
this.nudRegionCaptureMagnifierPixelSize.ValueChanged += new System.EventHandler(this.nudRegionCaptureMagnifierPixelSize_ValueChanged);
|
this.nudRegionCaptureMagnifierPixelSize.ValueChanged += new System.EventHandler(this.nudRegionCaptureMagnifierPixelSize_ValueChanged);
|
||||||
//
|
//
|
||||||
// lblRegionCaptureMagnifierPixelSize
|
// lblRegionCaptureMagnifierPixelSize
|
||||||
|
@ -1177,22 +1162,7 @@ private void InitializeComponent()
|
||||||
0,
|
0,
|
||||||
0});
|
0});
|
||||||
resources.ApplyResources(this.nudRegionCaptureMagnifierPixelCount, "nudRegionCaptureMagnifierPixelCount");
|
resources.ApplyResources(this.nudRegionCaptureMagnifierPixelCount, "nudRegionCaptureMagnifierPixelCount");
|
||||||
this.nudRegionCaptureMagnifierPixelCount.Maximum = new decimal(new int[] {
|
|
||||||
35,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0});
|
|
||||||
this.nudRegionCaptureMagnifierPixelCount.Minimum = new decimal(new int[] {
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0});
|
|
||||||
this.nudRegionCaptureMagnifierPixelCount.Name = "nudRegionCaptureMagnifierPixelCount";
|
this.nudRegionCaptureMagnifierPixelCount.Name = "nudRegionCaptureMagnifierPixelCount";
|
||||||
this.nudRegionCaptureMagnifierPixelCount.Value = new decimal(new int[] {
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0});
|
|
||||||
this.nudRegionCaptureMagnifierPixelCount.ValueChanged += new System.EventHandler(this.nudRegionCaptureMagnifierPixelCount_ValueChanged);
|
this.nudRegionCaptureMagnifierPixelCount.ValueChanged += new System.EventHandler(this.nudRegionCaptureMagnifierPixelCount_ValueChanged);
|
||||||
//
|
//
|
||||||
// lblRegionCaptureMagnifierPixelCount
|
// lblRegionCaptureMagnifierPixelCount
|
||||||
|
|
|
@ -257,7 +257,11 @@ public TaskSettingsForm(TaskSettings hotkeySetting, bool isDefault = false)
|
||||||
cbRegionCaptureShowMagnifier.Checked = TaskSettings.CaptureSettings.SurfaceOptions.ShowMagnifier;
|
cbRegionCaptureShowMagnifier.Checked = TaskSettings.CaptureSettings.SurfaceOptions.ShowMagnifier;
|
||||||
cbRegionCaptureUseSquareMagnifier.Enabled = nudRegionCaptureMagnifierPixelCount.Enabled = nudRegionCaptureMagnifierPixelSize.Enabled = TaskSettings.CaptureSettings.SurfaceOptions.ShowMagnifier;
|
cbRegionCaptureUseSquareMagnifier.Enabled = nudRegionCaptureMagnifierPixelCount.Enabled = nudRegionCaptureMagnifierPixelSize.Enabled = TaskSettings.CaptureSettings.SurfaceOptions.ShowMagnifier;
|
||||||
cbRegionCaptureUseSquareMagnifier.Checked = TaskSettings.CaptureSettings.SurfaceOptions.UseSquareMagnifier;
|
cbRegionCaptureUseSquareMagnifier.Checked = TaskSettings.CaptureSettings.SurfaceOptions.UseSquareMagnifier;
|
||||||
|
nudRegionCaptureMagnifierPixelCount.Minimum = RegionCaptureOptions.MagnifierPixelCountMinimum;
|
||||||
|
nudRegionCaptureMagnifierPixelCount.Maximum = RegionCaptureOptions.MagnifierPixelCountMaximum;
|
||||||
nudRegionCaptureMagnifierPixelCount.SetValue(TaskSettings.CaptureSettings.SurfaceOptions.MagnifierPixelCount);
|
nudRegionCaptureMagnifierPixelCount.SetValue(TaskSettings.CaptureSettings.SurfaceOptions.MagnifierPixelCount);
|
||||||
|
nudRegionCaptureMagnifierPixelSize.Minimum = RegionCaptureOptions.MagnifierPixelSizeMinimum;
|
||||||
|
nudRegionCaptureMagnifierPixelSize.Maximum = RegionCaptureOptions.MagnifierPixelSizeMaximum;
|
||||||
nudRegionCaptureMagnifierPixelSize.SetValue(TaskSettings.CaptureSettings.SurfaceOptions.MagnifierPixelSize);
|
nudRegionCaptureMagnifierPixelSize.SetValue(TaskSettings.CaptureSettings.SurfaceOptions.MagnifierPixelSize);
|
||||||
cbRegionCaptureShowCrosshair.Checked = TaskSettings.CaptureSettings.SurfaceOptions.ShowCrosshair;
|
cbRegionCaptureShowCrosshair.Checked = TaskSettings.CaptureSettings.SurfaceOptions.ShowCrosshair;
|
||||||
cbRegionCaptureIsFixedSize.Checked = TaskSettings.CaptureSettings.SurfaceOptions.IsFixedSize;
|
cbRegionCaptureIsFixedSize.Checked = TaskSettings.CaptureSettings.SurfaceOptions.IsFixedSize;
|
||||||
|
@ -977,12 +981,18 @@ private void cbRegionCaptureUseSquareMagnifier_CheckedChanged(object sender, Eve
|
||||||
|
|
||||||
private void nudRegionCaptureMagnifierPixelCount_ValueChanged(object sender, EventArgs e)
|
private void nudRegionCaptureMagnifierPixelCount_ValueChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
TaskSettings.CaptureSettings.SurfaceOptions.MagnifierPixelCount = (int)nudRegionCaptureMagnifierPixelCount.Value;
|
if (loaded)
|
||||||
|
{
|
||||||
|
TaskSettings.CaptureSettings.SurfaceOptions.MagnifierPixelCount = (int)nudRegionCaptureMagnifierPixelCount.Value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void nudRegionCaptureMagnifierPixelSize_ValueChanged(object sender, EventArgs e)
|
private void nudRegionCaptureMagnifierPixelSize_ValueChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
TaskSettings.CaptureSettings.SurfaceOptions.MagnifierPixelSize = (int)nudRegionCaptureMagnifierPixelSize.Value;
|
if (loaded)
|
||||||
|
{
|
||||||
|
TaskSettings.CaptureSettings.SurfaceOptions.MagnifierPixelSize = (int)nudRegionCaptureMagnifierPixelSize.Value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void cbRegionCaptureShowCrosshair_CheckedChanged(object sender, EventArgs e)
|
private void cbRegionCaptureShowCrosshair_CheckedChanged(object sender, EventArgs e)
|
||||||
|
|
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue