Added constant settings to RegionCaptureOptions

This commit is contained in:
Jaex 2016-07-27 04:56:20 +03:00
parent a1346db119
commit 35e0a826b6
7 changed files with 2129 additions and 2368 deletions

View file

@ -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);
} }
} }

View file

@ -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;

View file

@ -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;

View file

@ -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();

View file

@ -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

View file

@ -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