Added format type to save options
Changed crosshair size to be used instead of show Added readonly config file support
This commit is contained in:
parent
a382ab8dad
commit
5fa20668db
@ -4,6 +4,11 @@
|
|||||||
{
|
{
|
||||||
public int Version { get; set; } = 1;
|
public int Version { get; set; } = 1;
|
||||||
|
|
||||||
|
public string Format { get; set; } = "suzumagnifier";
|
||||||
|
|
||||||
|
public bool ReadOnly { get; set; } = false;
|
||||||
|
|
||||||
|
|
||||||
public bool AutoStart { get; set; }
|
public bool AutoStart { get; set; }
|
||||||
|
|
||||||
public bool HighQuality { get; set; }
|
public bool HighQuality { get; set; }
|
||||||
@ -16,10 +21,9 @@
|
|||||||
|
|
||||||
public int CrosshairSize { get; set; }
|
public int CrosshairSize { get; set; }
|
||||||
|
|
||||||
public Color CrosshairColour { get; set; }
|
public string? CrosshairColour { get; set; }
|
||||||
|
|
||||||
public bool ShowAlwaysOnTop { get; set; }
|
public bool ShowAlwaysOnTop { get; set; }
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
40
source/Form1.Designer.cs
generated
40
source/Form1.Designer.cs
generated
@ -44,8 +44,6 @@
|
|||||||
toolStripSeparator3 = new ToolStripSeparator();
|
toolStripSeparator3 = new ToolStripSeparator();
|
||||||
resetToolStripMenuItem = new ToolStripMenuItem();
|
resetToolStripMenuItem = new ToolStripMenuItem();
|
||||||
toolStripMenuItem9 = new ToolStripMenuItem();
|
toolStripMenuItem9 = new ToolStripMenuItem();
|
||||||
showToolStripMenuItem = new ToolStripMenuItem();
|
|
||||||
toolStripSeparator5 = new ToolStripSeparator();
|
|
||||||
sizeToolStripMenuItem = new ToolStripMenuItem();
|
sizeToolStripMenuItem = new ToolStripMenuItem();
|
||||||
smallToolStripMenuItem = new ToolStripMenuItem();
|
smallToolStripMenuItem = new ToolStripMenuItem();
|
||||||
mediumToolStripMenuItem = new ToolStripMenuItem();
|
mediumToolStripMenuItem = new ToolStripMenuItem();
|
||||||
@ -67,6 +65,8 @@
|
|||||||
aboutToolStripMenuItem = new ToolStripMenuItem();
|
aboutToolStripMenuItem = new ToolStripMenuItem();
|
||||||
toolStripSeparator6 = new ToolStripSeparator();
|
toolStripSeparator6 = new ToolStripSeparator();
|
||||||
exitiToolStripMenuItem = new ToolStripMenuItem();
|
exitiToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
toolStripMenuItem11 = new ToolStripMenuItem();
|
||||||
|
toolStripSeparator7 = new ToolStripSeparator();
|
||||||
contextMenuStrip1.SuspendLayout();
|
contextMenuStrip1.SuspendLayout();
|
||||||
SuspendLayout();
|
SuspendLayout();
|
||||||
//
|
//
|
||||||
@ -115,14 +115,14 @@
|
|||||||
// fasterToolStripMenuItem
|
// fasterToolStripMenuItem
|
||||||
//
|
//
|
||||||
fasterToolStripMenuItem.Name = "fasterToolStripMenuItem";
|
fasterToolStripMenuItem.Name = "fasterToolStripMenuItem";
|
||||||
fasterToolStripMenuItem.Size = new Size(180, 22);
|
fasterToolStripMenuItem.Size = new Size(100, 22);
|
||||||
fasterToolStripMenuItem.Text = "&Fast";
|
fasterToolStripMenuItem.Text = "&Fast";
|
||||||
fasterToolStripMenuItem.Click += fastToolStripMenuItem_Click;
|
fasterToolStripMenuItem.Click += fastToolStripMenuItem_Click;
|
||||||
//
|
//
|
||||||
// highToolStripMenuItem
|
// highToolStripMenuItem
|
||||||
//
|
//
|
||||||
highToolStripMenuItem.Name = "highToolStripMenuItem";
|
highToolStripMenuItem.Name = "highToolStripMenuItem";
|
||||||
highToolStripMenuItem.Size = new Size(180, 22);
|
highToolStripMenuItem.Size = new Size(100, 22);
|
||||||
highToolStripMenuItem.Text = "&High";
|
highToolStripMenuItem.Text = "&High";
|
||||||
highToolStripMenuItem.Click += highToolStripMenuItem_Click;
|
highToolStripMenuItem.Click += highToolStripMenuItem_Click;
|
||||||
//
|
//
|
||||||
@ -165,27 +165,15 @@
|
|||||||
//
|
//
|
||||||
// toolStripMenuItem9
|
// toolStripMenuItem9
|
||||||
//
|
//
|
||||||
toolStripMenuItem9.DropDownItems.AddRange(new ToolStripItem[] { showToolStripMenuItem, toolStripSeparator5, sizeToolStripMenuItem, colourToolStripMenuItem });
|
toolStripMenuItem9.DropDownItems.AddRange(new ToolStripItem[] { sizeToolStripMenuItem, colourToolStripMenuItem });
|
||||||
toolStripMenuItem9.Image = Resource1.crosshair;
|
toolStripMenuItem9.Image = Resource1.crosshair;
|
||||||
toolStripMenuItem9.Name = "toolStripMenuItem9";
|
toolStripMenuItem9.Name = "toolStripMenuItem9";
|
||||||
toolStripMenuItem9.Size = new Size(204, 22);
|
toolStripMenuItem9.Size = new Size(204, 22);
|
||||||
toolStripMenuItem9.Text = "Crosshair";
|
toolStripMenuItem9.Text = "Crosshair";
|
||||||
//
|
//
|
||||||
// showToolStripMenuItem
|
|
||||||
//
|
|
||||||
showToolStripMenuItem.Name = "showToolStripMenuItem";
|
|
||||||
showToolStripMenuItem.Size = new Size(180, 22);
|
|
||||||
showToolStripMenuItem.Text = "Show";
|
|
||||||
showToolStripMenuItem.Click += showToolStripMenuItem_Click;
|
|
||||||
//
|
|
||||||
// toolStripSeparator5
|
|
||||||
//
|
|
||||||
toolStripSeparator5.Name = "toolStripSeparator5";
|
|
||||||
toolStripSeparator5.Size = new Size(177, 6);
|
|
||||||
//
|
|
||||||
// sizeToolStripMenuItem
|
// sizeToolStripMenuItem
|
||||||
//
|
//
|
||||||
sizeToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { smallToolStripMenuItem, mediumToolStripMenuItem, largeToolStripMenuItem });
|
sizeToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { toolStripMenuItem11, toolStripSeparator7, smallToolStripMenuItem, mediumToolStripMenuItem, largeToolStripMenuItem });
|
||||||
sizeToolStripMenuItem.Name = "sizeToolStripMenuItem";
|
sizeToolStripMenuItem.Name = "sizeToolStripMenuItem";
|
||||||
sizeToolStripMenuItem.Size = new Size(180, 22);
|
sizeToolStripMenuItem.Size = new Size(180, 22);
|
||||||
sizeToolStripMenuItem.Text = "Size";
|
sizeToolStripMenuItem.Text = "Size";
|
||||||
@ -329,6 +317,18 @@
|
|||||||
exitiToolStripMenuItem.Text = "E&xit";
|
exitiToolStripMenuItem.Text = "E&xit";
|
||||||
exitiToolStripMenuItem.Click += exitiToolStripMenuItem_Click;
|
exitiToolStripMenuItem.Click += exitiToolStripMenuItem_Click;
|
||||||
//
|
//
|
||||||
|
// toolStripMenuItem11
|
||||||
|
//
|
||||||
|
toolStripMenuItem11.Name = "toolStripMenuItem11";
|
||||||
|
toolStripMenuItem11.Size = new Size(180, 22);
|
||||||
|
toolStripMenuItem11.Text = "None";
|
||||||
|
toolStripMenuItem11.Click += toolStripMenuItem11_Click;
|
||||||
|
//
|
||||||
|
// toolStripSeparator7
|
||||||
|
//
|
||||||
|
toolStripSeparator7.Name = "toolStripSeparator7";
|
||||||
|
toolStripSeparator7.Size = new Size(177, 6);
|
||||||
|
//
|
||||||
// Form1
|
// Form1
|
||||||
//
|
//
|
||||||
AutoScaleDimensions = new SizeF(96F, 96F);
|
AutoScaleDimensions = new SizeF(96F, 96F);
|
||||||
@ -364,10 +364,8 @@
|
|||||||
private ToolStripMenuItem resetToolStripMenuItem;
|
private ToolStripMenuItem resetToolStripMenuItem;
|
||||||
private ToolStripSeparator toolStripSeparator4;
|
private ToolStripSeparator toolStripSeparator4;
|
||||||
private ToolStripMenuItem toolStripMenuItem9;
|
private ToolStripMenuItem toolStripMenuItem9;
|
||||||
private ToolStripMenuItem showToolStripMenuItem;
|
|
||||||
private ToolStripMenuItem sizeToolStripMenuItem;
|
private ToolStripMenuItem sizeToolStripMenuItem;
|
||||||
private ToolStripMenuItem colourToolStripMenuItem;
|
private ToolStripMenuItem colourToolStripMenuItem;
|
||||||
private ToolStripSeparator toolStripSeparator5;
|
|
||||||
private ToolStripMenuItem smallToolStripMenuItem;
|
private ToolStripMenuItem smallToolStripMenuItem;
|
||||||
private ToolStripMenuItem mediumToolStripMenuItem;
|
private ToolStripMenuItem mediumToolStripMenuItem;
|
||||||
private ToolStripMenuItem largeToolStripMenuItem;
|
private ToolStripMenuItem largeToolStripMenuItem;
|
||||||
@ -382,5 +380,7 @@
|
|||||||
private ToolStripMenuItem viewHelpToolStripMenuItem;
|
private ToolStripMenuItem viewHelpToolStripMenuItem;
|
||||||
private ToolStripMenuItem aboutToolStripMenuItem;
|
private ToolStripMenuItem aboutToolStripMenuItem;
|
||||||
private ToolStripSeparator toolStripSeparator6;
|
private ToolStripSeparator toolStripSeparator6;
|
||||||
|
private ToolStripMenuItem toolStripMenuItem11;
|
||||||
|
private ToolStripSeparator toolStripSeparator7;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
149
source/Form1.cs
149
source/Form1.cs
@ -28,7 +28,7 @@ namespace SuzuMagnifier
|
|||||||
|
|
||||||
private readonly System.Windows.Forms.Timer _timer = new();
|
private readonly System.Windows.Forms.Timer _timer = new();
|
||||||
private Bitmap? _bitmap;
|
private Bitmap? _bitmap;
|
||||||
private string jsonfigFilename;
|
private string _jsonfigFilename;
|
||||||
|
|
||||||
|
|
||||||
public Form1()
|
public Form1()
|
||||||
@ -53,27 +53,31 @@ namespace SuzuMagnifier
|
|||||||
|
|
||||||
var args = GetCommandLine()!;
|
var args = GetCommandLine()!;
|
||||||
|
|
||||||
jsonfigFilename = args.Where(x => (x.Key.Equals("o") || x.Key.Equals("open"))).Select(x => x.Value).FirstOrDefault();
|
_jsonfigFilename = args.Where(x => (x.Key.Equals("o") || x.Key.Equals("open"))).Select(x => x.Value).FirstOrDefault();
|
||||||
if (string.IsNullOrWhiteSpace(jsonfigFilename))
|
if (string.IsNullOrWhiteSpace(_jsonfigFilename))
|
||||||
{
|
{
|
||||||
jsonfigFilename = Path.ChangeExtension(Application.ExecutablePath, "jsonfig");
|
_jsonfigFilename = Path.ChangeExtension(Application.ExecutablePath, "jsonfig");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (System.IO.File.Exists(jsonfigFilename))
|
if (System.IO.File.Exists(_jsonfigFilename))
|
||||||
{
|
{
|
||||||
var newSettings = await LoadSettings(jsonfigFilename);
|
this.SavedOptions = await LoadSettings(_jsonfigFilename);
|
||||||
if (newSettings == null)
|
|
||||||
|
this.TopMost = this.SavedOptions!.ShowAlwaysOnTop;
|
||||||
|
this.HighQuality = this.SavedOptions.HighQuality;
|
||||||
|
this.ZoomFactor = this.SavedOptions.ZoomFactor;
|
||||||
|
this.UpdateFrequency = this.SavedOptions.UpdateFrequency;
|
||||||
|
this.CrosshairSize = this.SavedOptions.CrosshairSize;
|
||||||
|
|
||||||
|
if (!string.IsNullOrWhiteSpace(this.SavedOptions.CrosshairColour))
|
||||||
{
|
{
|
||||||
newSettings = new SavedOptions();
|
this.CrosshairColour = ColorTranslator.FromHtml(this.SavedOptions!.CrosshairColour);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.TopMost = newSettings.ShowAlwaysOnTop;
|
if (this.SavedOptions!.AutoStart)
|
||||||
this.HighQuality = newSettings.HighQuality;
|
{
|
||||||
this.ZoomFactor = newSettings.ZoomFactor;
|
_timer.Start();
|
||||||
//this.UpdateFrequency = newSettings.UpdateFrequency;
|
}
|
||||||
this.ShowCrosshair = newSettings.ShowCrosshair;
|
|
||||||
this.CrosshairSize = newSettings.CrosshairSize;
|
|
||||||
this.CrosshairColour = newSettings.CrosshairColour;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,7 +120,7 @@ namespace SuzuMagnifier
|
|||||||
g.DrawImage(_bitmap, this.ClientRectangle);
|
g.DrawImage(_bitmap, this.ClientRectangle);
|
||||||
|
|
||||||
// Draw center crosshair
|
// Draw center crosshair
|
||||||
if (this.ShowCrosshair)
|
if (this.CrosshairSize > 0)
|
||||||
{
|
{
|
||||||
var cx = Divide(this.Width, 2);
|
var cx = Divide(this.Width, 2);
|
||||||
var cy = Divide(this.Height, 2);
|
var cy = Divide(this.Height, 2);
|
||||||
@ -181,10 +185,15 @@ namespace SuzuMagnifier
|
|||||||
{
|
{
|
||||||
base.OnFormClosing(e);
|
base.OnFormClosing(e);
|
||||||
|
|
||||||
|
if (this.SavedOptions.ReadOnly)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
var result = MessageBox.Show("Do you want to save settings to file?", "Save Settings?", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
|
var result = MessageBox.Show("Do you want to save settings to file?", "Save Settings?", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
|
||||||
if (result == DialogResult.Yes)
|
if (result == DialogResult.Yes)
|
||||||
{
|
{
|
||||||
var result2 = await SaveSettings(jsonfigFilename);
|
var result2 = await SaveSettings(_jsonfigFilename);
|
||||||
if (result2)
|
if (result2)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
@ -205,58 +214,20 @@ namespace SuzuMagnifier
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
||||||
|
public SavedOptions SavedOptions { get => field ?? new SavedOptions(); private set => field = value; }
|
||||||
|
|
||||||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
||||||
public bool HighQuality { get; set; } = false;
|
public bool HighQuality { get; set; } = false;
|
||||||
|
|
||||||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
||||||
public int ZoomFactor
|
public int ZoomFactor { get => field; set => field = Math.Clamp(value, 1, 20); } = 2;
|
||||||
{
|
|
||||||
get => field;
|
|
||||||
set
|
|
||||||
{
|
|
||||||
if (value < 0)
|
|
||||||
{
|
|
||||||
field = 1;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (value > 20)
|
|
||||||
{
|
|
||||||
field = 20;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
field = value;
|
|
||||||
}
|
|
||||||
} = 2;
|
|
||||||
|
|
||||||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
||||||
public int UpdateFrequency { get; set; } = 33;
|
public int UpdateFrequency { get; set; } = 33;
|
||||||
|
|
||||||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
||||||
public bool ShowCrosshair { get; set; } = true;
|
public int CrosshairSize { get => field; set => field = Math.Clamp(value, 0, 200); } = 20;
|
||||||
|
|
||||||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
|
||||||
public int CrosshairSize
|
|
||||||
{
|
|
||||||
get => field;
|
|
||||||
set
|
|
||||||
{
|
|
||||||
if (value < 5)
|
|
||||||
{
|
|
||||||
field = 5;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (value > 200)
|
|
||||||
{
|
|
||||||
field = 200;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
field = value;
|
|
||||||
}
|
|
||||||
} = 20;
|
|
||||||
|
|
||||||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
|
||||||
public Color CrosshairColour { get; set; } = Color.FromArgb(255, 255, 0);
|
public Color CrosshairColour { get; set; } = Color.FromArgb(255, 255, 0);
|
||||||
@ -269,18 +240,20 @@ namespace SuzuMagnifier
|
|||||||
|
|
||||||
toolStripMenuItem5.Checked = this.TopMost;
|
toolStripMenuItem5.Checked = this.TopMost;
|
||||||
|
|
||||||
showToolStripMenuItem.Checked = this.ShowCrosshair;
|
toolStripMenuItem11.Checked = (this.CrosshairSize == 0);
|
||||||
smallToolStripMenuItem.Checked = (this.CrosshairSize == 10);
|
smallToolStripMenuItem.Checked = (this.CrosshairSize == 10);
|
||||||
mediumToolStripMenuItem.Checked = (this.CrosshairSize == 20);
|
mediumToolStripMenuItem.Checked = (this.CrosshairSize == 20);
|
||||||
largeToolStripMenuItem.Checked = (this.CrosshairSize == 50);
|
largeToolStripMenuItem.Checked = (this.CrosshairSize == 50);
|
||||||
|
|
||||||
agentaToolStripMenuItem.Checked = this.CrosshairColour == Color.FromArgb(255, 0, 255);
|
resetToolStripMenuItem.Checked = (this.ZoomFactor == 1);
|
||||||
cyanToolStripMenuItem.Checked = this.CrosshairColour == Color.FromArgb(0, 255, 255);
|
|
||||||
yellowToolStripMenuItem.Checked = this.CrosshairColour == Color.FromArgb(255, 255, 0);
|
agentaToolStripMenuItem.Checked = (this.CrosshairColour == Color.FromArgb(255, 0, 255));
|
||||||
greenToolStripMenuItem.Checked = this.CrosshairColour == Color.FromArgb(0, 255, 0);
|
cyanToolStripMenuItem.Checked = (this.CrosshairColour == Color.FromArgb(0, 255, 255));
|
||||||
redToolStripMenuItem.Checked = this.CrosshairColour == Color.FromArgb(255, 0, 0);
|
yellowToolStripMenuItem.Checked = (this.CrosshairColour == Color.FromArgb(255, 255, 0));
|
||||||
blackToolStripMenuItem.Checked = this.CrosshairColour == Color.FromArgb(0, 0, 0);
|
greenToolStripMenuItem.Checked = (this.CrosshairColour == Color.FromArgb(0, 255, 0));
|
||||||
whiteToolStripMenuItem.Checked = this.CrosshairColour == Color.FromArgb(255, 255, 255);
|
redToolStripMenuItem.Checked = (this.CrosshairColour == Color.FromArgb(255, 0, 0));
|
||||||
|
blackToolStripMenuItem.Checked = (this.CrosshairColour == Color.FromArgb(0, 0, 0));
|
||||||
|
whiteToolStripMenuItem.Checked = (this.CrosshairColour == Color.FromArgb(255, 255, 255));
|
||||||
|
|
||||||
fasterToolStripMenuItem.Checked = !this.HighQuality;
|
fasterToolStripMenuItem.Checked = !this.HighQuality;
|
||||||
fasterToolStripMenuItem.Enabled = this.HighQuality;
|
fasterToolStripMenuItem.Enabled = this.HighQuality;
|
||||||
@ -525,17 +498,17 @@ namespace SuzuMagnifier
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Crosshair, toggle
|
/// Crosshair, size, off
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="sender"></param>
|
/// <param name="sender"></param>
|
||||||
/// <param name="e"></param>
|
/// <param name="e"></param>
|
||||||
private void showToolStripMenuItem_Click(object sender, EventArgs e)
|
private void toolStripMenuItem11_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
this.ShowCrosshair = !this.ShowCrosshair;
|
this.CrosshairSize = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Croisshair, size, small
|
/// Crosshair, size, small
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="sender"></param>
|
/// <param name="sender"></param>
|
||||||
/// <param name="e"></param>
|
/// <param name="e"></param>
|
||||||
@ -545,7 +518,7 @@ namespace SuzuMagnifier
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Croisshair, size, medium
|
/// Crosshair, size, medium
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="sender"></param>
|
/// <param name="sender"></param>
|
||||||
/// <param name="e"></param>
|
/// <param name="e"></param>
|
||||||
@ -555,7 +528,7 @@ namespace SuzuMagnifier
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Croisshair, size, large
|
/// Crosshair, size, large
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="sender"></param>
|
/// <param name="sender"></param>
|
||||||
/// <param name="e"></param>
|
/// <param name="e"></param>
|
||||||
@ -662,32 +635,38 @@ namespace SuzuMagnifier
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SavedOptions response;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
return System.Text.Json.JsonSerializer.Deserialize<SavedOptions>(sourceCode);
|
response = System.Text.Json.JsonSerializer.Deserialize<SavedOptions>(sourceCode);
|
||||||
}
|
}
|
||||||
catch (Exception)
|
catch (Exception)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!response!.Format.Equals(Resource1.FileFormat, StringComparison.CurrentCultureIgnoreCase))
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task<bool> SaveSettings(string filename)
|
private async Task<bool> SaveSettings(string filename)
|
||||||
{
|
{
|
||||||
var result = new SavedOptions();
|
//_savedOptions.AutoStart = false;
|
||||||
result.AutoStart = false;
|
this.SavedOptions.HighQuality = this.HighQuality;
|
||||||
result.HighQuality = this.HighQuality;
|
this.SavedOptions.ZoomFactor = this.ZoomFactor;
|
||||||
result.ZoomFactor = this.ZoomFactor;
|
this.SavedOptions.UpdateFrequency = this.UpdateFrequency;
|
||||||
result.UpdateFrequency = this.UpdateFrequency;
|
this.SavedOptions.CrosshairSize = this.CrosshairSize;
|
||||||
result.ShowCrosshair = this.ShowCrosshair;
|
this.SavedOptions.CrosshairColour = $"#{this.CrosshairColour.R:X2}{this.CrosshairColour.G:X2}{this.CrosshairColour.B:X2}";
|
||||||
result.CrosshairSize = this.CrosshairSize;
|
this.SavedOptions.ShowAlwaysOnTop = this.TopMost;
|
||||||
result.CrosshairColour = this.CrosshairColour;
|
|
||||||
result.ShowAlwaysOnTop = this.TopMost;
|
|
||||||
|
|
||||||
string sourceCode = "";
|
string sourceCode = "";
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
sourceCode = System.Text.Json.JsonSerializer.Serialize(result);
|
sourceCode = System.Text.Json.JsonSerializer.Serialize(this.SavedOptions);
|
||||||
}
|
}
|
||||||
catch (Exception)
|
catch (Exception)
|
||||||
{
|
{
|
||||||
|
|||||||
9
source/Resource1.Designer.cs
generated
9
source/Resource1.Designer.cs
generated
@ -79,6 +79,15 @@ namespace SuzuMagnifier {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized string similar to suzumagnifier.
|
||||||
|
/// </summary>
|
||||||
|
internal static string FileFormat {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("FileFormat", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@ -124,6 +124,9 @@
|
|||||||
<data name="crosshair" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="crosshair" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>Resources\crosshair.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>Resources\crosshair.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="FileFormat" xml:space="preserve">
|
||||||
|
<value>suzumagnifier</value>
|
||||||
|
</data>
|
||||||
<data name="fullscreen" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="fullscreen" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>Resources\fullscreen.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>Resources\fullscreen.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
<UseWindowsForms>true</UseWindowsForms>
|
<UseWindowsForms>true</UseWindowsForms>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
<Title>Suzu Magnifier</Title>
|
<Title>Suzu Magnifier</Title>
|
||||||
<Version>0.1.0.148</Version>
|
<Version>0.1.0.202</Version>
|
||||||
<Product>Suzu Magnifier</Product>
|
<Product>Suzu Magnifier</Product>
|
||||||
<Company>Hi, I'm Ray</Company>
|
<Company>Hi, I'm Ray</Company>
|
||||||
<Authors>Ray Lam</Authors>
|
<Authors>Ray Lam</Authors>
|
||||||
@ -15,11 +15,11 @@
|
|||||||
<NoWin32Manifest>true</NoWin32Manifest>
|
<NoWin32Manifest>true</NoWin32Manifest>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>full</DebugType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>full</DebugType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user