SCCManager/Remontor/Connector/DobleMonTwo.cs

61 lines
2.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Remontor.Connector
{
internal class DobleMonTwo : IModeMon
{
[DllImport("user32.dll")]
static extern bool MoveWindow(IntPtr Handle, int x, int y, int w, int h, bool repaint);
private int over = 0;
private bool Chanded = true;
public DobleMonTwo() {
}
public override void Set()
{
Chanded = true;
SConnector.FormMain.WindowState = SConnector.WindowState;
SConnector.FormMain.Location = new System.Drawing.Point(SConnector.x, SConnector.y);
SConnector.FormMain.Width = SConnector.Width;
SConnector.FormMain.Height = SConnector.Height;
Chanded = false;
}
public override void Resize(Process Proc, Control View)
{
if (Chanded) return;
if (over == 0)
{
over = 1;
}
else
{
over = 0;
}
Chanded = true;
if (SConnector.FormMain.WindowState == FormWindowState.Normal)
{
SConnector.Width = SConnector.FormMain.Width;
SConnector.Height = SConnector.FormMain.Height;
SConnector.x = SConnector.FormMain.Location.X;
SConnector.y = SConnector.FormMain.Location.Y;
}
SConnector.WindowState = SConnector.FormMain.WindowState;
Chanded = false;
MoveWindow(Proc.MainWindowHandle, View.Bounds.X - View.Bounds.Width, View.Bounds.Y + 9, View.Bounds.Width * 2, View.Bounds.Height - 9 + over, true);
}
public override IModeMon Change(IModeMon Mode)
{
if (Mode == this) return this;
return Mode;
}
}
}