diff --git a/Eve-O-Preview/Configuration/Implementation/ThumbnailConfiguration.cs b/Eve-O-Preview/Configuration/Implementation/ThumbnailConfiguration.cs index 1053eb0..89ca011 100644 --- a/Eve-O-Preview/Configuration/Implementation/ThumbnailConfiguration.cs +++ b/Eve-O-Preview/Configuration/Implementation/ThumbnailConfiguration.cs @@ -16,6 +16,7 @@ namespace EveOPreview.Configuration.Omplementation this.EnableClientLayoutTracking = false; this.HideActiveClientThumbnail = false; + this.MinimizeInactiveClients = false; this.ShowThumbnailsAlwaysOnTop = true; this.HideThumbnailsOnLostFocus = false; this.EnablePerClientThumbnailLayouts = false; @@ -50,6 +51,7 @@ namespace EveOPreview.Configuration.Omplementation public bool EnableClientLayoutTracking { get; set; } public bool HideActiveClientThumbnail { get; set; } + public bool MinimizeInactiveClients { get; set; } public bool ShowThumbnailsAlwaysOnTop { get; set; } public bool HideThumbnailsOnLostFocus { get; set; } public bool EnablePerClientThumbnailLayouts { get; set; } diff --git a/Eve-O-Preview/Configuration/Interface/IThumbnailConfiguration.cs b/Eve-O-Preview/Configuration/Interface/IThumbnailConfiguration.cs index f7eac67..6a55156 100644 --- a/Eve-O-Preview/Configuration/Interface/IThumbnailConfiguration.cs +++ b/Eve-O-Preview/Configuration/Interface/IThumbnailConfiguration.cs @@ -12,6 +12,7 @@ namespace EveOPreview.Configuration bool EnableClientLayoutTracking { get; set; } bool HideActiveClientThumbnail { get; set; } + bool MinimizeInactiveClients { get; set; } bool ShowThumbnailsAlwaysOnTop { get; set; } bool HideThumbnailsOnLostFocus { get; set; } bool EnablePerClientThumbnailLayouts { get; set; } diff --git a/Eve-O-Preview/Eve-O-Preview.csproj b/Eve-O-Preview/Eve-O-Preview.csproj index 6387f51..1940818 100644 --- a/Eve-O-Preview/Eve-O-Preview.csproj +++ b/Eve-O-Preview/Eve-O-Preview.csproj @@ -150,6 +150,7 @@ + diff --git a/Eve-O-Preview/Presenters/Implementation/MainFormPresenter.cs b/Eve-O-Preview/Presenters/Implementation/MainFormPresenter.cs index 27e0b78..e948bf8 100644 --- a/Eve-O-Preview/Presenters/Implementation/MainFormPresenter.cs +++ b/Eve-O-Preview/Presenters/Implementation/MainFormPresenter.cs @@ -105,6 +105,7 @@ namespace EveOPreview.Presenters this.View.EnableClientLayoutTracking = this._configuration.EnableClientLayoutTracking; this.View.HideActiveClientThumbnail = this._configuration.HideActiveClientThumbnail; + this.View.MinimizeInactiveClients = this._configuration.MinimizeInactiveClients; this.View.ShowThumbnailsAlwaysOnTop = this._configuration.ShowThumbnailsAlwaysOnTop; this.View.HideThumbnailsOnLostFocus = this._configuration.HideThumbnailsOnLostFocus; this.View.EnablePerClientThumbnailLayouts = this._configuration.EnablePerClientThumbnailLayouts; @@ -130,6 +131,7 @@ namespace EveOPreview.Presenters this._configuration.EnableClientLayoutTracking = this.View.EnableClientLayoutTracking; this._configuration.HideActiveClientThumbnail = this.View.HideActiveClientThumbnail; + this._configuration.MinimizeInactiveClients = this.View.MinimizeInactiveClients; this._configuration.ShowThumbnailsAlwaysOnTop = this.View.ShowThumbnailsAlwaysOnTop; this._configuration.HideThumbnailsOnLostFocus = this.View.HideThumbnailsOnLostFocus; this._configuration.EnablePerClientThumbnailLayouts = this.View.EnablePerClientThumbnailLayouts; @@ -143,8 +145,8 @@ namespace EveOPreview.Presenters this._configuration.ShowThumbnailOverlays = this.View.ShowThumbnailOverlays; if (this._configuration.ShowThumbnailFrames != this.View.ShowThumbnailFrames) { - await this._mediator.Publish(new ThumbnailFrameSettingsUpdated()); this._configuration.ShowThumbnailFrames = this.View.ShowThumbnailFrames; + await this._mediator.Publish(new ThumbnailFrameSettingsUpdated()); } this._configuration.EnableActiveClientHighlight = this.View.EnableActiveClientHighlight; diff --git a/Eve-O-Preview/Services/Implementation/ThumbnailManager.cs b/Eve-O-Preview/Services/Implementation/ThumbnailManager.cs index 775243a..bcec285 100644 --- a/Eve-O-Preview/Services/Implementation/ThumbnailManager.cs +++ b/Eve-O-Preview/Services/Implementation/ThumbnailManager.cs @@ -13,7 +13,7 @@ namespace EveOPreview.Services { #region Private constants private const int WindowPositionThreshold = -5000; - private const int WindowSizeThreshold = -5000; + private const int WindowSizeThreshold = 0; private const string DefaultClientTitle = "EVE"; #endregion @@ -320,15 +320,19 @@ namespace EveOPreview.Services private void ThumbnailActivated(IntPtr id) { - IThumbnailView view; - if (this._thumbnailViews.TryGetValue(id, out view)) + // View is always available because this method is actually being called by + // a view callback + IThumbnailView view = this._thumbnailViews[id]; + + this._windowManager.ActivateWindow(view.Id); + + if (this._configuration.MinimizeInactiveClients && (view.Id != this._activeClientHandle)) { + this._windowManager.MinimizeWindow(this._activeClientHandle, false); this._activeClientHandle = view.Id; this._activeClientTitle = view.Title; } - this._windowManager.ActivateWindow(id); - if (this._configuration.EnableClientLayoutTracking) { this.UpdateClientLayouts(); @@ -346,7 +350,7 @@ namespace EveOPreview.Services return; } - this._windowManager.DeactivateWindow(view.Id); + this._windowManager.MinimizeWindow(view.Id, true); this.RefreshThumbnails(); } @@ -385,7 +389,6 @@ namespace EveOPreview.Services private bool IsNonClientWindowActive(IntPtr windowHandle) { - // We just don't know ATM if (windowHandle == IntPtr.Zero) { return false; @@ -438,11 +441,10 @@ namespace EveOPreview.Services private void UpdateClientLayouts() { - ICollection processes = this._processMonitor.GetAllProcesses(); - - foreach (IProcessInfo process in processes) + foreach (KeyValuePair entry in this._thumbnailViews) { - this._windowManager.GetWindowCoordinates(process.Handle, out int left, out int top, out int right, out int bottom); + IThumbnailView view = entry.Value; + this._windowManager.GetWindowCoordinates(view.Id, out int left, out int top, out int right, out int bottom); int width = Math.Abs(right - left); int height = Math.Abs(bottom - top); @@ -452,19 +454,18 @@ namespace EveOPreview.Services continue; } - this._configuration.SetClientLayout(process.Title, new ClientLayout(left, top, width, height)); + this._configuration.SetClientLayout(view.Title, new ClientLayout(left, top, width, height)); } } - // We should no manage some thumbnails (like thumbnail of the EVE client sitting on the login screen) + // We shouldn't manage some thumbnails (like thumbnail of the EVE client sitting on the login screen) + // TODO Move to a service (?) private bool IsManageableThumbnail(IThumbnailView view) { return view.Title != ThumbnailManager.DefaultClientTitle; } - // Quick sanity check - // EVE Online client can create a window on a really weird position outside of the screen for some reason - // In this case we need to just skip such clients + // Quick sanity check that the window is not minimized private bool IsValidWindowPosition(int letf, int top, int width, int height) { return (letf >= ThumbnailManager.WindowPositionThreshold) diff --git a/Eve-O-Preview/Services/Implementation/WindowManager.cs b/Eve-O-Preview/Services/Implementation/WindowManager.cs index 927fa74..d5d738e 100644 --- a/Eve-O-Preview/Services/Implementation/WindowManager.cs +++ b/Eve-O-Preview/Services/Implementation/WindowManager.cs @@ -1,4 +1,5 @@ using System; +using System.Runtime.InteropServices; using EveOPreview.Services.Interop; namespace EveOPreview.Services.Implementation @@ -29,9 +30,20 @@ namespace EveOPreview.Services.Implementation } } - public void DeactivateWindow(IntPtr handle) + public void MinimizeWindow(IntPtr handle, bool enableAnimation) { - User32NativeMethods.SendMessage(handle, InteropConstants.WM_SYSCOMMAND, InteropConstants.SC_MINIMIZE, 0); + if (enableAnimation) + { + User32NativeMethods.SendMessage(handle, InteropConstants.WM_SYSCOMMAND, InteropConstants.SC_MINIMIZE, 0); + } + else + { + WINDOWPLACEMENT param = new WINDOWPLACEMENT(); + param.length = Marshal.SizeOf(typeof(WINDOWPLACEMENT)); + User32NativeMethods.GetWindowPlacement(handle, ref param); + param.showCmd = WINDOWPLACEMENT.SW_MINIMIZE; + User32NativeMethods.SetWindowPlacement(handle, ref param); + } } public void MoveWindow(IntPtr handle, int left, int top, int width, int height) diff --git a/Eve-O-Preview/Services/Interface/IWindowManager.cs b/Eve-O-Preview/Services/Interface/IWindowManager.cs index f646ae5..17044d5 100644 --- a/Eve-O-Preview/Services/Interface/IWindowManager.cs +++ b/Eve-O-Preview/Services/Interface/IWindowManager.cs @@ -9,7 +9,7 @@ namespace EveOPreview.Services IntPtr GetForegroundWindowHandle(); void ActivateWindow(IntPtr handle); - void DeactivateWindow(IntPtr handle); + void MinimizeWindow(IntPtr handle, bool enableAnimation); void MoveWindow(IntPtr handle, int left, int top, int width, int height); void GetWindowCoordinates(IntPtr handle, out int left, out int top, out int right, out int bottom); diff --git a/Eve-O-Preview/Services/Interop/User32NativeMethods.cs b/Eve-O-Preview/Services/Interop/User32NativeMethods.cs index a216e0d..fbde187 100644 --- a/Eve-O-Preview/Services/Interop/User32NativeMethods.cs +++ b/Eve-O-Preview/Services/Interop/User32NativeMethods.cs @@ -26,6 +26,13 @@ namespace EveOPreview.Services.Interop [DllImport("user32.dll")] public static extern int GetWindowRect(IntPtr hwnd, out RECT rect); + [DllImport("user32.dll", SetLastError = true)] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool GetWindowPlacement(IntPtr hWnd, ref WINDOWPLACEMENT lpwndpl); + + [DllImport("user32.dll")] + public static extern bool SetWindowPlacement(IntPtr hWnd, [In] ref WINDOWPLACEMENT lpwndpl); + [DllImport("user32.dll")] public static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint); diff --git a/Eve-O-Preview/Services/Interop/WINDOWPLACEMENT.cs b/Eve-O-Preview/Services/Interop/WINDOWPLACEMENT.cs new file mode 100644 index 0000000..283373c --- /dev/null +++ b/Eve-O-Preview/Services/Interop/WINDOWPLACEMENT.cs @@ -0,0 +1,30 @@ +using System.Runtime.InteropServices; + +namespace EveOPreview.Services.Interop +{ + //Definition for Window Placement Structure + [StructLayout(LayoutKind.Sequential)] + struct WINDOWPLACEMENT + { + public int length; + public int flags; + public int showCmd; + public System.Drawing.Point ptMinPosition; + public System.Drawing.Point ptMaxPosition; + public System.Drawing.Rectangle rcNormalPosition; + + //Definitions For Different Window Placement Constants + public const int SW_HIDE = 0; + public const int SW_SHOWNORMAL = 1; + public const int SW_NORMAL = 1; + public const int SW_SHOWMINIMIZED = 2; + public const int SW_SHOWMAXIMIZED = 3; + public const int SW_MAXIMIZE = 3; + public const int SW_SHOWNOACTIVATE = 4; + public const int SW_SHOW = 5; + public const int SW_MINIMIZE = 6; + public const int SW_SHOWMINNOACTIVE = 7; + public const int SW_SHOWNA = 8; + public const int SW_RESTORE = 9; + } +} diff --git a/Eve-O-Preview/View/Implementation/MainForm.Designer.cs b/Eve-O-Preview/View/Implementation/MainForm.Designer.cs index 2d77334..e185e73 100644 --- a/Eve-O-Preview/View/Implementation/MainForm.Designer.cs +++ b/Eve-O-Preview/View/Implementation/MainForm.Designer.cs @@ -57,6 +57,7 @@ namespace EveOPreview.View System.Windows.Forms.Label DescriptionLabel; System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); System.Windows.Forms.Label NameLabel; + this.MinimizeInactiveClientsCheckBox = new System.Windows.Forms.CheckBox(); this.EnableClientLayoutTrackingCheckBox = new System.Windows.Forms.CheckBox(); this.HideActiveClientThumbnailCheckBox = new System.Windows.Forms.CheckBox(); this.ShowThumbnailsAlwaysOnTopCheckBox = new System.Windows.Forms.CheckBox(); @@ -138,14 +139,14 @@ namespace EveOPreview.View // RestoreWindowMenuItem // RestoreWindowMenuItem.Name = "RestoreWindowMenuItem"; - RestoreWindowMenuItem.Size = new System.Drawing.Size(151, 22); + RestoreWindowMenuItem.Size = new System.Drawing.Size(199, 30); RestoreWindowMenuItem.Text = "Restore"; RestoreWindowMenuItem.Click += new System.EventHandler(this.RestoreMainForm_Handler); // // ExitMenuItem // ExitMenuItem.Name = "ExitMenuItem"; - ExitMenuItem.Size = new System.Drawing.Size(151, 22); + ExitMenuItem.Size = new System.Drawing.Size(199, 30); ExitMenuItem.Text = "Exit"; ExitMenuItem.Click += new System.EventHandler(this.ExitMenuItemClick_Handler); // @@ -153,13 +154,13 @@ namespace EveOPreview.View // TitleMenuItem.Enabled = false; TitleMenuItem.Name = "TitleMenuItem"; - TitleMenuItem.Size = new System.Drawing.Size(151, 22); + TitleMenuItem.Size = new System.Drawing.Size(199, 30); TitleMenuItem.Text = "EVE-O Preview"; // // SeparatorMenuItem // SeparatorMenuItem.Name = "SeparatorMenuItem"; - SeparatorMenuItem.Size = new System.Drawing.Size(148, 6); + SeparatorMenuItem.Size = new System.Drawing.Size(196, 6); // // ContentTabControl // @@ -174,10 +175,11 @@ namespace EveOPreview.View ContentTabControl.DrawMode = System.Windows.Forms.TabDrawMode.OwnerDrawFixed; ContentTabControl.ItemSize = new System.Drawing.Size(35, 120); ContentTabControl.Location = new System.Drawing.Point(0, 0); + ContentTabControl.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); ContentTabControl.Multiline = true; ContentTabControl.Name = "ContentTabControl"; ContentTabControl.SelectedIndex = 0; - ContentTabControl.Size = new System.Drawing.Size(390, 218); + ContentTabControl.Size = new System.Drawing.Size(585, 335); ContentTabControl.SizeMode = System.Windows.Forms.TabSizeMode.Fixed; ContentTabControl.TabIndex = 6; ContentTabControl.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.ContentTabControl_DrawItem); @@ -187,15 +189,17 @@ namespace EveOPreview.View GeneralTabPage.BackColor = System.Drawing.SystemColors.Control; GeneralTabPage.Controls.Add(GeneralSettingsPanel); GeneralTabPage.Location = new System.Drawing.Point(124, 4); + GeneralTabPage.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); GeneralTabPage.Name = "GeneralTabPage"; - GeneralTabPage.Padding = new System.Windows.Forms.Padding(3); - GeneralTabPage.Size = new System.Drawing.Size(262, 210); + GeneralTabPage.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5); + GeneralTabPage.Size = new System.Drawing.Size(457, 327); GeneralTabPage.TabIndex = 0; GeneralTabPage.Text = "General"; // // GeneralSettingsPanel // GeneralSettingsPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + GeneralSettingsPanel.Controls.Add(this.MinimizeInactiveClientsCheckBox); GeneralSettingsPanel.Controls.Add(this.EnableClientLayoutTrackingCheckBox); GeneralSettingsPanel.Controls.Add(this.HideActiveClientThumbnailCheckBox); GeneralSettingsPanel.Controls.Add(this.ShowThumbnailsAlwaysOnTopCheckBox); @@ -203,17 +207,31 @@ namespace EveOPreview.View GeneralSettingsPanel.Controls.Add(this.EnablePerClientThumbnailsLayoutsCheckBox); GeneralSettingsPanel.Controls.Add(this.MinimizeToTrayCheckBox); GeneralSettingsPanel.Dock = System.Windows.Forms.DockStyle.Fill; - GeneralSettingsPanel.Location = new System.Drawing.Point(3, 3); + GeneralSettingsPanel.Location = new System.Drawing.Point(4, 5); + GeneralSettingsPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); GeneralSettingsPanel.Name = "GeneralSettingsPanel"; - GeneralSettingsPanel.Size = new System.Drawing.Size(256, 204); + GeneralSettingsPanel.Size = new System.Drawing.Size(449, 317); GeneralSettingsPanel.TabIndex = 18; // + // MinimizeInactiveClientsCheckBox + // + this.MinimizeInactiveClientsCheckBox.AutoSize = true; + this.MinimizeInactiveClientsCheckBox.Location = new System.Drawing.Point(12, 122); + this.MinimizeInactiveClientsCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); + this.MinimizeInactiveClientsCheckBox.Name = "MinimizeInactiveClientsCheckBox"; + this.MinimizeInactiveClientsCheckBox.Size = new System.Drawing.Size(239, 24); + this.MinimizeInactiveClientsCheckBox.TabIndex = 24; + this.MinimizeInactiveClientsCheckBox.Text = "Minimize inactive EVE clients"; + this.MinimizeInactiveClientsCheckBox.UseVisualStyleBackColor = true; + this.MinimizeInactiveClientsCheckBox.CheckedChanged += new System.EventHandler(this.OptionChanged_Handler); + // // EnableClientLayoutTrackingCheckBox // this.EnableClientLayoutTrackingCheckBox.AutoSize = true; - this.EnableClientLayoutTrackingCheckBox.Location = new System.Drawing.Point(8, 31); + this.EnableClientLayoutTrackingCheckBox.Location = new System.Drawing.Point(12, 48); + this.EnableClientLayoutTrackingCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.EnableClientLayoutTrackingCheckBox.Name = "EnableClientLayoutTrackingCheckBox"; - this.EnableClientLayoutTrackingCheckBox.Size = new System.Drawing.Size(127, 17); + this.EnableClientLayoutTrackingCheckBox.Size = new System.Drawing.Size(182, 24); this.EnableClientLayoutTrackingCheckBox.TabIndex = 19; this.EnableClientLayoutTrackingCheckBox.Text = "Track client locations"; this.EnableClientLayoutTrackingCheckBox.UseVisualStyleBackColor = true; @@ -224,9 +242,10 @@ namespace EveOPreview.View this.HideActiveClientThumbnailCheckBox.AutoSize = true; this.HideActiveClientThumbnailCheckBox.Checked = true; this.HideActiveClientThumbnailCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.HideActiveClientThumbnailCheckBox.Location = new System.Drawing.Point(8, 55); + this.HideActiveClientThumbnailCheckBox.Location = new System.Drawing.Point(12, 85); + this.HideActiveClientThumbnailCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.HideActiveClientThumbnailCheckBox.Name = "HideActiveClientThumbnailCheckBox"; - this.HideActiveClientThumbnailCheckBox.Size = new System.Drawing.Size(184, 17); + this.HideActiveClientThumbnailCheckBox.Size = new System.Drawing.Size(266, 24); this.HideActiveClientThumbnailCheckBox.TabIndex = 20; this.HideActiveClientThumbnailCheckBox.Text = "Hide preview of active EVE client"; this.HideActiveClientThumbnailCheckBox.UseVisualStyleBackColor = true; @@ -237,10 +256,11 @@ namespace EveOPreview.View this.ShowThumbnailsAlwaysOnTopCheckBox.AutoSize = true; this.ShowThumbnailsAlwaysOnTopCheckBox.Checked = true; this.ShowThumbnailsAlwaysOnTopCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.ShowThumbnailsAlwaysOnTopCheckBox.Location = new System.Drawing.Point(8, 79); + this.ShowThumbnailsAlwaysOnTopCheckBox.Location = new System.Drawing.Point(12, 159); + this.ShowThumbnailsAlwaysOnTopCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ShowThumbnailsAlwaysOnTopCheckBox.Name = "ShowThumbnailsAlwaysOnTopCheckBox"; this.ShowThumbnailsAlwaysOnTopCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.No; - this.ShowThumbnailsAlwaysOnTopCheckBox.Size = new System.Drawing.Size(137, 17); + this.ShowThumbnailsAlwaysOnTopCheckBox.Size = new System.Drawing.Size(197, 24); this.ShowThumbnailsAlwaysOnTopCheckBox.TabIndex = 21; this.ShowThumbnailsAlwaysOnTopCheckBox.Text = "Previews always on top"; this.ShowThumbnailsAlwaysOnTopCheckBox.UseVisualStyleBackColor = true; @@ -251,9 +271,10 @@ namespace EveOPreview.View this.HideThumbnailsOnLostFocusCheckBox.AutoSize = true; this.HideThumbnailsOnLostFocusCheckBox.Checked = true; this.HideThumbnailsOnLostFocusCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.HideThumbnailsOnLostFocusCheckBox.Location = new System.Drawing.Point(8, 103); + this.HideThumbnailsOnLostFocusCheckBox.Location = new System.Drawing.Point(12, 196); + this.HideThumbnailsOnLostFocusCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.HideThumbnailsOnLostFocusCheckBox.Name = "HideThumbnailsOnLostFocusCheckBox"; - this.HideThumbnailsOnLostFocusCheckBox.Size = new System.Drawing.Size(234, 17); + this.HideThumbnailsOnLostFocusCheckBox.Size = new System.Drawing.Size(340, 24); this.HideThumbnailsOnLostFocusCheckBox.TabIndex = 22; this.HideThumbnailsOnLostFocusCheckBox.Text = "Hide previews when EVE client is not active"; this.HideThumbnailsOnLostFocusCheckBox.UseVisualStyleBackColor = true; @@ -264,9 +285,10 @@ namespace EveOPreview.View this.EnablePerClientThumbnailsLayoutsCheckBox.AutoSize = true; this.EnablePerClientThumbnailsLayoutsCheckBox.Checked = true; this.EnablePerClientThumbnailsLayoutsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.EnablePerClientThumbnailsLayoutsCheckBox.Location = new System.Drawing.Point(8, 127); + this.EnablePerClientThumbnailsLayoutsCheckBox.Location = new System.Drawing.Point(12, 233); + this.EnablePerClientThumbnailsLayoutsCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.EnablePerClientThumbnailsLayoutsCheckBox.Name = "EnablePerClientThumbnailsLayoutsCheckBox"; - this.EnablePerClientThumbnailsLayoutsCheckBox.Size = new System.Drawing.Size(185, 17); + this.EnablePerClientThumbnailsLayoutsCheckBox.Size = new System.Drawing.Size(272, 24); this.EnablePerClientThumbnailsLayoutsCheckBox.TabIndex = 23; this.EnablePerClientThumbnailsLayoutsCheckBox.Text = "Unique layout for each EVE client"; this.EnablePerClientThumbnailsLayoutsCheckBox.UseVisualStyleBackColor = true; @@ -275,9 +297,10 @@ namespace EveOPreview.View // MinimizeToTrayCheckBox // this.MinimizeToTrayCheckBox.AutoSize = true; - this.MinimizeToTrayCheckBox.Location = new System.Drawing.Point(8, 7); + this.MinimizeToTrayCheckBox.Location = new System.Drawing.Point(12, 11); + this.MinimizeToTrayCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.MinimizeToTrayCheckBox.Name = "MinimizeToTrayCheckBox"; - this.MinimizeToTrayCheckBox.Size = new System.Drawing.Size(139, 17); + this.MinimizeToTrayCheckBox.Size = new System.Drawing.Size(205, 24); this.MinimizeToTrayCheckBox.TabIndex = 18; this.MinimizeToTrayCheckBox.Text = "Minimize to System Tray"; this.MinimizeToTrayCheckBox.UseVisualStyleBackColor = true; @@ -288,9 +311,10 @@ namespace EveOPreview.View ThumbnailTabPage.BackColor = System.Drawing.SystemColors.Control; ThumbnailTabPage.Controls.Add(ThumbnailSettingsPanel); ThumbnailTabPage.Location = new System.Drawing.Point(124, 4); + ThumbnailTabPage.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); ThumbnailTabPage.Name = "ThumbnailTabPage"; - ThumbnailTabPage.Padding = new System.Windows.Forms.Padding(3); - ThumbnailTabPage.Size = new System.Drawing.Size(262, 210); + ThumbnailTabPage.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5); + ThumbnailTabPage.Size = new System.Drawing.Size(457, 327); ThumbnailTabPage.TabIndex = 1; ThumbnailTabPage.Text = "Thumbnail"; // @@ -304,26 +328,29 @@ namespace EveOPreview.View ThumbnailSettingsPanel.Controls.Add(this.ThumbnailOpacityTrackBar); ThumbnailSettingsPanel.Controls.Add(OpacityLabel); ThumbnailSettingsPanel.Dock = System.Windows.Forms.DockStyle.Fill; - ThumbnailSettingsPanel.Location = new System.Drawing.Point(3, 3); + ThumbnailSettingsPanel.Location = new System.Drawing.Point(4, 5); + ThumbnailSettingsPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); ThumbnailSettingsPanel.Name = "ThumbnailSettingsPanel"; - ThumbnailSettingsPanel.Size = new System.Drawing.Size(256, 204); + ThumbnailSettingsPanel.Size = new System.Drawing.Size(449, 317); ThumbnailSettingsPanel.TabIndex = 19; // // HeigthLabel // HeigthLabel.AutoSize = true; - HeigthLabel.Location = new System.Drawing.Point(8, 57); + HeigthLabel.Location = new System.Drawing.Point(12, 88); + HeigthLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); HeigthLabel.Name = "HeigthLabel"; - HeigthLabel.Size = new System.Drawing.Size(90, 13); + HeigthLabel.Size = new System.Drawing.Size(133, 20); HeigthLabel.TabIndex = 24; HeigthLabel.Text = "Thumbnail Heigth"; // // WidthLabel // WidthLabel.AutoSize = true; - WidthLabel.Location = new System.Drawing.Point(8, 33); + WidthLabel.Location = new System.Drawing.Point(12, 51); + WidthLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); WidthLabel.Name = "WidthLabel"; - WidthLabel.Size = new System.Drawing.Size(87, 13); + WidthLabel.Size = new System.Drawing.Size(127, 20); WidthLabel.TabIndex = 23; WidthLabel.Text = "Thumbnail Width"; // @@ -337,14 +364,15 @@ namespace EveOPreview.View 0, 0, 0}); - this.ThumbnailsWidthNumericEdit.Location = new System.Drawing.Point(105, 31); + this.ThumbnailsWidthNumericEdit.Location = new System.Drawing.Point(158, 48); + this.ThumbnailsWidthNumericEdit.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ThumbnailsWidthNumericEdit.Maximum = new decimal(new int[] { 999999, 0, 0, 0}); this.ThumbnailsWidthNumericEdit.Name = "ThumbnailsWidthNumericEdit"; - this.ThumbnailsWidthNumericEdit.Size = new System.Drawing.Size(48, 20); + this.ThumbnailsWidthNumericEdit.Size = new System.Drawing.Size(72, 26); this.ThumbnailsWidthNumericEdit.TabIndex = 21; this.ThumbnailsWidthNumericEdit.Value = new decimal(new int[] { 100, @@ -363,14 +391,15 @@ namespace EveOPreview.View 0, 0, 0}); - this.ThumbnailsHeightNumericEdit.Location = new System.Drawing.Point(105, 55); + this.ThumbnailsHeightNumericEdit.Location = new System.Drawing.Point(158, 85); + this.ThumbnailsHeightNumericEdit.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ThumbnailsHeightNumericEdit.Maximum = new decimal(new int[] { 99999999, 0, 0, 0}); this.ThumbnailsHeightNumericEdit.Name = "ThumbnailsHeightNumericEdit"; - this.ThumbnailsHeightNumericEdit.Size = new System.Drawing.Size(48, 20); + this.ThumbnailsHeightNumericEdit.Size = new System.Drawing.Size(72, 26); this.ThumbnailsHeightNumericEdit.TabIndex = 22; this.ThumbnailsHeightNumericEdit.Value = new decimal(new int[] { 70, @@ -383,11 +412,12 @@ namespace EveOPreview.View // this.ThumbnailOpacityTrackBar.AutoSize = false; this.ThumbnailOpacityTrackBar.LargeChange = 10; - this.ThumbnailOpacityTrackBar.Location = new System.Drawing.Point(61, 6); + this.ThumbnailOpacityTrackBar.Location = new System.Drawing.Point(92, 9); + this.ThumbnailOpacityTrackBar.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ThumbnailOpacityTrackBar.Maximum = 100; this.ThumbnailOpacityTrackBar.Minimum = 20; this.ThumbnailOpacityTrackBar.Name = "ThumbnailOpacityTrackBar"; - this.ThumbnailOpacityTrackBar.Size = new System.Drawing.Size(191, 22); + this.ThumbnailOpacityTrackBar.Size = new System.Drawing.Size(286, 34); this.ThumbnailOpacityTrackBar.TabIndex = 20; this.ThumbnailOpacityTrackBar.TickFrequency = 10; this.ThumbnailOpacityTrackBar.Value = 20; @@ -396,9 +426,10 @@ namespace EveOPreview.View // OpacityLabel // OpacityLabel.AutoSize = true; - OpacityLabel.Location = new System.Drawing.Point(8, 9); + OpacityLabel.Location = new System.Drawing.Point(12, 14); + OpacityLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); OpacityLabel.Name = "OpacityLabel"; - OpacityLabel.Size = new System.Drawing.Size(43, 13); + OpacityLabel.Size = new System.Drawing.Size(62, 20); OpacityLabel.TabIndex = 19; OpacityLabel.Text = "Opacity"; // @@ -407,8 +438,9 @@ namespace EveOPreview.View this.ZoomTabPage.BackColor = System.Drawing.SystemColors.Control; this.ZoomTabPage.Controls.Add(ZoomSettingsPanel); this.ZoomTabPage.Location = new System.Drawing.Point(124, 4); + this.ZoomTabPage.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomTabPage.Name = "ZoomTabPage"; - this.ZoomTabPage.Size = new System.Drawing.Size(262, 210); + this.ZoomTabPage.Size = new System.Drawing.Size(457, 327); this.ZoomTabPage.TabIndex = 2; this.ZoomTabPage.Text = "Zoom"; // @@ -422,16 +454,18 @@ namespace EveOPreview.View ZoomSettingsPanel.Controls.Add(this.ThumbnailZoomFactorNumericEdit); ZoomSettingsPanel.Dock = System.Windows.Forms.DockStyle.Fill; ZoomSettingsPanel.Location = new System.Drawing.Point(0, 0); + ZoomSettingsPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); ZoomSettingsPanel.Name = "ZoomSettingsPanel"; - ZoomSettingsPanel.Size = new System.Drawing.Size(262, 210); + ZoomSettingsPanel.Size = new System.Drawing.Size(457, 327); ZoomSettingsPanel.TabIndex = 36; // // ZoomFactorLabel // ZoomFactorLabel.AutoSize = true; - ZoomFactorLabel.Location = new System.Drawing.Point(8, 33); + ZoomFactorLabel.Location = new System.Drawing.Point(12, 51); + ZoomFactorLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); ZoomFactorLabel.Name = "ZoomFactorLabel"; - ZoomFactorLabel.Size = new System.Drawing.Size(67, 13); + ZoomFactorLabel.Size = new System.Drawing.Size(100, 20); ZoomFactorLabel.TabIndex = 39; ZoomFactorLabel.Text = "Zoom Factor"; // @@ -447,17 +481,19 @@ namespace EveOPreview.View this.ZoomAnchorPanel.Controls.Add(this.ZoomAanchorSRadioButton); this.ZoomAnchorPanel.Controls.Add(this.ZoomAanchorERadioButton); this.ZoomAnchorPanel.Controls.Add(this.ZoomAanchorSWRadioButton); - this.ZoomAnchorPanel.Location = new System.Drawing.Point(81, 54); + this.ZoomAnchorPanel.Location = new System.Drawing.Point(122, 83); + this.ZoomAnchorPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAnchorPanel.Name = "ZoomAnchorPanel"; - this.ZoomAnchorPanel.Size = new System.Drawing.Size(77, 73); + this.ZoomAnchorPanel.Size = new System.Drawing.Size(114, 111); this.ZoomAnchorPanel.TabIndex = 38; // // ZoomAanchorNWRadioButton // this.ZoomAanchorNWRadioButton.AutoSize = true; - this.ZoomAanchorNWRadioButton.Location = new System.Drawing.Point(3, 3); + this.ZoomAanchorNWRadioButton.Location = new System.Drawing.Point(4, 5); + this.ZoomAanchorNWRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorNWRadioButton.Name = "ZoomAanchorNWRadioButton"; - this.ZoomAanchorNWRadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorNWRadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorNWRadioButton.TabIndex = 0; this.ZoomAanchorNWRadioButton.TabStop = true; this.ZoomAanchorNWRadioButton.UseVisualStyleBackColor = true; @@ -466,9 +502,10 @@ namespace EveOPreview.View // ZoomAanchorNRadioButton // this.ZoomAanchorNRadioButton.AutoSize = true; - this.ZoomAanchorNRadioButton.Location = new System.Drawing.Point(31, 3); + this.ZoomAanchorNRadioButton.Location = new System.Drawing.Point(46, 5); + this.ZoomAanchorNRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorNRadioButton.Name = "ZoomAanchorNRadioButton"; - this.ZoomAanchorNRadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorNRadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorNRadioButton.TabIndex = 1; this.ZoomAanchorNRadioButton.TabStop = true; this.ZoomAanchorNRadioButton.UseVisualStyleBackColor = true; @@ -477,9 +514,10 @@ namespace EveOPreview.View // ZoomAanchorNERadioButton // this.ZoomAanchorNERadioButton.AutoSize = true; - this.ZoomAanchorNERadioButton.Location = new System.Drawing.Point(59, 3); + this.ZoomAanchorNERadioButton.Location = new System.Drawing.Point(88, 5); + this.ZoomAanchorNERadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorNERadioButton.Name = "ZoomAanchorNERadioButton"; - this.ZoomAanchorNERadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorNERadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorNERadioButton.TabIndex = 2; this.ZoomAanchorNERadioButton.TabStop = true; this.ZoomAanchorNERadioButton.UseVisualStyleBackColor = true; @@ -488,9 +526,10 @@ namespace EveOPreview.View // ZoomAanchorWRadioButton // this.ZoomAanchorWRadioButton.AutoSize = true; - this.ZoomAanchorWRadioButton.Location = new System.Drawing.Point(3, 29); + this.ZoomAanchorWRadioButton.Location = new System.Drawing.Point(4, 45); + this.ZoomAanchorWRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorWRadioButton.Name = "ZoomAanchorWRadioButton"; - this.ZoomAanchorWRadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorWRadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorWRadioButton.TabIndex = 3; this.ZoomAanchorWRadioButton.TabStop = true; this.ZoomAanchorWRadioButton.UseVisualStyleBackColor = true; @@ -499,9 +538,10 @@ namespace EveOPreview.View // ZoomAanchorSERadioButton // this.ZoomAanchorSERadioButton.AutoSize = true; - this.ZoomAanchorSERadioButton.Location = new System.Drawing.Point(59, 55); + this.ZoomAanchorSERadioButton.Location = new System.Drawing.Point(88, 85); + this.ZoomAanchorSERadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorSERadioButton.Name = "ZoomAanchorSERadioButton"; - this.ZoomAanchorSERadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorSERadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorSERadioButton.TabIndex = 8; this.ZoomAanchorSERadioButton.TabStop = true; this.ZoomAanchorSERadioButton.UseVisualStyleBackColor = true; @@ -510,9 +550,10 @@ namespace EveOPreview.View // ZoomAanchorCRadioButton // this.ZoomAanchorCRadioButton.AutoSize = true; - this.ZoomAanchorCRadioButton.Location = new System.Drawing.Point(31, 29); + this.ZoomAanchorCRadioButton.Location = new System.Drawing.Point(46, 45); + this.ZoomAanchorCRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorCRadioButton.Name = "ZoomAanchorCRadioButton"; - this.ZoomAanchorCRadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorCRadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorCRadioButton.TabIndex = 4; this.ZoomAanchorCRadioButton.TabStop = true; this.ZoomAanchorCRadioButton.UseVisualStyleBackColor = true; @@ -521,9 +562,10 @@ namespace EveOPreview.View // ZoomAanchorSRadioButton // this.ZoomAanchorSRadioButton.AutoSize = true; - this.ZoomAanchorSRadioButton.Location = new System.Drawing.Point(31, 55); + this.ZoomAanchorSRadioButton.Location = new System.Drawing.Point(46, 85); + this.ZoomAanchorSRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorSRadioButton.Name = "ZoomAanchorSRadioButton"; - this.ZoomAanchorSRadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorSRadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorSRadioButton.TabIndex = 7; this.ZoomAanchorSRadioButton.TabStop = true; this.ZoomAanchorSRadioButton.UseVisualStyleBackColor = true; @@ -532,9 +574,10 @@ namespace EveOPreview.View // ZoomAanchorERadioButton // this.ZoomAanchorERadioButton.AutoSize = true; - this.ZoomAanchorERadioButton.Location = new System.Drawing.Point(59, 29); + this.ZoomAanchorERadioButton.Location = new System.Drawing.Point(88, 45); + this.ZoomAanchorERadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorERadioButton.Name = "ZoomAanchorERadioButton"; - this.ZoomAanchorERadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorERadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorERadioButton.TabIndex = 5; this.ZoomAanchorERadioButton.TabStop = true; this.ZoomAanchorERadioButton.UseVisualStyleBackColor = true; @@ -543,9 +586,10 @@ namespace EveOPreview.View // ZoomAanchorSWRadioButton // this.ZoomAanchorSWRadioButton.AutoSize = true; - this.ZoomAanchorSWRadioButton.Location = new System.Drawing.Point(3, 55); + this.ZoomAanchorSWRadioButton.Location = new System.Drawing.Point(4, 85); + this.ZoomAanchorSWRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ZoomAanchorSWRadioButton.Name = "ZoomAanchorSWRadioButton"; - this.ZoomAanchorSWRadioButton.Size = new System.Drawing.Size(14, 13); + this.ZoomAanchorSWRadioButton.Size = new System.Drawing.Size(21, 20); this.ZoomAanchorSWRadioButton.TabIndex = 6; this.ZoomAanchorSWRadioButton.TabStop = true; this.ZoomAanchorSWRadioButton.UseVisualStyleBackColor = true; @@ -554,9 +598,10 @@ namespace EveOPreview.View // ZoomAnchorLabel // ZoomAnchorLabel.AutoSize = true; - ZoomAnchorLabel.Location = new System.Drawing.Point(8, 57); + ZoomAnchorLabel.Location = new System.Drawing.Point(12, 88); + ZoomAnchorLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); ZoomAnchorLabel.Name = "ZoomAnchorLabel"; - ZoomAnchorLabel.Size = new System.Drawing.Size(41, 13); + ZoomAnchorLabel.Size = new System.Drawing.Size(60, 20); ZoomAnchorLabel.TabIndex = 40; ZoomAnchorLabel.Text = "Anchor"; // @@ -565,10 +610,11 @@ namespace EveOPreview.View this.EnableThumbnailZoomCheckBox.AutoSize = true; this.EnableThumbnailZoomCheckBox.Checked = true; this.EnableThumbnailZoomCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.EnableThumbnailZoomCheckBox.Location = new System.Drawing.Point(8, 7); + this.EnableThumbnailZoomCheckBox.Location = new System.Drawing.Point(12, 11); + this.EnableThumbnailZoomCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.EnableThumbnailZoomCheckBox.Name = "EnableThumbnailZoomCheckBox"; this.EnableThumbnailZoomCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.No; - this.EnableThumbnailZoomCheckBox.Size = new System.Drawing.Size(98, 17); + this.EnableThumbnailZoomCheckBox.Size = new System.Drawing.Size(141, 24); this.EnableThumbnailZoomCheckBox.TabIndex = 36; this.EnableThumbnailZoomCheckBox.Text = "Zoom on hover"; this.EnableThumbnailZoomCheckBox.UseVisualStyleBackColor = true; @@ -578,7 +624,8 @@ namespace EveOPreview.View // this.ThumbnailZoomFactorNumericEdit.BackColor = System.Drawing.SystemColors.Window; this.ThumbnailZoomFactorNumericEdit.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.ThumbnailZoomFactorNumericEdit.Location = new System.Drawing.Point(81, 31); + this.ThumbnailZoomFactorNumericEdit.Location = new System.Drawing.Point(122, 48); + this.ThumbnailZoomFactorNumericEdit.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ThumbnailZoomFactorNumericEdit.Maximum = new decimal(new int[] { 10, 0, @@ -590,7 +637,7 @@ namespace EveOPreview.View 0, 0}); this.ThumbnailZoomFactorNumericEdit.Name = "ThumbnailZoomFactorNumericEdit"; - this.ThumbnailZoomFactorNumericEdit.Size = new System.Drawing.Size(38, 20); + this.ThumbnailZoomFactorNumericEdit.Size = new System.Drawing.Size(57, 26); this.ThumbnailZoomFactorNumericEdit.TabIndex = 37; this.ThumbnailZoomFactorNumericEdit.Value = new decimal(new int[] { 2, @@ -604,8 +651,9 @@ namespace EveOPreview.View OverlayTabPage.BackColor = System.Drawing.SystemColors.Control; OverlayTabPage.Controls.Add(OverlaySettingsPanel); OverlayTabPage.Location = new System.Drawing.Point(124, 4); + OverlayTabPage.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); OverlayTabPage.Name = "OverlayTabPage"; - OverlayTabPage.Size = new System.Drawing.Size(262, 210); + OverlayTabPage.Size = new System.Drawing.Size(457, 327); OverlayTabPage.TabIndex = 3; OverlayTabPage.Text = "Overlay"; // @@ -619,25 +667,28 @@ namespace EveOPreview.View OverlaySettingsPanel.Controls.Add(this.ShowThumbnailFramesCheckBox); OverlaySettingsPanel.Dock = System.Windows.Forms.DockStyle.Fill; OverlaySettingsPanel.Location = new System.Drawing.Point(0, 0); + OverlaySettingsPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); OverlaySettingsPanel.Name = "OverlaySettingsPanel"; - OverlaySettingsPanel.Size = new System.Drawing.Size(262, 210); + OverlaySettingsPanel.Size = new System.Drawing.Size(457, 327); OverlaySettingsPanel.TabIndex = 25; // // HighlightColorLabel // this.HighlightColorLabel.AutoSize = true; - this.HighlightColorLabel.Location = new System.Drawing.Point(5, 78); + this.HighlightColorLabel.Location = new System.Drawing.Point(8, 120); + this.HighlightColorLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); this.HighlightColorLabel.Name = "HighlightColorLabel"; - this.HighlightColorLabel.Size = new System.Drawing.Size(31, 13); + this.HighlightColorLabel.Size = new System.Drawing.Size(46, 20); this.HighlightColorLabel.TabIndex = 29; this.HighlightColorLabel.Text = "Color"; // // ActiveClientHighlightColorButton // this.ActiveClientHighlightColorButton.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.ActiveClientHighlightColorButton.Location = new System.Drawing.Point(42, 77); + this.ActiveClientHighlightColorButton.Location = new System.Drawing.Point(63, 118); + this.ActiveClientHighlightColorButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ActiveClientHighlightColorButton.Name = "ActiveClientHighlightColorButton"; - this.ActiveClientHighlightColorButton.Size = new System.Drawing.Size(93, 17); + this.ActiveClientHighlightColorButton.Size = new System.Drawing.Size(138, 25); this.ActiveClientHighlightColorButton.TabIndex = 28; this.ActiveClientHighlightColorButton.Click += new System.EventHandler(this.ActiveClientHighlightColorButton_Click); // @@ -646,10 +697,11 @@ namespace EveOPreview.View this.EnableActiveClientHighlightCheckBox.AutoSize = true; this.EnableActiveClientHighlightCheckBox.Checked = true; this.EnableActiveClientHighlightCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.EnableActiveClientHighlightCheckBox.Location = new System.Drawing.Point(8, 55); + this.EnableActiveClientHighlightCheckBox.Location = new System.Drawing.Point(12, 85); + this.EnableActiveClientHighlightCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.EnableActiveClientHighlightCheckBox.Name = "EnableActiveClientHighlightCheckBox"; this.EnableActiveClientHighlightCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.No; - this.EnableActiveClientHighlightCheckBox.Size = new System.Drawing.Size(127, 17); + this.EnableActiveClientHighlightCheckBox.Size = new System.Drawing.Size(183, 24); this.EnableActiveClientHighlightCheckBox.TabIndex = 27; this.EnableActiveClientHighlightCheckBox.Text = "Highlight active client"; this.EnableActiveClientHighlightCheckBox.UseVisualStyleBackColor = true; @@ -660,10 +712,11 @@ namespace EveOPreview.View this.ShowThumbnailOverlaysCheckBox.AutoSize = true; this.ShowThumbnailOverlaysCheckBox.Checked = true; this.ShowThumbnailOverlaysCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.ShowThumbnailOverlaysCheckBox.Location = new System.Drawing.Point(8, 7); + this.ShowThumbnailOverlaysCheckBox.Location = new System.Drawing.Point(12, 11); + this.ShowThumbnailOverlaysCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ShowThumbnailOverlaysCheckBox.Name = "ShowThumbnailOverlaysCheckBox"; this.ShowThumbnailOverlaysCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.No; - this.ShowThumbnailOverlaysCheckBox.Size = new System.Drawing.Size(90, 17); + this.ShowThumbnailOverlaysCheckBox.Size = new System.Drawing.Size(128, 24); this.ShowThumbnailOverlaysCheckBox.TabIndex = 25; this.ShowThumbnailOverlaysCheckBox.Text = "Show overlay"; this.ShowThumbnailOverlaysCheckBox.UseVisualStyleBackColor = true; @@ -674,10 +727,11 @@ namespace EveOPreview.View this.ShowThumbnailFramesCheckBox.AutoSize = true; this.ShowThumbnailFramesCheckBox.Checked = true; this.ShowThumbnailFramesCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.ShowThumbnailFramesCheckBox.Location = new System.Drawing.Point(8, 31); + this.ShowThumbnailFramesCheckBox.Location = new System.Drawing.Point(12, 48); + this.ShowThumbnailFramesCheckBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ShowThumbnailFramesCheckBox.Name = "ShowThumbnailFramesCheckBox"; this.ShowThumbnailFramesCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.No; - this.ShowThumbnailFramesCheckBox.Size = new System.Drawing.Size(87, 17); + this.ShowThumbnailFramesCheckBox.Size = new System.Drawing.Size(128, 24); this.ShowThumbnailFramesCheckBox.TabIndex = 26; this.ShowThumbnailFramesCheckBox.Text = "Show frames"; this.ShowThumbnailFramesCheckBox.UseVisualStyleBackColor = true; @@ -688,8 +742,9 @@ namespace EveOPreview.View ClientsTabPage.BackColor = System.Drawing.SystemColors.Control; ClientsTabPage.Controls.Add(ClientsPanel); ClientsTabPage.Location = new System.Drawing.Point(124, 4); + ClientsTabPage.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); ClientsTabPage.Name = "ClientsTabPage"; - ClientsTabPage.Size = new System.Drawing.Size(262, 210); + ClientsTabPage.Size = new System.Drawing.Size(457, 327); ClientsTabPage.TabIndex = 4; ClientsTabPage.Text = "Active Clients"; // @@ -700,8 +755,9 @@ namespace EveOPreview.View ClientsPanel.Controls.Add(ThumbnailsListLabel); ClientsPanel.Dock = System.Windows.Forms.DockStyle.Fill; ClientsPanel.Location = new System.Drawing.Point(0, 0); + ClientsPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); ClientsPanel.Name = "ClientsPanel"; - ClientsPanel.Size = new System.Drawing.Size(262, 210); + ClientsPanel.Size = new System.Drawing.Size(457, 327); ClientsPanel.TabIndex = 32; // // ThumbnailsList @@ -712,18 +768,20 @@ namespace EveOPreview.View this.ThumbnailsList.Dock = System.Windows.Forms.DockStyle.Bottom; this.ThumbnailsList.FormattingEnabled = true; this.ThumbnailsList.IntegralHeight = false; - this.ThumbnailsList.Location = new System.Drawing.Point(0, 28); + this.ThumbnailsList.Location = new System.Drawing.Point(0, 49); + this.ThumbnailsList.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); this.ThumbnailsList.Name = "ThumbnailsList"; - this.ThumbnailsList.Size = new System.Drawing.Size(260, 180); + this.ThumbnailsList.Size = new System.Drawing.Size(455, 276); this.ThumbnailsList.TabIndex = 34; this.ThumbnailsList.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.ThumbnailsList_ItemCheck_Handler); // // ThumbnailsListLabel // ThumbnailsListLabel.AutoSize = true; - ThumbnailsListLabel.Location = new System.Drawing.Point(8, 9); + ThumbnailsListLabel.Location = new System.Drawing.Point(12, 14); + ThumbnailsListLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); ThumbnailsListLabel.Name = "ThumbnailsListLabel"; - ThumbnailsListLabel.Size = new System.Drawing.Size(162, 13); + ThumbnailsListLabel.Size = new System.Drawing.Size(238, 20); ThumbnailsListLabel.TabIndex = 33; ThumbnailsListLabel.Text = "Thumbnails (check to force hide)"; // @@ -732,8 +790,9 @@ namespace EveOPreview.View AboutTabPage.BackColor = System.Drawing.SystemColors.Control; AboutTabPage.Controls.Add(AboutPanel); AboutTabPage.Location = new System.Drawing.Point(124, 4); + AboutTabPage.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); AboutTabPage.Name = "AboutTabPage"; - AboutTabPage.Size = new System.Drawing.Size(262, 210); + AboutTabPage.Size = new System.Drawing.Size(457, 327); AboutTabPage.TabIndex = 5; AboutTabPage.Text = "About"; // @@ -747,26 +806,29 @@ namespace EveOPreview.View AboutPanel.Controls.Add(this.DocumentationLink); AboutPanel.Dock = System.Windows.Forms.DockStyle.Fill; AboutPanel.Location = new System.Drawing.Point(0, 0); + AboutPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); AboutPanel.Name = "AboutPanel"; - AboutPanel.Size = new System.Drawing.Size(262, 210); + AboutPanel.Size = new System.Drawing.Size(457, 327); AboutPanel.TabIndex = 2; // // DocumentationLinkLabel // DocumentationLinkLabel.AutoSize = true; - DocumentationLinkLabel.Location = new System.Drawing.Point(0, 157); + DocumentationLinkLabel.Location = new System.Drawing.Point(0, 242); + DocumentationLinkLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); DocumentationLinkLabel.Name = "DocumentationLinkLabel"; - DocumentationLinkLabel.Padding = new System.Windows.Forms.Padding(8, 3, 8, 3); - DocumentationLinkLabel.Size = new System.Drawing.Size(222, 19); + DocumentationLinkLabel.Padding = new System.Windows.Forms.Padding(12, 5, 12, 5); + DocumentationLinkLabel.Size = new System.Drawing.Size(336, 30); DocumentationLinkLabel.TabIndex = 6; DocumentationLinkLabel.Text = "For more information visit our forum thread:"; // // DescriptionLabel // - DescriptionLabel.Location = new System.Drawing.Point(0, 41); + DescriptionLabel.Location = new System.Drawing.Point(0, 63); + DescriptionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); DescriptionLabel.Name = "DescriptionLabel"; - DescriptionLabel.Padding = new System.Windows.Forms.Padding(8, 3, 8, 3); - DescriptionLabel.Size = new System.Drawing.Size(261, 116); + DescriptionLabel.Padding = new System.Windows.Forms.Padding(12, 5, 12, 5); + DescriptionLabel.Size = new System.Drawing.Size(392, 178); DescriptionLabel.TabIndex = 5; DescriptionLabel.Text = resources.GetString("DescriptionLabel.Text"); // @@ -774,9 +836,10 @@ namespace EveOPreview.View // this.VersionLabel.AutoSize = true; this.VersionLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204))); - this.VersionLabel.Location = new System.Drawing.Point(133, 9); + this.VersionLabel.Location = new System.Drawing.Point(200, 14); + this.VersionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); this.VersionLabel.Name = "VersionLabel"; - this.VersionLabel.Size = new System.Drawing.Size(49, 20); + this.VersionLabel.Size = new System.Drawing.Size(69, 29); this.VersionLabel.TabIndex = 4; this.VersionLabel.Text = "1.0.0"; // @@ -784,19 +847,20 @@ namespace EveOPreview.View // NameLabel.AutoSize = true; NameLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(204))); - NameLabel.Location = new System.Drawing.Point(4, 9); + NameLabel.Location = new System.Drawing.Point(6, 14); + NameLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); NameLabel.Name = "NameLabel"; - NameLabel.Size = new System.Drawing.Size(130, 20); + NameLabel.Size = new System.Drawing.Size(193, 29); NameLabel.TabIndex = 3; NameLabel.Text = "EVE-O Preview"; // // DocumentationLink // - this.DocumentationLink.Location = new System.Drawing.Point(0, 173); - this.DocumentationLink.Margin = new System.Windows.Forms.Padding(30, 3, 3, 3); + this.DocumentationLink.Location = new System.Drawing.Point(0, 266); + this.DocumentationLink.Margin = new System.Windows.Forms.Padding(45, 5, 4, 5); this.DocumentationLink.Name = "DocumentationLink"; - this.DocumentationLink.Padding = new System.Windows.Forms.Padding(8, 3, 8, 3); - this.DocumentationLink.Size = new System.Drawing.Size(262, 33); + this.DocumentationLink.Padding = new System.Windows.Forms.Padding(12, 5, 12, 5); + this.DocumentationLink.Size = new System.Drawing.Size(393, 51); this.DocumentationLink.TabIndex = 2; this.DocumentationLink.TabStop = true; this.DocumentationLink.Text = "to be set from prresenter to be set from prresenter to be set from prresenter to " + @@ -813,20 +877,21 @@ namespace EveOPreview.View // // TrayMenu // + this.TrayMenu.ImageScalingSize = new System.Drawing.Size(24, 24); this.TrayMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { TitleMenuItem, RestoreWindowMenuItem, SeparatorMenuItem, ExitMenuItem}); this.TrayMenu.Name = "contextMenuStrip1"; - this.TrayMenu.Size = new System.Drawing.Size(152, 76); + this.TrayMenu.Size = new System.Drawing.Size(200, 100); // // MainForm // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.BackColor = System.Drawing.SystemColors.Control; - this.ClientSize = new System.Drawing.Size(390, 218); + this.ClientSize = new System.Drawing.Size(585, 335); this.Controls.Add(ContentTabControl); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); @@ -901,5 +966,6 @@ namespace EveOPreview.View private CheckedListBox ThumbnailsList; private LinkLabel DocumentationLink; private Label VersionLabel; + private CheckBox MinimizeInactiveClientsCheckBox; } } \ No newline at end of file diff --git a/Eve-O-Preview/View/Implementation/MainForm.cs b/Eve-O-Preview/View/Implementation/MainForm.cs index 78e8f6c..f420197 100644 --- a/Eve-O-Preview/View/Implementation/MainForm.cs +++ b/Eve-O-Preview/View/Implementation/MainForm.cs @@ -69,6 +69,12 @@ namespace EveOPreview.View set => this.HideActiveClientThumbnailCheckBox.Checked = value; } + public bool MinimizeInactiveClients + { + get => this.MinimizeInactiveClientsCheckBox.Checked; + set => this.MinimizeInactiveClientsCheckBox.Checked = value; + } + public bool ShowThumbnailsAlwaysOnTop { get => this.ShowThumbnailsAlwaysOnTopCheckBox.Checked; @@ -268,7 +274,7 @@ namespace EveOPreview.View graphics.FillRectangle(backgroundBrush, e.Bounds); // Use our own font - Font font = new Font("Arial", this.Font.Size * 1.2f, FontStyle.Bold, GraphicsUnit.Pixel); + Font font = new Font("Arial", this.Font.Size * 1.5f, FontStyle.Bold, GraphicsUnit.Pixel); // Draw string and center the text StringFormat stringFlags = new StringFormat(); diff --git a/Eve-O-Preview/View/Implementation/MainForm.resx b/Eve-O-Preview/View/Implementation/MainForm.resx index 137ad30..426d527 100644 --- a/Eve-O-Preview/View/Implementation/MainForm.resx +++ b/Eve-O-Preview/View/Implementation/MainForm.resx @@ -132,63 +132,210 @@ False + + True + False + + True + False + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + False + + True + False + + True + False + + True + False + + True + + + True + + + True + + + True + False + + True + + + True + False + + True + False + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + False + + True + + + True + + + True + False + + True + False + + True + + + True + + + True + + + True + + + True + + + True + False + + True + False + + True + + + True + False + + True + False + + True + False + + True + False + + True + False + + True + An advanced task switcher for EVE Online clients. @@ -198,9 +345,18 @@ The program does NOT - broadcast any keyboard or mouse events - anyhow interact with EVE Online except of bringing its main window to foreground or resizing it + + True + False + + True + + + True + 17, 17 @@ -746,6 +902,9 @@ The program does NOT Af//4AAAAAAH///wAAAAAA////gAAAAAH////gAAAAB/////AAAAAP/////AAAAD/////+AAAAf//w== + + True + 36 diff --git a/Eve-O-Preview/View/Interface/IMainFormView.cs b/Eve-O-Preview/View/Interface/IMainFormView.cs index b9b8172..1c4ad32 100644 --- a/Eve-O-Preview/View/Interface/IMainFormView.cs +++ b/Eve-O-Preview/View/Interface/IMainFormView.cs @@ -17,6 +17,7 @@ namespace EveOPreview.View bool EnableClientLayoutTracking { get; set; } bool HideActiveClientThumbnail { get; set; } + bool MinimizeInactiveClients { get; set; } bool ShowThumbnailsAlwaysOnTop { get; set; } bool HideThumbnailsOnLostFocus { get; set; } bool EnablePerClientThumbnailLayouts { get; set; }