diff --git a/Eve-O-Preview/Configuration/WindowProperties.cs b/Eve-O-Preview/Configuration/WindowProperties.cs index 00df984..1f1034d 100644 --- a/Eve-O-Preview/Configuration/WindowProperties.cs +++ b/Eve-O-Preview/Configuration/WindowProperties.cs @@ -1,4 +1,4 @@ -namespace EveOPreview +namespace EveOPreview.Configuration { public class WindowProperties { diff --git a/Eve-O-Preview/Eve-O-Preview.csproj b/Eve-O-Preview/Eve-O-Preview.csproj index 70e2f42..f944e60 100644 --- a/Eve-O-Preview/Eve-O-Preview.csproj +++ b/Eve-O-Preview/Eve-O-Preview.csproj @@ -111,6 +111,8 @@ + + @@ -128,8 +130,8 @@ - - + + diff --git a/Eve-O-Preview/Presentation/MainPresenter.cs b/Eve-O-Preview/Presentation/MainPresenter.cs index 9e224ca..379f2b7 100644 --- a/Eve-O-Preview/Presentation/MainPresenter.cs +++ b/Eve-O-Preview/Presentation/MainPresenter.cs @@ -85,10 +85,10 @@ namespace EveOPreview.UI { this.View.MinimizeToTray = Properties.Settings.Default.minimizeToTray; this.View.ThumbnailsOpacity = Properties.Settings.Default.opacity; - this.View.TrackClientLocations = Properties.Settings.Default.track_client_windows; + this.View.EnableClientsLocationTracking = Properties.Settings.Default.track_client_windows; this.View.HideActiveClientThumbnail = Properties.Settings.Default.hide_active; this.View.ShowThumbnailsAlwaysOnTop = Properties.Settings.Default.always_on_top; - this.View.HideAllThumbnailsIfClientIsNotActive = Properties.Settings.Default.hide_all; + this.View.HideThumbnailsOnLostFocus = Properties.Settings.Default.hide_all; this.View.EnableUniqueThumbnailsLayouts = Properties.Settings.Default.unique_layout; this.View.SyncThumbnailsSize = Properties.Settings.Default.sync_resize; @@ -97,7 +97,7 @@ namespace EveOPreview.UI this.View.EnableZoomOnHover = Properties.Settings.Default.zoom_on_hover; this.View.ZoomFactor = (int)Properties.Settings.Default.zoom_amount; - this.View.ZoomAnchor = (ZoomAnchor)Properties.Settings.Default.zoom_anchor; + this.View.ZoomAnchor = (ViewZoomAnchor)Properties.Settings.Default.zoom_anchor; this.View.ShowThumbnailFrames = Properties.Settings.Default.show_thumb_frames; this.View.ShowThumbnailOverlays = Properties.Settings.Default.show_overlay; @@ -108,10 +108,10 @@ namespace EveOPreview.UI Properties.Settings.Default.minimizeToTray = this.View.MinimizeToTray; Properties.Settings.Default.opacity = (float)this.View.ThumbnailsOpacity; - Properties.Settings.Default.track_client_windows = this.View.TrackClientLocations; + Properties.Settings.Default.track_client_windows = this.View.EnableClientsLocationTracking; Properties.Settings.Default.hide_active = this.View.HideActiveClientThumbnail; Properties.Settings.Default.always_on_top = this.View.ShowThumbnailsAlwaysOnTop; - Properties.Settings.Default.hide_all = this.View.HideAllThumbnailsIfClientIsNotActive; + Properties.Settings.Default.hide_all = this.View.HideThumbnailsOnLostFocus; Properties.Settings.Default.unique_layout = this.View.EnableUniqueThumbnailsLayouts; Properties.Settings.Default.sync_resize = this.View.SyncThumbnailsSize; diff --git a/Eve-O-Preview/Presentation/ThumbnailManager.cs b/Eve-O-Preview/Presentation/ThumbnailManager.cs index c4b0fd7..97c8709 100644 --- a/Eve-O-Preview/Presentation/ThumbnailManager.cs +++ b/Eve-O-Preview/Presentation/ThumbnailManager.cs @@ -5,6 +5,7 @@ using System.Drawing; using System.IO; using System.Windows.Threading; using System.Xml.Linq; +using EveOPreview.Configuration; namespace EveOPreview.UI { @@ -42,7 +43,7 @@ namespace EveOPreview.UI this._activeClientHandle = (IntPtr)0; this._activeClientTitle = ""; - this._ignoreViewEvents = false; + this.EnableViewEvents(); this._isHoverEffectActive = false; this._thumbnailViews = new Dictionary(); @@ -101,7 +102,7 @@ namespace EveOPreview.UI public void SetThumbnailsSize(Size size) { - this._ignoreViewEvents = true; + this.DisableViewEvents(); foreach (KeyValuePair entry in this._thumbnailViews) { @@ -111,7 +112,7 @@ namespace EveOPreview.UI this.ThumbnailSizeChanged?.Invoke(size); - this._ignoreViewEvents = false; + this.EnableViewEvents(); } // TODO Drop dependency on the configuration object @@ -120,7 +121,7 @@ namespace EveOPreview.UI IntPtr foregroundWindowHandle = DwmApiNativeMethods.GetForegroundWindow(); Boolean hideAllThumbnails = (Properties.Settings.Default.hide_all && !this.IsClientWindowActive(foregroundWindowHandle)) || !DwmApiNativeMethods.DwmIsCompositionEnabled(); - this._ignoreViewEvents = true; + this.DisableViewEvents(); // Hide, show, resize and move foreach (KeyValuePair entry in this._thumbnailViews) @@ -166,20 +167,20 @@ namespace EveOPreview.UI } } - this._ignoreViewEvents = false; + this.EnableViewEvents(); } public void SetupThumbnailFrames() { // TODO Drop config dependency - this._ignoreViewEvents = true; + this.DisableViewEvents(); foreach (KeyValuePair entry in this._thumbnailViews) { entry.Value.SetWindowFrames(Properties.Settings.Default.show_thumb_frames); } - this._ignoreViewEvents = false; + this.EnableViewEvents(); } private void ThumbnailUpdateTimerTick(object sender, EventArgs e) @@ -188,6 +189,16 @@ namespace EveOPreview.UI this.RefreshThumbnails(); } + private void EnableViewEvents() + { + this._ignoreViewEvents = false; + } + + private void DisableViewEvents() + { + this._ignoreViewEvents = true; + } + private Process[] GetClientProcesses() { return Process.GetProcessesByName(ThumbnailManager.ClientProcessName); @@ -434,7 +445,8 @@ namespace EveOPreview.UI this._thumbnailBaseSize = view.Size; this._thumbnailBaseLocation = view.Location; - this._ignoreViewEvents = true; + this.DisableViewEvents(); + view.Size = new Size((int)(zoomFactor * view.Size.Width), (int)(zoomFactor * view.Size.Height)); int locationX = view.Location.X; @@ -447,53 +459,53 @@ namespace EveOPreview.UI int oldHeight = this._thumbnailBaseSize.Height; // TODO Use global settings object - switch ((ZoomAnchor)Properties.Settings.Default.zoom_anchor) + switch ((ViewZoomAnchor)Properties.Settings.Default.zoom_anchor) { - case ZoomAnchor.NW: + case ViewZoomAnchor.NW: break; - case ZoomAnchor.N: + case ViewZoomAnchor.N: view.Location = new Point(locationX - newWidth / 2 + oldWidth / 2, locationY); break; - case ZoomAnchor.NE: + case ViewZoomAnchor.NE: view.Location = new Point(locationX - newWidth + oldWidth, locationY); break; - case ZoomAnchor.W: + case ViewZoomAnchor.W: view.Location = new Point(locationX, locationY - newHeight / 2 + oldHeight / 2); break; - case ZoomAnchor.C: + case ViewZoomAnchor.C: view.Location = new Point(locationX - newWidth / 2 + oldWidth / 2, locationY - newHeight / 2 + oldHeight / 2); break; - case ZoomAnchor.E: + case ViewZoomAnchor.E: view.Location = new Point(locationX - newWidth + oldWidth, locationY - newHeight / 2 + oldHeight / 2); break; - case ZoomAnchor.SW: + case ViewZoomAnchor.SW: view.Location = new Point(locationX, locationY - newHeight + this._thumbnailBaseSize.Height); break; - case ZoomAnchor.S: + case ViewZoomAnchor.S: view.Location = new Point(locationX - newWidth / 2 + oldWidth / 2, locationY - newHeight + oldHeight); break; - case ZoomAnchor.SE: + case ViewZoomAnchor.SE: view.Location = new Point(locationX - newWidth + oldWidth, locationY - newHeight + oldHeight); break; } view.Refresh(); - this._ignoreViewEvents = false; + this.EnableViewEvents(); } private void ThumbnailZoomOut(IThumbnailView view) { - this._ignoreViewEvents = true; + this.DisableViewEvents(); view.Size = this._thumbnailBaseSize; view.Location = this._thumbnailBaseLocation; view.Refresh(); - this._ignoreViewEvents = false; + this.EnableViewEvents(); } // ************************************************************************ diff --git a/Eve-O-Preview/Program.cs b/Eve-O-Preview/Program.cs index a567f88..0788efb 100644 --- a/Eve-O-Preview/Program.cs +++ b/Eve-O-Preview/Program.cs @@ -1,5 +1,6 @@ using System; using System.Windows.Forms; +using EveOPreview.Configuration; using EveOPreview.UI; namespace EveOPreview @@ -26,7 +27,8 @@ namespace EveOPreview // Application services controller.RegisterService() .RegisterService() - .RegisterService(); + .RegisterService() + .RegisterService(); controller.Run(); } diff --git a/Eve-O-Preview/UI/Implementation/MainForm.Designer.cs b/Eve-O-Preview/UI/Implementation/MainForm.Designer.cs index e557029..c60ac2a 100644 --- a/Eve-O-Preview/UI/Implementation/MainForm.Designer.cs +++ b/Eve-O-Preview/UI/Implementation/MainForm.Designer.cs @@ -36,22 +36,23 @@ namespace EveOPreview.UI System.Windows.Forms.ToolStripMenuItem ExitMenuItem; System.Windows.Forms.FlowLayoutPanel ContentFlowLayoutPanel; System.Windows.Forms.Panel OpacityPanel; + System.Windows.Forms.Panel ResizeOptionsPanel; + System.Windows.Forms.Panel ZoomOptionsPanel; System.Windows.Forms.Label ZoomFactorLabel; System.Windows.Forms.Label ZoomAnchorLabel; - System.Windows.Forms.Label PreviewsListLabel; + System.Windows.Forms.Panel ThumbnailsListPanel; + System.Windows.Forms.Label ThumbnailsListLabel; System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); this.MinimizeToTrayCheckBox = new System.Windows.Forms.CheckBox(); this.ThumbnailsOpacityScrollBar = new System.Windows.Forms.HScrollBar(); - this.TrackClientLocationsCheckBox = new System.Windows.Forms.CheckBox(); + this.EnableClientsLocationTrackingCheckBox = new System.Windows.Forms.CheckBox(); this.HideActiveClientThumbnailCheckBox = new System.Windows.Forms.CheckBox(); this.ShowThumbnailsAlwaysOnTopCheckBox = new System.Windows.Forms.CheckBox(); - this.HideAllThumbnailsIfClientIsNotActiveCheckBox = new System.Windows.Forms.CheckBox(); + this.HideThumbnailsOnLostFocusCheckBox = new System.Windows.Forms.CheckBox(); this.EnableUniqueThumbnailsLayoutsCheckBox = new System.Windows.Forms.CheckBox(); - this.panel1 = new System.Windows.Forms.Panel(); this.SyncThumbnailsSizeCheckBox = new System.Windows.Forms.CheckBox(); this.ThumbnailsWidthNumericEdit = new System.Windows.Forms.NumericUpDown(); this.ThumbnailsHeightNumericEdit = new System.Windows.Forms.NumericUpDown(); - this.panel2 = new System.Windows.Forms.Panel(); this.ZoomAnchorPanel = new System.Windows.Forms.Panel(); this.ZoomAanchorNWRadioButton = new System.Windows.Forms.RadioButton(); this.ZoomAanchorNRadioButton = new System.Windows.Forms.RadioButton(); @@ -66,7 +67,6 @@ namespace EveOPreview.UI this.ZoomFactorNumericEdit = new System.Windows.Forms.NumericUpDown(); this.ShowThumbnailOverlaysCheckBox = new System.Windows.Forms.CheckBox(); this.ShowThumbnailFramesCheckBox = new System.Windows.Forms.CheckBox(); - this.panel5 = new System.Windows.Forms.Panel(); this.ThumbnailsList = new System.Windows.Forms.CheckedListBox(); this.ForumLinkLabel = new System.Windows.Forms.LinkLabel(); this.NotifyIcon = new System.Windows.Forms.NotifyIcon(this.components); @@ -76,18 +76,21 @@ namespace EveOPreview.UI ExitMenuItem = new System.Windows.Forms.ToolStripMenuItem(); ContentFlowLayoutPanel = new System.Windows.Forms.FlowLayoutPanel(); OpacityPanel = new System.Windows.Forms.Panel(); + ResizeOptionsPanel = new System.Windows.Forms.Panel(); + ZoomOptionsPanel = new System.Windows.Forms.Panel(); ZoomFactorLabel = new System.Windows.Forms.Label(); ZoomAnchorLabel = new System.Windows.Forms.Label(); - PreviewsListLabel = new System.Windows.Forms.Label(); + ThumbnailsListPanel = new System.Windows.Forms.Panel(); + ThumbnailsListLabel = new System.Windows.Forms.Label(); ContentFlowLayoutPanel.SuspendLayout(); OpacityPanel.SuspendLayout(); - this.panel1.SuspendLayout(); + ResizeOptionsPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.ThumbnailsWidthNumericEdit)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.ThumbnailsHeightNumericEdit)).BeginInit(); - this.panel2.SuspendLayout(); + ZoomOptionsPanel.SuspendLayout(); this.ZoomAnchorPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.ZoomFactorNumericEdit)).BeginInit(); - this.panel5.SuspendLayout(); + ThumbnailsListPanel.SuspendLayout(); this.TrayMenu.SuspendLayout(); this.SuspendLayout(); // @@ -119,21 +122,21 @@ namespace EveOPreview.UI ContentFlowLayoutPanel.BackColor = System.Drawing.SystemColors.Control; ContentFlowLayoutPanel.Controls.Add(this.MinimizeToTrayCheckBox); ContentFlowLayoutPanel.Controls.Add(OpacityPanel); - ContentFlowLayoutPanel.Controls.Add(this.TrackClientLocationsCheckBox); + ContentFlowLayoutPanel.Controls.Add(this.EnableClientsLocationTrackingCheckBox); ContentFlowLayoutPanel.Controls.Add(this.HideActiveClientThumbnailCheckBox); ContentFlowLayoutPanel.Controls.Add(this.ShowThumbnailsAlwaysOnTopCheckBox); - ContentFlowLayoutPanel.Controls.Add(this.HideAllThumbnailsIfClientIsNotActiveCheckBox); + ContentFlowLayoutPanel.Controls.Add(this.HideThumbnailsOnLostFocusCheckBox); ContentFlowLayoutPanel.Controls.Add(this.EnableUniqueThumbnailsLayoutsCheckBox); - ContentFlowLayoutPanel.Controls.Add(this.panel1); - ContentFlowLayoutPanel.Controls.Add(this.panel2); + ContentFlowLayoutPanel.Controls.Add(ResizeOptionsPanel); + ContentFlowLayoutPanel.Controls.Add(ZoomOptionsPanel); ContentFlowLayoutPanel.Controls.Add(this.ShowThumbnailOverlaysCheckBox); ContentFlowLayoutPanel.Controls.Add(this.ShowThumbnailFramesCheckBox); - ContentFlowLayoutPanel.Controls.Add(this.panel5); + ContentFlowLayoutPanel.Controls.Add(ThumbnailsListPanel); ContentFlowLayoutPanel.Controls.Add(this.ForumLinkLabel); ContentFlowLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill; ContentFlowLayoutPanel.Location = new System.Drawing.Point(0, 0); ContentFlowLayoutPanel.Name = "ContentFlowLayoutPanel"; - ContentFlowLayoutPanel.Size = new System.Drawing.Size(252, 467); + ContentFlowLayoutPanel.Size = new System.Drawing.Size(252, 487); ContentFlowLayoutPanel.TabIndex = 25; // // MinimizeToTrayCheckBox @@ -166,16 +169,16 @@ namespace EveOPreview.UI this.ThumbnailsOpacityScrollBar.TabIndex = 1; this.ThumbnailsOpacityScrollBar.Scroll += new System.Windows.Forms.ScrollEventHandler(this.OptionChanged_Handler); // - // TrackClientLocationsCheckBox + // EnableClientsLocationTrackingCheckBox // - this.TrackClientLocationsCheckBox.AutoSize = true; - this.TrackClientLocationsCheckBox.Location = new System.Drawing.Point(3, 58); - this.TrackClientLocationsCheckBox.Name = "TrackClientLocationsCheckBox"; - this.TrackClientLocationsCheckBox.Size = new System.Drawing.Size(127, 17); - this.TrackClientLocationsCheckBox.TabIndex = 32; - this.TrackClientLocationsCheckBox.Text = "Track client locations"; - this.TrackClientLocationsCheckBox.UseVisualStyleBackColor = true; - this.TrackClientLocationsCheckBox.CheckedChanged += new System.EventHandler(this.OptionChanged_Handler); + this.EnableClientsLocationTrackingCheckBox.AutoSize = true; + this.EnableClientsLocationTrackingCheckBox.Location = new System.Drawing.Point(3, 58); + this.EnableClientsLocationTrackingCheckBox.Name = "EnableClientsLocationTrackingCheckBox"; + this.EnableClientsLocationTrackingCheckBox.Size = new System.Drawing.Size(127, 17); + this.EnableClientsLocationTrackingCheckBox.TabIndex = 32; + this.EnableClientsLocationTrackingCheckBox.Text = "Track client locations"; + this.EnableClientsLocationTrackingCheckBox.UseVisualStyleBackColor = true; + this.EnableClientsLocationTrackingCheckBox.CheckedChanged += new System.EventHandler(this.OptionChanged_Handler); // // HideActiveClientThumbnailCheckBox // @@ -204,18 +207,18 @@ namespace EveOPreview.UI this.ShowThumbnailsAlwaysOnTopCheckBox.UseVisualStyleBackColor = true; this.ShowThumbnailsAlwaysOnTopCheckBox.CheckedChanged += new System.EventHandler(this.OptionChanged_Handler); // - // HideAllThumbnailsIfClientIsNotActiveCheckBox + // HideThumbnailsOnLostFocusCheckBox // - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.AutoSize = true; - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.Checked = true; - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.Location = new System.Drawing.Point(3, 127); - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.Name = "HideAllThumbnailsIfClientIsNotActiveCheckBox"; - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.Size = new System.Drawing.Size(242, 17); - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.TabIndex = 2; - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.Text = "Hide previews if active window not EVE client"; - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.UseVisualStyleBackColor = true; - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.CheckedChanged += new System.EventHandler(this.OptionChanged_Handler); + this.HideThumbnailsOnLostFocusCheckBox.AutoSize = true; + this.HideThumbnailsOnLostFocusCheckBox.Checked = true; + this.HideThumbnailsOnLostFocusCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.HideThumbnailsOnLostFocusCheckBox.Location = new System.Drawing.Point(3, 127); + this.HideThumbnailsOnLostFocusCheckBox.Name = "HideThumbnailsOnLostFocusCheckBox"; + this.HideThumbnailsOnLostFocusCheckBox.Size = new System.Drawing.Size(242, 17); + this.HideThumbnailsOnLostFocusCheckBox.TabIndex = 2; + this.HideThumbnailsOnLostFocusCheckBox.Text = "Hide previews if active window not EVE client"; + this.HideThumbnailsOnLostFocusCheckBox.UseVisualStyleBackColor = true; + this.HideThumbnailsOnLostFocusCheckBox.CheckedChanged += new System.EventHandler(this.OptionChanged_Handler); // // EnableUniqueThumbnailsLayoutsCheckBox // @@ -230,16 +233,16 @@ namespace EveOPreview.UI this.EnableUniqueThumbnailsLayoutsCheckBox.UseVisualStyleBackColor = true; this.EnableUniqueThumbnailsLayoutsCheckBox.CheckedChanged += new System.EventHandler(this.OptionChanged_Handler); // - // panel1 + // ResizeOptionsPanel // - this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.panel1.Controls.Add(this.SyncThumbnailsSizeCheckBox); - this.panel1.Controls.Add(this.ThumbnailsWidthNumericEdit); - this.panel1.Controls.Add(this.ThumbnailsHeightNumericEdit); - this.panel1.Location = new System.Drawing.Point(3, 173); - this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(246, 30); - this.panel1.TabIndex = 26; + ResizeOptionsPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + ResizeOptionsPanel.Controls.Add(this.SyncThumbnailsSizeCheckBox); + ResizeOptionsPanel.Controls.Add(this.ThumbnailsWidthNumericEdit); + ResizeOptionsPanel.Controls.Add(this.ThumbnailsHeightNumericEdit); + ResizeOptionsPanel.Location = new System.Drawing.Point(3, 173); + ResizeOptionsPanel.Name = "ResizeOptionsPanel"; + ResizeOptionsPanel.Size = new System.Drawing.Size(246, 30); + ResizeOptionsPanel.TabIndex = 26; // // SyncThumbnailsSizeCheckBox // @@ -317,24 +320,24 @@ namespace EveOPreview.UI this.ThumbnailsHeightNumericEdit.TextChanged += new System.EventHandler(this.ThumbnailSizeChanged_Handler); this.ThumbnailsHeightNumericEdit.ValueChanged += new System.EventHandler(this.ThumbnailSizeChanged_Handler); // - // panel2 + // ZoomOptionsPanel // - this.panel2.BackColor = System.Drawing.SystemColors.Control; - this.panel2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.panel2.Controls.Add(ZoomFactorLabel); - this.panel2.Controls.Add(this.ZoomAnchorPanel); - this.panel2.Controls.Add(ZoomAnchorLabel); - this.panel2.Controls.Add(this.EnableZoomOnHoverCheckBox); - this.panel2.Controls.Add(this.ZoomFactorNumericEdit); - this.panel2.Location = new System.Drawing.Point(3, 209); - this.panel2.Name = "panel2"; - this.panel2.Size = new System.Drawing.Size(246, 62); - this.panel2.TabIndex = 27; + ZoomOptionsPanel.BackColor = System.Drawing.SystemColors.Control; + ZoomOptionsPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + ZoomOptionsPanel.Controls.Add(ZoomFactorLabel); + ZoomOptionsPanel.Controls.Add(this.ZoomAnchorPanel); + ZoomOptionsPanel.Controls.Add(ZoomAnchorLabel); + ZoomOptionsPanel.Controls.Add(this.EnableZoomOnHoverCheckBox); + ZoomOptionsPanel.Controls.Add(this.ZoomFactorNumericEdit); + ZoomOptionsPanel.Location = new System.Drawing.Point(3, 209); + ZoomOptionsPanel.Name = "ZoomOptionsPanel"; + ZoomOptionsPanel.Size = new System.Drawing.Size(246, 82); + ZoomOptionsPanel.TabIndex = 27; // // ZoomFactorLabel // ZoomFactorLabel.AutoSize = true; - ZoomFactorLabel.Location = new System.Drawing.Point(49, 31); + ZoomFactorLabel.Location = new System.Drawing.Point(49, 43); ZoomFactorLabel.Name = "ZoomFactorLabel"; ZoomFactorLabel.Size = new System.Drawing.Size(37, 13); ZoomFactorLabel.TabIndex = 29; @@ -351,7 +354,7 @@ namespace EveOPreview.UI 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(182, 3); + this.ZoomAnchorPanel.Location = new System.Drawing.Point(182, 21); this.ZoomAnchorPanel.Name = "ZoomAnchorPanel"; this.ZoomAnchorPanel.Size = new System.Drawing.Size(60, 57); this.ZoomAnchorPanel.TabIndex = 28; @@ -458,7 +461,7 @@ namespace EveOPreview.UI // ZoomAnchorLabel // ZoomAnchorLabel.AutoSize = true; - ZoomAnchorLabel.Location = new System.Drawing.Point(138, 31); + ZoomAnchorLabel.Location = new System.Drawing.Point(138, 43); ZoomAnchorLabel.Name = "ZoomAnchorLabel"; ZoomAnchorLabel.Size = new System.Drawing.Size(41, 13); ZoomAnchorLabel.TabIndex = 30; @@ -482,7 +485,7 @@ namespace EveOPreview.UI // this.ZoomFactorNumericEdit.BackColor = System.Drawing.SystemColors.Window; this.ZoomFactorNumericEdit.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.ZoomFactorNumericEdit.Location = new System.Drawing.Point(9, 28); + this.ZoomFactorNumericEdit.Location = new System.Drawing.Point(9, 40); this.ZoomFactorNumericEdit.Maximum = new decimal(new int[] { 10, 0, @@ -508,7 +511,7 @@ namespace EveOPreview.UI this.ShowThumbnailOverlaysCheckBox.AutoSize = true; this.ShowThumbnailOverlaysCheckBox.Checked = true; this.ShowThumbnailOverlaysCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.ShowThumbnailOverlaysCheckBox.Location = new System.Drawing.Point(3, 277); + this.ShowThumbnailOverlaysCheckBox.Location = new System.Drawing.Point(3, 297); this.ShowThumbnailOverlaysCheckBox.Name = "ShowThumbnailOverlaysCheckBox"; this.ShowThumbnailOverlaysCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.No; this.ShowThumbnailOverlaysCheckBox.Size = new System.Drawing.Size(90, 17); @@ -522,7 +525,7 @@ namespace EveOPreview.UI this.ShowThumbnailFramesCheckBox.AutoSize = true; this.ShowThumbnailFramesCheckBox.Checked = true; this.ShowThumbnailFramesCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; - this.ShowThumbnailFramesCheckBox.Location = new System.Drawing.Point(99, 277); + this.ShowThumbnailFramesCheckBox.Location = new System.Drawing.Point(99, 297); this.ShowThumbnailFramesCheckBox.Name = "ShowThumbnailFramesCheckBox"; this.ShowThumbnailFramesCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.No; this.ShowThumbnailFramesCheckBox.Size = new System.Drawing.Size(127, 17); @@ -531,15 +534,15 @@ namespace EveOPreview.UI this.ShowThumbnailFramesCheckBox.UseVisualStyleBackColor = true; this.ShowThumbnailFramesCheckBox.CheckedChanged += new System.EventHandler(this.OptionChanged_Handler); // - // panel5 + // ThumbnailsListPanel // - this.panel5.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.panel5.Controls.Add(this.ThumbnailsList); - this.panel5.Controls.Add(PreviewsListLabel); - this.panel5.Location = new System.Drawing.Point(3, 300); - this.panel5.Name = "panel5"; - this.panel5.Size = new System.Drawing.Size(246, 125); - this.panel5.TabIndex = 31; + ThumbnailsListPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + ThumbnailsListPanel.Controls.Add(this.ThumbnailsList); + ThumbnailsListPanel.Controls.Add(ThumbnailsListLabel); + ThumbnailsListPanel.Location = new System.Drawing.Point(3, 320); + ThumbnailsListPanel.Name = "ThumbnailsListPanel"; + ThumbnailsListPanel.Size = new System.Drawing.Size(246, 125); + ThumbnailsListPanel.TabIndex = 31; // // ThumbnailsList // @@ -553,19 +556,19 @@ namespace EveOPreview.UI this.ThumbnailsList.TabIndex = 28; this.ThumbnailsList.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.ThumbnailsList_ItemCheck_Handler); // - // PreviewsListLabel + // ThumbnailsListLabel // - PreviewsListLabel.AutoSize = true; - PreviewsListLabel.Location = new System.Drawing.Point(3, 0); - PreviewsListLabel.Name = "PreviewsListLabel"; - PreviewsListLabel.Size = new System.Drawing.Size(151, 13); - PreviewsListLabel.TabIndex = 29; - PreviewsListLabel.Text = "Previews (check to force hide)"; + ThumbnailsListLabel.AutoSize = true; + ThumbnailsListLabel.Location = new System.Drawing.Point(3, 0); + ThumbnailsListLabel.Name = "ThumbnailsListLabel"; + ThumbnailsListLabel.Size = new System.Drawing.Size(162, 13); + ThumbnailsListLabel.TabIndex = 29; + ThumbnailsListLabel.Text = "Thumbnails (check to force hide)"; // // ForumLinkLabel // this.ForumLinkLabel.AutoSize = true; - this.ForumLinkLabel.Location = new System.Drawing.Point(3, 428); + this.ForumLinkLabel.Location = new System.Drawing.Point(3, 448); this.ForumLinkLabel.Name = "ForumLinkLabel"; this.ForumLinkLabel.Size = new System.Drawing.Size(241, 26); this.ForumLinkLabel.TabIndex = 10; @@ -595,7 +598,7 @@ namespace EveOPreview.UI this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.BackColor = System.Drawing.SystemColors.ControlDarkDark; - this.ClientSize = new System.Drawing.Size(252, 467); + this.ClientSize = new System.Drawing.Size(252, 487); this.Controls.Add(ContentFlowLayoutPanel); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); @@ -611,17 +614,17 @@ namespace EveOPreview.UI ContentFlowLayoutPanel.PerformLayout(); OpacityPanel.ResumeLayout(false); OpacityPanel.PerformLayout(); - this.panel1.ResumeLayout(false); - this.panel1.PerformLayout(); + ResizeOptionsPanel.ResumeLayout(false); + ResizeOptionsPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.ThumbnailsWidthNumericEdit)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.ThumbnailsHeightNumericEdit)).EndInit(); - this.panel2.ResumeLayout(false); - this.panel2.PerformLayout(); + ZoomOptionsPanel.ResumeLayout(false); + ZoomOptionsPanel.PerformLayout(); this.ZoomAnchorPanel.ResumeLayout(false); this.ZoomAnchorPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.ZoomFactorNumericEdit)).EndInit(); - this.panel5.ResumeLayout(false); - this.panel5.PerformLayout(); + ThumbnailsListPanel.ResumeLayout(false); + ThumbnailsListPanel.PerformLayout(); this.TrayMenu.ResumeLayout(false); this.ResumeLayout(false); @@ -630,7 +633,7 @@ namespace EveOPreview.UI #endregion private CheckBox HideActiveClientThumbnailCheckBox; - private CheckBox HideAllThumbnailsIfClientIsNotActiveCheckBox; + private CheckBox HideThumbnailsOnLostFocusCheckBox; private CheckBox EnableUniqueThumbnailsLayoutsCheckBox; private CheckBox SyncThumbnailsSizeCheckBox; private CheckBox ShowThumbnailsAlwaysOnTopCheckBox; @@ -650,12 +653,9 @@ namespace EveOPreview.UI private RadioButton ZoomAanchorSRadioButton; private RadioButton ZoomAanchorSERadioButton; private NumericUpDown ZoomFactorNumericEdit; - private Panel panel1; - private Panel panel2; private Panel ZoomAnchorPanel; private CheckedListBox ThumbnailsList; - private Panel panel5; - private CheckBox TrackClientLocationsCheckBox; + private CheckBox EnableClientsLocationTrackingCheckBox; private HScrollBar ThumbnailsOpacityScrollBar; private CheckBox MinimizeToTrayCheckBox; private NotifyIcon NotifyIcon; diff --git a/Eve-O-Preview/UI/Implementation/MainForm.cs b/Eve-O-Preview/UI/Implementation/MainForm.cs index f25317a..ed231ad 100644 --- a/Eve-O-Preview/UI/Implementation/MainForm.cs +++ b/Eve-O-Preview/UI/Implementation/MainForm.cs @@ -8,15 +8,15 @@ namespace EveOPreview.UI public partial class MainForm : Form, IMainView { private readonly ApplicationContext _context; - private readonly Dictionary _zoomAnchorMap; - private ZoomAnchor _cachedZoomAnchor; + private readonly Dictionary _zoomAnchorMap; + private ViewZoomAnchor _cachedZoomAnchor; private bool _suppressEvents; public MainForm(ApplicationContext context) { this._context = context; - this._zoomAnchorMap = new Dictionary(); - this._cachedZoomAnchor = ZoomAnchor.NW; + this._zoomAnchorMap = new Dictionary(); + this._cachedZoomAnchor = ViewZoomAnchor.NW; this._suppressEvents = false; InitializeComponent(); @@ -50,15 +50,15 @@ namespace EveOPreview.UI } } - public bool TrackClientLocations + public bool EnableClientsLocationTracking { get { - return this.TrackClientLocationsCheckBox.Checked; + return this.EnableClientsLocationTrackingCheckBox.Checked; } set { - this.TrackClientLocationsCheckBox.Checked = value; + this.EnableClientsLocationTrackingCheckBox.Checked = value; } } @@ -86,15 +86,15 @@ namespace EveOPreview.UI } } - public bool HideAllThumbnailsIfClientIsNotActive + public bool HideThumbnailsOnLostFocus { get { - return this.HideAllThumbnailsIfClientIsNotActiveCheckBox.Checked; + return this.HideThumbnailsOnLostFocusCheckBox.Checked; } set { - this.HideAllThumbnailsIfClientIsNotActiveCheckBox.Checked = value; + this.HideThumbnailsOnLostFocusCheckBox.Checked = value; } } @@ -171,7 +171,7 @@ namespace EveOPreview.UI } } - public ZoomAnchor ZoomAnchor + public ViewZoomAnchor ZoomAnchor { get { @@ -180,7 +180,7 @@ namespace EveOPreview.UI return this._cachedZoomAnchor; } - foreach (KeyValuePair valuePair in this._zoomAnchorMap) + foreach (KeyValuePair valuePair in this._zoomAnchorMap) { if (!valuePair.Value.Checked) { @@ -192,7 +192,7 @@ namespace EveOPreview.UI } // Default value - return ZoomAnchor.NW; + return ViewZoomAnchor.NW; } set { @@ -385,15 +385,15 @@ namespace EveOPreview.UI private void InitZoomAnchorMap() { - this._zoomAnchorMap[ZoomAnchor.NW] = this.ZoomAanchorNWRadioButton; - this._zoomAnchorMap[ZoomAnchor.N] = this.ZoomAanchorNRadioButton; - this._zoomAnchorMap[ZoomAnchor.NE] = this.ZoomAanchorNERadioButton; - this._zoomAnchorMap[ZoomAnchor.W] = this.ZoomAanchorWRadioButton; - this._zoomAnchorMap[ZoomAnchor.C] = this.ZoomAanchorCRadioButton; - this._zoomAnchorMap[ZoomAnchor.E] = this.ZoomAanchorERadioButton; - this._zoomAnchorMap[ZoomAnchor.SW] = this.ZoomAanchorSWRadioButton; - this._zoomAnchorMap[ZoomAnchor.S] = this.ZoomAanchorSRadioButton; - this._zoomAnchorMap[ZoomAnchor.SE] = this.ZoomAanchorSERadioButton; + this._zoomAnchorMap[ViewZoomAnchor.NW] = this.ZoomAanchorNWRadioButton; + this._zoomAnchorMap[ViewZoomAnchor.N] = this.ZoomAanchorNRadioButton; + this._zoomAnchorMap[ViewZoomAnchor.NE] = this.ZoomAanchorNERadioButton; + this._zoomAnchorMap[ViewZoomAnchor.W] = this.ZoomAanchorWRadioButton; + this._zoomAnchorMap[ViewZoomAnchor.C] = this.ZoomAanchorCRadioButton; + this._zoomAnchorMap[ViewZoomAnchor.E] = this.ZoomAanchorERadioButton; + this._zoomAnchorMap[ViewZoomAnchor.SW] = this.ZoomAanchorSWRadioButton; + this._zoomAnchorMap[ViewZoomAnchor.S] = this.ZoomAanchorSRadioButton; + this._zoomAnchorMap[ViewZoomAnchor.SE] = this.ZoomAanchorSERadioButton; } } } \ No newline at end of file diff --git a/Eve-O-Preview/UI/Implementation/MainForm.resx b/Eve-O-Preview/UI/Implementation/MainForm.resx index 8f32033..735b71b 100644 --- a/Eve-O-Preview/UI/Implementation/MainForm.resx +++ b/Eve-O-Preview/UI/Implementation/MainForm.resx @@ -147,7 +147,7 @@ True - + True @@ -156,13 +156,16 @@ True - + True True - + + False + + True @@ -174,7 +177,10 @@ True - + + False + + True @@ -186,6 +192,33 @@ True + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + False @@ -204,16 +237,19 @@ True - + + False + + True True - + False - + True @@ -231,79 +267,13 @@ True - + + True + + False - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - True - - - False - - - True - - - True - - + True diff --git a/Eve-O-Preview/UI/Interface/IMainView.cs b/Eve-O-Preview/UI/Interface/IMainView.cs index 01bbd5d..108c57d 100644 --- a/Eve-O-Preview/UI/Interface/IMainView.cs +++ b/Eve-O-Preview/UI/Interface/IMainView.cs @@ -13,10 +13,11 @@ namespace EveOPreview.UI bool MinimizeToTray { get; set; } double ThumbnailsOpacity { get; set; } - bool TrackClientLocations { get; set; } + + bool EnableClientsLocationTracking { get; set; } bool HideActiveClientThumbnail { get; set; } bool ShowThumbnailsAlwaysOnTop { get; set; } - bool HideAllThumbnailsIfClientIsNotActive { get; set; } + bool HideThumbnailsOnLostFocus { get; set; } bool EnableUniqueThumbnailsLayouts { get; set; } bool SyncThumbnailsSize { get; set; } @@ -25,7 +26,7 @@ namespace EveOPreview.UI bool EnableZoomOnHover { get; set; } int ZoomFactor { get; set; } - ZoomAnchor ZoomAnchor { get; set; } + ViewZoomAnchor ZoomAnchor { get; set; } bool ShowThumbnailOverlays { get; set; } bool ShowThumbnailFrames { get; set; } diff --git a/Eve-O-Preview/UI/Interface/ZoomAnchor.cs b/Eve-O-Preview/UI/Interface/ViewZoomAnchor.cs similarity index 61% rename from Eve-O-Preview/UI/Interface/ZoomAnchor.cs rename to Eve-O-Preview/UI/Interface/ViewZoomAnchor.cs index aee08b5..f927329 100644 --- a/Eve-O-Preview/UI/Interface/ZoomAnchor.cs +++ b/Eve-O-Preview/UI/Interface/ViewZoomAnchor.cs @@ -1,8 +1,8 @@ namespace EveOPreview.UI { - public enum ZoomAnchor + public enum ViewZoomAnchor { - NW = 0, + NW, N, NE, W,