mirror of
https://github.com/Ylianst/MeshCentralRouter
synced 2025-12-06 00:13:33 +00:00
Save window location.
This commit is contained in:
26
MainForm.cs
26
MainForm.cs
@@ -27,6 +27,7 @@ using System.Runtime.InteropServices;
|
|||||||
using System.Web.Script.Serialization;
|
using System.Web.Script.Serialization;
|
||||||
using System.Security.Cryptography.X509Certificates;
|
using System.Security.Cryptography.X509Certificates;
|
||||||
using Microsoft.Win32;
|
using Microsoft.Win32;
|
||||||
|
using System.Drawing;
|
||||||
|
|
||||||
namespace MeshCentralRouter
|
namespace MeshCentralRouter
|
||||||
{
|
{
|
||||||
@@ -276,6 +277,30 @@ namespace MeshCentralRouter
|
|||||||
sortByNameToolStripMenuItem.Visible = false;
|
sortByNameToolStripMenuItem.Visible = false;
|
||||||
sortByGroupToolStripMenuItem.Visible = false;
|
sortByGroupToolStripMenuItem.Visible = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Restore Window Location
|
||||||
|
string locationStr = getRegValue("location", "");
|
||||||
|
if (locationStr != null)
|
||||||
|
{
|
||||||
|
string[] locationSplit = locationStr.Split(',');
|
||||||
|
if (locationSplit.Length == 2)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var x = int.Parse(locationSplit[0]);
|
||||||
|
var y = int.Parse(locationSplit[1]);
|
||||||
|
Point p = new Point(x, y);
|
||||||
|
if (isPointVisibleOnAScreen(p)) { Location = p; }
|
||||||
|
}
|
||||||
|
catch (Exception) { }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool isPointVisibleOnAScreen(Point p)
|
||||||
|
{
|
||||||
|
foreach (Screen s in Screen.AllScreens) { if ((p.X < s.Bounds.Right) && (p.X > s.Bounds.Left) && (p.Y > s.Bounds.Top) && (p.Y < s.Bounds.Bottom)) return true; }
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updatePanel1(object sender, EventArgs e)
|
private void updatePanel1(object sender, EventArgs e)
|
||||||
@@ -310,6 +335,7 @@ namespace MeshCentralRouter
|
|||||||
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
|
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
|
||||||
{
|
{
|
||||||
if ((notifyIcon.Visible == true) && (forceExit == false)) { e.Cancel = true; Visible = false; }
|
if ((notifyIcon.Visible == true) && (forceExit == false)) { e.Cancel = true; Visible = false; }
|
||||||
|
setRegValue("Location", Location.X + "," + Location.Y);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void backButton5_Click(object sender, EventArgs e)
|
private void backButton5_Click(object sender, EventArgs e)
|
||||||
|
|||||||
Reference in New Issue
Block a user