diff --git a/.hgignore b/.hgignore index 58f82cc..26c15ff 100644 --- a/.hgignore +++ b/.hgignore @@ -5,6 +5,5 @@ glob:publish/* glob:*Thumbs.db glob:*.psd glob:Installer/OnTopReplica-Setup.exe -syntax: glob -*.Designer.cs -*.suo +glob:*.Designer.cs +glob:*.suo diff --git a/Graphics/Raster/help.png b/Graphics/Raster/help.png new file mode 100644 index 0000000..299ccbf Binary files /dev/null and b/Graphics/Raster/help.png differ diff --git a/Graphics/Raster/minimize.png b/Graphics/Raster/minimize.png new file mode 100644 index 0000000..f6684e5 Binary files /dev/null and b/Graphics/Raster/minimize.png differ diff --git a/Graphics/Vector/help.psd b/Graphics/Vector/help.psd new file mode 100644 index 0000000..0d83dd5 Binary files /dev/null and b/Graphics/Vector/help.psd differ diff --git a/Graphics/Vector/minimize.psd b/Graphics/Vector/minimize.psd new file mode 100644 index 0000000..89061b0 Binary files /dev/null and b/Graphics/Vector/minimize.psd differ diff --git a/Installer/wix-compile.bat b/Installer/wix-compile.bat new file mode 100644 index 0000000..4564844 --- /dev/null +++ b/Installer/wix-compile.bat @@ -0,0 +1,2 @@ +"C:\Program Files (x86)\WiX Toolset v3.7\bin\candle.exe" wix-package.wxs +"C:\Program Files (x86)\WiX Toolset v3.7\bin\light.exe" wix-package.wixobj \ No newline at end of file diff --git a/Installer/wix-package.wxs b/Installer/wix-package.wxs new file mode 100644 index 0000000..7535d7f --- /dev/null +++ b/Installer/wix-package.wxs @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/OnTopReplica/FullscreenFormManager.cs b/OnTopReplica/FullscreenFormManager.cs new file mode 100644 index 0000000..1263c3d --- /dev/null +++ b/OnTopReplica/FullscreenFormManager.cs @@ -0,0 +1,117 @@ +using OnTopReplica.Properties; +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +namespace OnTopReplica { + class FullscreenFormManager { + + private readonly MainForm _mainForm; + + public FullscreenFormManager(MainForm form) { + _mainForm = form; + IsFullscreen = false; + } + + Point _preFullscreenLocation; + Size _preFullscreenSize; + FormBorderStyle _preFullscreenBorderStyle; + + public bool IsFullscreen { + get; + private set; + } + + public void SwitchFullscreen() { + SwitchFullscreen(Settings.Default.GetFullscreenMode()); + } + + public void SwitchFullscreen(FullscreenMode mode) { + if (IsFullscreen) { + MoveToFullscreenMode(mode); + return; + } + + if (!_mainForm.ThumbnailPanel.IsShowingThumbnail) + return; + + //On switch, always hide side panels + _mainForm.CloseSidePanel(); + + //Store state + _preFullscreenLocation = _mainForm.Location; + _preFullscreenSize = _mainForm.ClientSize; + _preFullscreenBorderStyle = _mainForm.FormBorderStyle; + + //Change state to fullscreen + _mainForm.FormBorderStyle = FormBorderStyle.None; + MoveToFullscreenMode(mode); + + CommonCompleteSwitch(true); + } + + private void MoveToFullscreenMode(FullscreenMode mode) { + var screens = Screen.AllScreens; + + var currentScreen = Screen.FromControl(_mainForm); + Size size = _mainForm.Size; + Point location = _mainForm.Location; + + switch (mode) { + case FullscreenMode.Standard: + default: + size = currentScreen.WorkingArea.Size; + location = currentScreen.WorkingArea.Location; + break; + + case FullscreenMode.Fullscreen: + size = currentScreen.Bounds.Size; + location = currentScreen.Bounds.Location; + break; + + case FullscreenMode.AllScreens: + size = SystemInformation.VirtualScreen.Size; + location = SystemInformation.VirtualScreen.Location; + break; + } + + _mainForm.Size = size; + _mainForm.Location = location; + } + + public void SwitchBack() { + if (!IsFullscreen) + return; + + //Restore state + _mainForm.FormBorderStyle = _preFullscreenBorderStyle; + _mainForm.Location = _preFullscreenLocation; + _mainForm.ClientSize = _preFullscreenSize; + _mainForm.RefreshAspectRatio(); + + CommonCompleteSwitch(false); + } + + private void CommonCompleteSwitch(bool enabled) { + //UI stuff switching + _mainForm.GlassEnabled = !enabled; + _mainForm.TopMost = !enabled; + _mainForm.HandleMouseMove = !enabled; + + IsFullscreen = enabled; + + Program.Platform.OnFormStateChange(_mainForm); + } + + public void Toggle() { + if (IsFullscreen) + SwitchBack(); + else + SwitchFullscreen(Settings.Default.GetFullscreenMode()); + } + + } +} diff --git a/OnTopReplica/FullscreenMode.cs b/OnTopReplica/FullscreenMode.cs new file mode 100644 index 0000000..83f4700 --- /dev/null +++ b/OnTopReplica/FullscreenMode.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Xml.Serialization; +using OnTopReplica.Properties; + +namespace OnTopReplica { + /// + /// Describes a fullscreen mode. + /// + enum FullscreenMode { + Standard, + Fullscreen, + AllScreens + } + + static class FullscreenModeExtensions { + + /// + /// Gets the fullscreen mode as an enumeration value. + /// + public static FullscreenMode GetFullscreenMode(this Settings settings) { + FullscreenMode retMode = FullscreenMode.Standard; + + Enum.TryParse(settings.FullscreenMode, out retMode); + + return retMode; + } + + /// + /// Sets the fullscreen mode. + /// + public static void SetFullscreenMode(this Settings settings, FullscreenMode mode) { + settings.FullscreenMode = mode.ToString(); + } + + } +} diff --git a/OnTopReplica/MainForm.Designer.cs b/OnTopReplica/MainForm.Designer.cs index 1c0ec00..356788c 100644 --- a/OnTopReplica/MainForm.Designer.cs +++ b/OnTopReplica/MainForm.Designer.cs @@ -31,7 +31,6 @@ this.menuContextWindows = new System.Windows.Forms.ToolStripMenuItem(); this.menuWindows = new System.Windows.Forms.ContextMenuStrip(this.components); this.noneToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.fullSelectWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.switchToWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.selectRegionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.advancedToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -45,6 +44,7 @@ this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem(); + this.fullOpacityToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.resizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.menuResize = new System.Windows.Forms.ContextMenuStrip(this.components); this.doubleToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); @@ -68,8 +68,12 @@ this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.menuContextClose = new System.Windows.Forms.ToolStripMenuItem(); - this.fullOpacityToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.fullSelectWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.menuFullscreenContext = new System.Windows.Forms.ContextMenuStrip(this.components); + this.modeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.menuModeStandardToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.menuModeFullscreenToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.menuModeAllScreensToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.enableClickthroughToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.fullExitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.menuContext.SuspendLayout(); @@ -96,7 +100,7 @@ this.aboutToolStripMenuItem, this.menuContextClose}); this.menuContext.Name = "menuContext"; - this.menuContext.Size = new System.Drawing.Size(187, 296); + this.menuContext.Size = new System.Drawing.Size(187, 274); this.menuContext.Opening += new System.ComponentModel.CancelEventHandler(this.Menu_opening); // // menuContextWindows @@ -113,7 +117,6 @@ this.menuWindows.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.noneToolStripMenuItem}); this.menuWindows.Name = "menuWindows"; - this.menuWindows.OwnerItem = this.menuContextWindows; this.menuWindows.Size = new System.Drawing.Size(118, 26); // // noneToolStripMenuItem @@ -122,15 +125,6 @@ this.noneToolStripMenuItem.Size = new System.Drawing.Size(117, 22); this.noneToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuWindowsNone; // - // fullSelectWindowToolStripMenuItem - // - this.fullSelectWindowToolStripMenuItem.DropDown = this.menuWindows; - this.fullSelectWindowToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.list; - this.fullSelectWindowToolStripMenuItem.Name = "fullSelectWindowToolStripMenuItem"; - this.fullSelectWindowToolStripMenuItem.Size = new System.Drawing.Size(189, 22); - this.fullSelectWindowToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuWindows; - this.fullSelectWindowToolStripMenuItem.ToolTipText = global::OnTopReplica.Strings.MenuWindowsTT; - // // switchToWindowToolStripMenuItem // this.switchToWindowToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.xiao_arrow; @@ -214,7 +208,7 @@ this.toolStripMenuItem3, this.toolStripMenuItem4}); this.menuOpacity.Name = "menuOpacity"; - this.menuOpacity.OwnerItem = this.fullOpacityToolStripMenuItem; + this.menuOpacity.OwnerItem = this.menuContextOpacity; this.menuOpacity.ShowCheckMargin = true; this.menuOpacity.ShowImageMargin = false; this.menuOpacity.Size = new System.Drawing.Size(154, 92); @@ -258,6 +252,14 @@ this.toolStripMenuItem4.ToolTipText = global::OnTopReplica.Strings.MenuOp25TT; this.toolStripMenuItem4.Click += new System.EventHandler(this.Menu_Opacity_click); // + // fullOpacityToolStripMenuItem + // + this.fullOpacityToolStripMenuItem.DropDown = this.menuOpacity; + this.fullOpacityToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.window_opacity; + this.fullOpacityToolStripMenuItem.Name = "fullOpacityToolStripMenuItem"; + this.fullOpacityToolStripMenuItem.Size = new System.Drawing.Size(189, 22); + this.fullOpacityToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuOpacity; + // // resizeToolStripMenuItem // this.resizeToolStripMenuItem.DropDown = this.menuResize; @@ -279,7 +281,7 @@ this.restorePositionAndSizeToolStripMenuItem}); this.menuResize.Name = "menuResize"; this.menuResize.OwnerItem = this.resizeToolStripMenuItem; - this.menuResize.Size = new System.Drawing.Size(218, 170); + this.menuResize.Size = new System.Drawing.Size(218, 148); this.menuResize.Opening += new System.ComponentModel.CancelEventHandler(this.Menu_Resize_opening); // // doubleToolStripMenuItem1 @@ -411,7 +413,7 @@ // // reduceToIconToolStripMenuItem // - this.reduceToIconToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.reduce; + this.reduceToIconToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.minimize; this.reduceToIconToolStripMenuItem.Name = "reduceToIconToolStripMenuItem"; this.reduceToIconToolStripMenuItem.Size = new System.Drawing.Size(186, 22); this.reduceToIconToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuReduce; @@ -433,7 +435,7 @@ // // aboutToolStripMenuItem // - this.aboutToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.xiao_help; + this.aboutToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.help; this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem"; this.aboutToolStripMenuItem.Size = new System.Drawing.Size(186, 22); this.aboutToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuAbout; @@ -448,23 +450,57 @@ this.menuContextClose.Text = global::OnTopReplica.Strings.MenuClose; this.menuContextClose.Click += new System.EventHandler(this.Menu_Close_click); // - // fullOpacityToolStripMenuItem + // fullSelectWindowToolStripMenuItem // - this.fullOpacityToolStripMenuItem.DropDown = this.menuOpacity; - this.fullOpacityToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.window_opacity; - this.fullOpacityToolStripMenuItem.Name = "fullOpacityToolStripMenuItem"; - this.fullOpacityToolStripMenuItem.Size = new System.Drawing.Size(189, 22); - this.fullOpacityToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuOpacity; + this.fullSelectWindowToolStripMenuItem.DropDown = this.menuWindows; + this.fullSelectWindowToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.list; + this.fullSelectWindowToolStripMenuItem.Name = "fullSelectWindowToolStripMenuItem"; + this.fullSelectWindowToolStripMenuItem.Size = new System.Drawing.Size(189, 22); + this.fullSelectWindowToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuWindows; + this.fullSelectWindowToolStripMenuItem.ToolTipText = global::OnTopReplica.Strings.MenuWindowsTT; // // menuFullscreenContext // this.menuFullscreenContext.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.fullSelectWindowToolStripMenuItem, + this.modeToolStripMenuItem, this.fullOpacityToolStripMenuItem, this.enableClickthroughToolStripMenuItem, this.fullExitToolStripMenuItem}); this.menuFullscreenContext.Name = "menuFullscreenContext"; - this.menuFullscreenContext.Size = new System.Drawing.Size(190, 92); + this.menuFullscreenContext.Size = new System.Drawing.Size(190, 136); + // + // modeToolStripMenuItem + // + this.modeToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.menuModeStandardToolStripMenuItem, + this.menuModeFullscreenToolStripMenuItem, + this.menuModeAllScreensToolStripMenuItem}); + this.modeToolStripMenuItem.Name = "modeToolStripMenuItem"; + this.modeToolStripMenuItem.Size = new System.Drawing.Size(189, 22); + this.modeToolStripMenuItem.Text = "Mode"; + this.modeToolStripMenuItem.DropDownOpening += new System.EventHandler(this.Menu_Fullscreen_Mode_opening); + // + // menuModeStandardToolStripMenuItem + // + this.menuModeStandardToolStripMenuItem.Name = "menuModeStandardToolStripMenuItem"; + this.menuModeStandardToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.menuModeStandardToolStripMenuItem.Text = "Standard"; + this.menuModeStandardToolStripMenuItem.Click += new System.EventHandler(this.Menu_Fullscreen_Mode_Standard_click); + // + // menuModeFullscreenToolStripMenuItem + // + this.menuModeFullscreenToolStripMenuItem.Name = "menuModeFullscreenToolStripMenuItem"; + this.menuModeFullscreenToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.menuModeFullscreenToolStripMenuItem.Text = "Fullscreen"; + this.menuModeFullscreenToolStripMenuItem.Click += new System.EventHandler(this.Menu_Fullscreen_Mode_Fullscreen_click); + // + // menuModeAllScreensToolStripMenuItem + // + this.menuModeAllScreensToolStripMenuItem.Name = "menuModeAllScreensToolStripMenuItem"; + this.menuModeAllScreensToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.menuModeAllScreensToolStripMenuItem.Text = "All screens"; + this.menuModeAllScreensToolStripMenuItem.Click += new System.EventHandler(this.Menu_Fullscreen_Mode_AllScreens_click); // // enableClickthroughToolStripMenuItem // @@ -488,7 +524,7 @@ this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.BackColor = System.Drawing.SystemColors.Control; - this.ClientSize = new System.Drawing.Size(318, 226); + this.ClientSize = new System.Drawing.Size(324, 232); this.ControlBox = false; this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow; this.HideCaption = true; @@ -555,6 +591,10 @@ private System.Windows.Forms.ToolStripMenuItem restorePositionAndSizeToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem restoreLastClonedWindowToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem settingsToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem modeToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem menuModeStandardToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem menuModeFullscreenToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem menuModeAllScreensToolStripMenuItem; } } diff --git a/OnTopReplica/MainForm.cs b/OnTopReplica/MainForm.cs index 45b6a24..9450846 100644 --- a/OnTopReplica/MainForm.cs +++ b/OnTopReplica/MainForm.cs @@ -19,13 +19,16 @@ namespace OnTopReplica { ThumbnailPanel _thumbnailPanel; //Managers - MessagePumpManager _msgPumpManager = new MessagePumpManager(); + readonly MessagePumpManager _msgPumpManager = new MessagePumpManager(); WindowListMenuManager _windowListManager; + public FullscreenFormManager FullscreenManager { get; private set; } Options _startupOptions; public MainForm(Options startupOptions) { _startupOptions = startupOptions; + + FullscreenManager = new FullscreenFormManager(this); //WinForms init pass InitializeComponent(); @@ -86,11 +89,6 @@ namespace OnTopReplica { Settings.Default.RestoreLastWindowHwnd = CurrentThumbnailWindowHandle.Handle.ToInt64(); Settings.Default.RestoreLastWindowClass = CurrentThumbnailWindowHandle.Class; } - else { - Settings.Default.RestoreLastWindowTitle = string.Empty; - Settings.Default.RestoreLastWindowHwnd = 0; - Settings.Default.RestoreLastWindowClass = string.Empty; - } _msgPumpManager.Dispose(); Program.Platform.CloseForm(this); @@ -126,7 +124,7 @@ namespace OnTopReplica { //HACK: sometimes, even if TopMost is true, the window loses its "always on top" status. // This is a fix attempt that probably won't work... - if (!IsFullscreen) { //fullscreen mode doesn't use TopMost + if (!FullscreenManager.IsFullscreen) { //fullscreen mode doesn't use TopMost TopMost = false; TopMost = true; } @@ -135,7 +133,7 @@ namespace OnTopReplica { protected override void OnMouseWheel(MouseEventArgs e) { base.OnMouseWheel(e); - if (!IsFullscreen) { + if (!FullscreenManager.IsFullscreen) { int change = (int)(e.Delta / 6.0); //assumes a mouse wheel "tick" is in the 80-120 range AdjustSize(change); RefreshScreenLock(); @@ -148,7 +146,7 @@ namespace OnTopReplica { //This is handled by the WM_NCLBUTTONDBLCLK msg handler usually (because the GlassForm translates //clicks on client to clicks on caption). But if fullscreen mode disables GlassForm dragging, we need //this auxiliary handler to switch mode. - IsFullscreen = !IsFullscreen; + FullscreenManager.Toggle(); } protected override void OnMouseClick(MouseEventArgs e) { @@ -181,7 +179,7 @@ namespace OnTopReplica { case WM.NCLBUTTONDBLCLK: //Toggle fullscreen mode if double click on caption (whole glass area) if (m.WParam.ToInt32() == HT.CAPTION) { - IsFullscreen = !IsFullscreen; + FullscreenManager.Toggle(); m.Result = IntPtr.Zero; return; @@ -211,7 +209,7 @@ namespace OnTopReplica { if (e.Modifiers == Keys.Alt) { if (e.KeyCode == Keys.Enter) { e.Handled = true; - IsFullscreen = !IsFullscreen; + FullscreenManager.Toggle(); } else if (e.KeyCode == Keys.D1 || e.KeyCode == Keys.NumPad1) { @@ -235,7 +233,7 @@ namespace OnTopReplica { //F11 Fullscreen switch else if (e.KeyCode == Keys.F11) { e.Handled = true; - IsFullscreen = !IsFullscreen; + FullscreenManager.Toggle(); } //ESCAPE @@ -245,8 +243,8 @@ namespace OnTopReplica { ClickThroughEnabled = false; } //Toggle fullscreen - else if (IsFullscreen) { - IsFullscreen = false; + else if (FullscreenManager.IsFullscreen) { + FullscreenManager.SwitchBack(); } //Disable click forwarding else if (ClickForwardingEnabled) { @@ -257,56 +255,6 @@ namespace OnTopReplica { #endregion - #region Fullscreen - - bool _isFullscreen = false; - Point _preFullscreenLocation; - Size _preFullscreenSize; - FormBorderStyle _preFullscreenBorderStyle; - - public bool IsFullscreen { - get { - return _isFullscreen; - } - set { - if (IsFullscreen == value) - return; - if (value && !_thumbnailPanel.IsShowingThumbnail) - return; - - CloseSidePanel(); //on switch, always hide side panels - - //Location and size - if (value) { - _preFullscreenLocation = Location; - _preFullscreenSize = ClientSize; - _preFullscreenBorderStyle = FormBorderStyle; - - FormBorderStyle = FormBorderStyle.None; - var currentScreen = Screen.FromControl(this); - Size = currentScreen.WorkingArea.Size; - Location = currentScreen.WorkingArea.Location; - } - else { - FormBorderStyle = _preFullscreenBorderStyle; - Location = _preFullscreenLocation; - ClientSize = _preFullscreenSize; - RefreshAspectRatio(); - } - - //Common - GlassEnabled = !value; - TopMost = !value; - HandleMouseMove = !value; - - _isFullscreen = value; - - Program.Platform.OnFormStateChange(this); - } - } - - #endregion - #region Thumbnail operation /// @@ -322,7 +270,7 @@ namespace OnTopReplica { _thumbnailPanel.SetThumbnailHandle(handle, region); //Set aspect ratio (this will resize the form), do not refresh if in fullscreen - SetAspectRatio(_thumbnailPanel.ThumbnailPixelSize, !IsFullscreen); + SetAspectRatio(_thumbnailPanel.ThumbnailPixelSize, !FullscreenManager.IsFullscreen); } catch (Exception ex) { System.Diagnostics.Trace.Fail("Unable to set thumbnail.", ex.ToString()); diff --git a/OnTopReplica/MainForm_Gui.cs b/OnTopReplica/MainForm_Gui.cs index 39141fb..fe909cb 100644 --- a/OnTopReplica/MainForm_Gui.cs +++ b/OnTopReplica/MainForm_Gui.cs @@ -14,7 +14,7 @@ namespace OnTopReplica { if (position.HasValue) menuPosition = position.Value; - if (IsFullscreen) { + if (FullscreenManager.IsFullscreen) { menuFullscreenContext.Show(menuPosition); } else { @@ -71,7 +71,7 @@ namespace OnTopReplica { /// public void EnsureMainFormVisible() { //Reset special modes - IsFullscreen = false; + FullscreenManager.SwitchBack(); ClickThroughEnabled = false; Opacity = 1.0; diff --git a/OnTopReplica/MainForm_MenuEvents.cs b/OnTopReplica/MainForm_MenuEvents.cs index fbf6d99..eb9ad0c 100644 --- a/OnTopReplica/MainForm_MenuEvents.cs +++ b/OnTopReplica/MainForm_MenuEvents.cs @@ -11,7 +11,7 @@ namespace OnTopReplica { private void Menu_opening(object sender, CancelEventArgs e) { //Cancel if currently in "fullscreen" mode or a side panel is open - if (IsFullscreen || IsSidePanelOpen) { + if (FullscreenManager.IsFullscreen || IsSidePanelOpen) { e.Cancel = true; return; } @@ -111,7 +111,7 @@ namespace OnTopReplica { } private void Menu_Resize_Fullscreen(object sender, EventArgs e) { - IsFullscreen = true; + FullscreenManager.SwitchFullscreen(); } private void Menu_Resize_RecallPosition_click(object sender, EventArgs e) { @@ -173,7 +173,30 @@ namespace OnTopReplica { } private void Menu_Fullscreen_ExitFullscreen_click(object sender, EventArgs e) { - IsFullscreen = false; + FullscreenManager.SwitchBack(); + } + + private void Menu_Fullscreen_Mode_opening(object sender, EventArgs e) { + var mode = Settings.Default.GetFullscreenMode(); + + menuModeStandardToolStripMenuItem.Checked = (mode == FullscreenMode.Standard); + menuModeFullscreenToolStripMenuItem.Checked = (mode == FullscreenMode.Fullscreen); + menuModeAllScreensToolStripMenuItem.Checked = (mode == FullscreenMode.AllScreens); + } + + private void Menu_Fullscreen_Mode_Standard_click(object sender, EventArgs e) { + Settings.Default.SetFullscreenMode(FullscreenMode.Standard); + FullscreenManager.SwitchFullscreen(FullscreenMode.Standard); + } + + private void Menu_Fullscreen_Mode_Fullscreen_click(object sender, EventArgs e) { + Settings.Default.SetFullscreenMode(FullscreenMode.Fullscreen); + FullscreenManager.SwitchFullscreen(FullscreenMode.Fullscreen); + } + + private void Menu_Fullscreen_Mode_AllScreens_click(object sender, EventArgs e) { + Settings.Default.SetFullscreenMode(FullscreenMode.AllScreens); + FullscreenManager.SwitchFullscreen(FullscreenMode.AllScreens); } } diff --git a/OnTopReplica/MessagePumpProcessors/HotKeyManager.cs b/OnTopReplica/MessagePumpProcessors/HotKeyManager.cs index 7b1b93e..ab68d38 100644 --- a/OnTopReplica/MessagePumpProcessors/HotKeyManager.cs +++ b/OnTopReplica/MessagePumpProcessors/HotKeyManager.cs @@ -139,8 +139,7 @@ namespace OnTopReplica.MessagePumpProcessors { /// between shown and hidden states. /// void HotKeyShowHideHandler() { - if (Form.IsFullscreen) - Form.IsFullscreen = false; + Form.FullscreenManager.SwitchBack(); if (!Program.Platform.IsHidden(Form)) { Program.Platform.HideForm(Form); diff --git a/OnTopReplica/OnTopReplica.csproj b/OnTopReplica/OnTopReplica.csproj index 0a59067..0f3f4cf 100644 --- a/OnTopReplica/OnTopReplica.csproj +++ b/OnTopReplica/OnTopReplica.csproj @@ -106,6 +106,8 @@ + + Component @@ -367,6 +369,8 @@ + + Always diff --git a/OnTopReplica/Platforms/WindowsSeven.cs b/OnTopReplica/Platforms/WindowsSeven.cs index 9d768a9..c24ee7c 100644 --- a/OnTopReplica/Platforms/WindowsSeven.cs +++ b/OnTopReplica/Platforms/WindowsSeven.cs @@ -41,7 +41,7 @@ namespace OnTopReplica.Platforms { /// Used to alter the window style. Not used anymore. /// private void SetWindowStyle(MainForm form) { - if (!form.IsFullscreen) { + if (!form.FullscreenManager.IsFullscreen) { //This hides the app from ALT+TAB //Note that when minimized, it will be shown as an (ugly) minimized tool window //thus we do not minimize, but set to transparent when hiding diff --git a/OnTopReplica/Properties/Resources.Designer.cs b/OnTopReplica/Properties/Resources.Designer.cs new file mode 100644 index 0000000..f094914 --- /dev/null +++ b/OnTopReplica/Properties/Resources.Designer.cs @@ -0,0 +1,453 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.18051 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace OnTopReplica.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OnTopReplica.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap back { + get { + object obj = ResourceManager.GetObject("back", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap clickforwarding { + get { + object obj = ResourceManager.GetObject("clickforwarding", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap close_new { + get { + object obj = ResourceManager.GetObject("close_new", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap desktop { + get { + object obj = ResourceManager.GetObject("desktop", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap flag_czech { + get { + object obj = ResourceManager.GetObject("flag_czech", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap flag_danish { + get { + object obj = ResourceManager.GetObject("flag_danish", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap flag_germany { + get { + object obj = ResourceManager.GetObject("flag_germany", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap flag_ita { + get { + object obj = ResourceManager.GetObject("flag_ita", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap flag_poland { + get { + object obj = ResourceManager.GetObject("flag_poland", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap flag_spanish { + get { + object obj = ResourceManager.GetObject("flag_spanish", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap flag_usa { + get { + object obj = ResourceManager.GetObject("flag_usa", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap fullscreen { + get { + object obj = ResourceManager.GetObject("fullscreen", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap groupmode { + get { + object obj = ResourceManager.GetObject("groupmode", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap help { + get { + object obj = ResourceManager.GetObject("help", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icon { + get { + object obj = ResourceManager.GetObject("icon", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon icon_new { + get { + object obj = ResourceManager.GetObject("icon_new", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap list { + get { + object obj = ResourceManager.GetObject("list", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap minimize { + get { + object obj = ResourceManager.GetObject("minimize", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap pos_bottomleft { + get { + object obj = ResourceManager.GetObject("pos_bottomleft", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap pos_bottomright { + get { + object obj = ResourceManager.GetObject("pos_bottomright", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap pos_center { + get { + object obj = ResourceManager.GetObject("pos_center", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap pos_null { + get { + object obj = ResourceManager.GetObject("pos_null", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap pos_topleft { + get { + object obj = ResourceManager.GetObject("pos_topleft", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap pos_topright { + get { + object obj = ResourceManager.GetObject("pos_topright", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap refresh { + get { + object obj = ResourceManager.GetObject("refresh", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap regions { + get { + object obj = ResourceManager.GetObject("regions", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap window_border16 { + get { + object obj = ResourceManager.GetObject("window_border16", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap window_multiple16 { + get { + object obj = ResourceManager.GetObject("window_multiple16", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap window_opacity { + get { + object obj = ResourceManager.GetObject("window_opacity", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap window_switch { + get { + object obj = ResourceManager.GetObject("window_switch", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap window16 { + get { + object obj = ResourceManager.GetObject("window16", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap xiao_add { + get { + object obj = ResourceManager.GetObject("xiao_add", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap xiao_arrow { + get { + object obj = ResourceManager.GetObject("xiao_arrow", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap xiao_component { + get { + object obj = ResourceManager.GetObject("xiao_component", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap xiao_delete { + get { + object obj = ResourceManager.GetObject("xiao_delete", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap xiao_down { + get { + object obj = ResourceManager.GetObject("xiao_down", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap xiao_ok { + get { + object obj = ResourceManager.GetObject("xiao_ok", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap xiao_up { + get { + object obj = ResourceManager.GetObject("xiao_up", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap xiao_wrench { + get { + object obj = ResourceManager.GetObject("xiao_wrench", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + } +} diff --git a/OnTopReplica/Properties/Resources.resx b/OnTopReplica/Properties/Resources.resx index b097806..d5899e8 100644 --- a/OnTopReplica/Properties/Resources.resx +++ b/OnTopReplica/Properties/Resources.resx @@ -112,10 +112,10 @@ 2.0 - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 @@ -163,9 +163,6 @@ ..\Assets\newicon.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Assets\xiao_help.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Assets\back.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -190,9 +187,6 @@ ..\Assets\flag_danish.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Assets\reduce.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Assets\xiao_ok.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -232,8 +226,13 @@ ..\Assets\flag_poland.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Assets\flag_germany.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\minimize.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + \ No newline at end of file diff --git a/OnTopReplica/Properties/Settings.Designer.cs b/OnTopReplica/Properties/Settings.Designer.cs new file mode 100644 index 0000000..b5038b9 --- /dev/null +++ b/OnTopReplica/Properties/Settings.Designer.cs @@ -0,0 +1,241 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.18051 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace OnTopReplica.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::OnTopReplica.StoredRegionArray SavedRegions { + get { + return ((global::OnTopReplica.StoredRegionArray)(this["SavedRegions"])); + } + set { + this["SavedRegions"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("255")] + public byte Opacity { + get { + return ((byte)(this["Opacity"])); + } + set { + this["Opacity"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("(Default)")] + public global::System.Globalization.CultureInfo Language { + get { + return ((global::System.Globalization.CultureInfo)(this["Language"])); + } + set { + this["Language"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool MustUpdate { + get { + return ((bool)(this["MustUpdate"])); + } + set { + this["MustUpdate"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool ClickThrough { + get { + return ((bool)(this["ClickThrough"])); + } + set { + this["ClickThrough"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool FirstTimeClickThrough { + get { + return ((bool)(this["FirstTimeClickThrough"])); + } + set { + this["FirstTimeClickThrough"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool FirstTimeClickForwarding { + get { + return ((bool)(this["FirstTimeClickForwarding"])); + } + set { + this["FirstTimeClickForwarding"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool FullscreenAlwaysOnTop { + get { + return ((bool)(this["FullscreenAlwaysOnTop"])); + } + set { + this["FullscreenAlwaysOnTop"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool RestoreSizeAndPosition { + get { + return ((bool)(this["RestoreSizeAndPosition"])); + } + set { + this["RestoreSizeAndPosition"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] + public global::System.Drawing.Size RestoreLastSize { + get { + return ((global::System.Drawing.Size)(this["RestoreLastSize"])); + } + set { + this["RestoreLastSize"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] + public global::System.Drawing.Point RestoreLastPosition { + get { + return ((global::System.Drawing.Point)(this["RestoreLastPosition"])); + } + set { + this["RestoreLastPosition"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool RestoreLastWindow { + get { + return ((bool)(this["RestoreLastWindow"])); + } + set { + this["RestoreLastWindow"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string RestoreLastWindowClass { + get { + return ((string)(this["RestoreLastWindowClass"])); + } + set { + this["RestoreLastWindowClass"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string RestoreLastWindowTitle { + get { + return ((string)(this["RestoreLastWindowTitle"])); + } + set { + this["RestoreLastWindowTitle"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0")] + public long RestoreLastWindowHwnd { + get { + return ((long)(this["RestoreLastWindowHwnd"])); + } + set { + this["RestoreLastWindowHwnd"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("[CTRL]+[SHIFT]+C")] + public string HotKeyCloneCurrent { + get { + return ((string)(this["HotKeyCloneCurrent"])); + } + set { + this["HotKeyCloneCurrent"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("[CTRL]+[SHIFT]+O")] + public string HotKeyShowHide { + get { + return ((string)(this["HotKeyShowHide"])); + } + set { + this["HotKeyShowHide"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Standard")] + public string FullscreenMode { + get { + return ((string)(this["FullscreenMode"])); + } + set { + this["FullscreenMode"] = value; + } + } + } +} diff --git a/OnTopReplica/Properties/Settings.settings b/OnTopReplica/Properties/Settings.settings index fb6e917..5535ca5 100644 --- a/OnTopReplica/Properties/Settings.settings +++ b/OnTopReplica/Properties/Settings.settings @@ -53,5 +53,8 @@ [CTRL]+[SHIFT]+O + + Standard + \ No newline at end of file diff --git a/OnTopReplica/Resources/help.png b/OnTopReplica/Resources/help.png new file mode 100644 index 0000000..299ccbf Binary files /dev/null and b/OnTopReplica/Resources/help.png differ diff --git a/OnTopReplica/Resources/minimize.png b/OnTopReplica/Resources/minimize.png new file mode 100644 index 0000000..f6684e5 Binary files /dev/null and b/OnTopReplica/Resources/minimize.png differ diff --git a/OnTopReplica/SidePanelContainer.Designer.cs b/OnTopReplica/SidePanelContainer.Designer.cs index 56103f0..1c6f3e1 100644 --- a/OnTopReplica/SidePanelContainer.Designer.cs +++ b/OnTopReplica/SidePanelContainer.Designer.cs @@ -27,9 +27,9 @@ // // SidePanelContainer // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(246, 300); + this.ClientSize = new System.Drawing.Size(287, 346); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow; this.MinimizeBox = false; this.Name = "SidePanelContainer"; diff --git a/OnTopReplica/SidePanelContainer.resx b/OnTopReplica/SidePanelContainer.resx index 5ea0895..29dcb1b 100644 --- a/OnTopReplica/SidePanelContainer.resx +++ b/OnTopReplica/SidePanelContainer.resx @@ -112,9 +112,9 @@ 2.0 - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 \ No newline at end of file diff --git a/OnTopReplica/SidePanels/AboutPanel.cs b/OnTopReplica/SidePanels/AboutPanel.cs index 87da71a..679c2d3 100644 --- a/OnTopReplica/SidePanels/AboutPanel.cs +++ b/OnTopReplica/SidePanels/AboutPanel.cs @@ -1,4 +1,5 @@ -using System; +using OnTopReplica.Properties; +using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; diff --git a/OnTopReplica/StartupOptions/Options.cs b/OnTopReplica/StartupOptions/Options.cs index d36e2bb..35f1b4e 100644 --- a/OnTopReplica/StartupOptions/Options.cs +++ b/OnTopReplica/StartupOptions/Options.cs @@ -152,7 +152,7 @@ namespace OnTopReplica.StartupOptions { //Fullscreen if (Fullscreen) { - form.IsFullscreen = true; + form.FullscreenManager.SwitchFullscreen(); } } diff --git a/OnTopReplica/Strings.Designer.cs b/OnTopReplica/Strings.Designer.cs new file mode 100644 index 0000000..d1ed777 --- /dev/null +++ b/OnTopReplica/Strings.Designer.cs @@ -0,0 +1,1644 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.18051 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace OnTopReplica { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Strings { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Strings() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OnTopReplica.Strings", typeof(Strings).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized string similar to Created by: %.. + /// + internal static string AboutAuthor { + get { + return ResourceManager.GetString("AboutAuthor", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Lorenz Cuno Klopfenstein. + /// + internal static string AboutAuthorContent { + get { + return ResourceManager.GetString("AboutAuthorContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Abort update process.. + /// + internal static string AboutButtonCancelTT { + get { + return ResourceManager.GetString("AboutButtonCancelTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show details about OnTopReplica.. + /// + internal static string AboutButtonExpanderTT { + get { + return ResourceManager.GetString("AboutButtonExpanderTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset all OnTopReplica settings.. + /// + internal static string AboutButtonResetTT { + get { + return ResourceManager.GetString("AboutButtonResetTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Update OnTopReplica now.. + /// + internal static string AboutButtonUpdateTT { + get { + return ResourceManager.GetString("AboutButtonUpdateTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Care to contribute to the project? You are welcome to improve available translations, start a new one for your native language or to check out the % from CodePlex.. + /// + internal static string AboutContribute { + get { + return ResourceManager.GetString("AboutContribute", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to source code. + /// + internal static string AboutContributeContent { + get { + return ResourceManager.GetString("AboutContributeContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica is based upon the WindowsFormsAero library and some other libraries and code sources. %.. + /// + internal static string AboutCreditsSources { + get { + return ResourceManager.GetString("AboutCreditsSources", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Read the full credits. + /// + internal static string AboutCreditsSourcesContent { + get { + return ResourceManager.GetString("AboutCreditsSourcesContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Contribute. + /// + internal static string AboutDividerContribute { + get { + return ResourceManager.GetString("AboutDividerContribute", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Credits. + /// + internal static string AboutDividerCredits { + get { + return ResourceManager.GetString("AboutDividerCredits", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to License. + /// + internal static string AboutDividerLicense { + get { + return ResourceManager.GetString("AboutDividerLicense", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Updates. + /// + internal static string AboutDividerUpdates { + get { + return ResourceManager.GetString("AboutDividerUpdates", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The application is licensed under the % license, which meets the terms of the "open-source" definition specified by OSI.. + /// + internal static string AboutLicense { + get { + return ResourceManager.GetString("AboutLicense", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Microsoft Reciprocal (MS-RL). + /// + internal static string AboutLicenseContent { + get { + return ResourceManager.GetString("AboutLicenseContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to A lightweight, real-time, always on top thumbnail of a window of your choice.. + /// + internal static string AboutSlogan { + get { + return ResourceManager.GetString("AboutSlogan", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to About OnTopReplica. + /// + internal static string AboutTitle { + get { + return ResourceManager.GetString("AboutTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Translators: {0}. + /// + internal static string AboutTranslators { + get { + return ResourceManager.GetString("AboutTranslators", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Christian Olaechea M., Daniel Zeus.EX, Federico Lorenzo, Goran Brecelj, Jan Romanczyk, Marco Kraxner, Patrik (batupata), Raúl Morillo, René Mihula, Roberto Leiro, Rodrigo Lourenço, Thomas Amundsen, Eric Hoffmann.. + /// + internal static string AboutTranslatorsContent { + get { + return ResourceManager.GetString("AboutTranslatorsContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Check now!. + /// + internal static string AboutUpdatesCheckNow { + get { + return ResourceManager.GetString("AboutUpdatesCheckNow", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica automatically checks for updates at every start up.. + /// + internal static string AboutUpdatesDisclaimer { + get { + return ResourceManager.GetString("AboutUpdatesDisclaimer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Version {0}. + /// + internal static string AboutVersion { + get { + return ResourceManager.GetString("AboutVersion", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica. + /// + internal static string ApplicationName { + get { + return ResourceManager.GetString("ApplicationName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset window completely?. + /// + internal static string AskReset { + get { + return ResourceManager.GetString("AskReset", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Reset + ///All settings will be lost.. + /// + internal static string AskResetButtonOk { + get { + return ResourceManager.GetString("AskResetButtonOk", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Can be used to reset all settings if you lost control over the window or moved it beyond the screen boundary.. + /// + internal static string AskResetContent { + get { + return ResourceManager.GetString("AskResetContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset. + /// + internal static string AskResetTitle { + get { + return ResourceManager.GetString("AskResetTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset settings?. + /// + internal static string AskSettingReset { + get { + return ResourceManager.GetString("AskSettingReset", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This will erase all settings of OnTopReplica, returning it to the original state right after installation (all saved information, like stored regions, will be lost).. + /// + internal static string AskSettingResetContent { + get { + return ResourceManager.GetString("AskSettingResetContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset settings. + /// + internal static string AskSettingResetTitle { + get { + return ResourceManager.GetString("AskSettingResetTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Cancel. + /// + internal static string ButtonCancel { + get { + return ResourceManager.GetString("ButtonCancel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Draw regions using mouse.. + /// + internal static string DrawRegions { + get { + return ResourceManager.GetString("DrawRegions", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Details. + /// + internal static string ErrorDetailButton { + get { + return ResourceManager.GetString("ErrorDetailButton", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Details on Windows Aero. + /// + internal static string ErrorDetailsAero { + get { + return ResourceManager.GetString("ErrorDetailsAero", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Windows Aero is only available on Windows Vista Home Premium or higher.. + /// + internal static string ErrorDetailsAeroInfo { + get { + return ResourceManager.GetString("ErrorDetailsAeroInfo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 'Desktop Composition' is not enabled.. + /// + internal static string ErrorDwmOff { + get { + return ResourceManager.GetString("ErrorDwmOff", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to You must enable desktop composition, by selecting 'Windows Aero' as the theme used by Windows. + /// + ///To do so, right-click on the desktop and click on Personalize.. + /// + internal static string ErrorDwmOffContent { + get { + return ResourceManager.GetString("ErrorDwmOffContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Error details. + /// + internal static string ErrorGenericInfoButton { + get { + return ResourceManager.GetString("ErrorGenericInfoButton", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Error: . + /// + internal static string ErrorGenericInfoText { + get { + return ResourceManager.GetString("ErrorGenericInfoText", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to It appears that the selected window has been closed or is not valid anymore.. + /// + internal static string ErrorGenericThumbnailHandleError { + get { + return ResourceManager.GetString("ErrorGenericThumbnailHandleError", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Error. + /// + internal static string ErrorGenericTitle { + get { + return ResourceManager.GetString("ErrorGenericTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Desktop Composition' is not supported on your Operating System. + ///You must run this application on Windows Vista Home Premium or better.. + /// + internal static string ErrorNoDwm { + get { + return ResourceManager.GetString("ErrorNoDwm", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Desktop Composition unsupported. + /// + internal static string ErrorNoDwmTitle { + get { + return ResourceManager.GetString("ErrorNoDwmTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No thumbnail loaded.. + /// + internal static string ErrorNoThumbnail { + get { + return ResourceManager.GetString("ErrorNoThumbnail", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Unable to create thumbnail. + /// + internal static string ErrorUnableToCreateThumbnail { + get { + return ResourceManager.GetString("ErrorUnableToCreateThumbnail", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Unable to fit window.. + /// + internal static string ErrorUnableToFit { + get { + return ResourceManager.GetString("ErrorUnableToFit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Unable to check for updates.. + /// + internal static string ErrorUpdate { + get { + return ResourceManager.GetString("ErrorUpdate", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to It appears that OnTopReplica wasn't installed using 'ClickOnce'. You'll have to update manually (visit <a href="http://ontopreplica.codeplex.com">OnTopReplica's homepage</a>).. + /// + internal static string ErrorUpdateContent { + get { + return ResourceManager.GetString("ErrorUpdateContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica was unable to check whether an updated version is available. Make sure you are connected to the Internet. If you are, the website may be temporarily down.. + /// + internal static string ErrorUpdateContentGeneric { + get { + return ResourceManager.GetString("ErrorUpdateContentGeneric", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Mode. + /// + internal static string FullscreenMode { + get { + return ResourceManager.GetString("FullscreenMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Always on top. + /// + internal static string FullscreenModeAlwaysOnTop { + get { + return ResourceManager.GetString("FullscreenModeAlwaysOnTop", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Forces OnTopReplica to stay always on top.. + /// + internal static string FullscreenModeAlwaysOnTopTT { + get { + return ResourceManager.GetString("FullscreenModeAlwaysOnTopTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Click through. + /// + internal static string FullscreenModeClickThrough { + get { + return ResourceManager.GetString("FullscreenModeClickThrough", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica will behave like a transparent overlay that lets your clicks through to the windows below.. + /// + internal static string FullscreenModeClickThroughTT { + get { + return ResourceManager.GetString("FullscreenModeClickThroughTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Standard. + /// + internal static string FullscreenModeNormal { + get { + return ResourceManager.GetString("FullscreenModeNormal", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Behaves like an ordinary window. You can bring other windows above OnTopReplica.. + /// + internal static string FullscreenModeNormalTT { + get { + return ResourceManager.GetString("FullscreenModeNormalTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica fullscreen. + /// + internal static string FullscreenTitle { + get { + return ResourceManager.GetString("FullscreenTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disable. + /// + internal static string GroupSwitchModeDisableButton { + get { + return ResourceManager.GetString("GroupSwitchModeDisableButton", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enable Group mode. + /// + internal static string GroupSwitchModeEnableButton { + get { + return ResourceManager.GetString("GroupSwitchModeEnableButton", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select multiple windows to enable.. + /// + internal static string GroupSwitchModeStatusDisabled { + get { + return ResourceManager.GetString("GroupSwitchModeStatusDisabled", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Group switch mode is enabled.. + /// + internal static string GroupSwitchModeStatusEnabled { + get { + return ResourceManager.GetString("GroupSwitchModeStatusEnabled", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Group switch mode:. + /// + internal static string GroupSwitchModeTitle { + get { + return ResourceManager.GetString("GroupSwitchModeTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Windows. + /// + internal static string GroupSwitchModeWindows { + get { + return ResourceManager.GetString("GroupSwitchModeWindows", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Homepage: www.codeplex.com/ontopreplica.. + /// + internal static string Homepage { + get { + return ResourceManager.GetString("Homepage", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do you want to enable "click forwarding"?. + /// + internal static string InfoClickForwarding { + get { + return ResourceManager.GetString("InfoClickForwarding", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to If this mode is enabled, OnTopReplica will forward all left mouse clicks to the window that is being cloned (this will allow you to do basic mouse operations on the cloned window without having to activate it). + /// + ///To exit this mode, push ESC.. + /// + internal static string InfoClickForwardingContent { + get { + return ResourceManager.GetString("InfoClickForwardingContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Click forwarding. + /// + internal static string InfoClickForwardingTitle { + get { + return ResourceManager.GetString("InfoClickForwardingTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enable Click-Through mode?. + /// + internal static string InfoClickThrough { + get { + return ResourceManager.GetString("InfoClickThrough", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Click-through only works if it has been enabled in the Resize submenu and if the window is semi-transparent.. + /// + internal static string InfoClickThroughDetails { + get { + return ResourceManager.GetString("InfoClickThroughDetails", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to In this mode the fullscreen window will behave as a partially transparent overlay, allowing you to click on the other windows behind it. + /// + ///To return to normal mode anytime, activate OnTopReplica by clicking on the task bar (or the tray icon).. + /// + internal static string InfoClickThroughInformation { + get { + return ResourceManager.GetString("InfoClickThroughInformation", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No, thank you. + ///You can enable click-through later. + /// + internal static string InfoClickThroughNo { + get { + return ResourceManager.GetString("InfoClickThroughNo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use Click-Through. + /// + internal static string InfoClickThroughOk { + get { + return ResourceManager.GetString("InfoClickThroughOk", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Click-Through mode. + /// + internal static string InfoClickThroughTitle { + get { + return ResourceManager.GetString("InfoClickThroughTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica has been updated.. + /// + internal static string InfoUpdated { + get { + return ResourceManager.GetString("InfoUpdated", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to In order to use the updated version of OnTopReplica you'll have to restart the application.. + /// + internal static string InfoUpdatedContent { + get { + return ResourceManager.GetString("InfoUpdatedContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Update successful. + /// + internal static string InfoUpdatedTitle { + get { + return ResourceManager.GetString("InfoUpdatedTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica is up to date.. + /// + internal static string InfoUpToDate { + get { + return ResourceManager.GetString("InfoUpToDate", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No update available. + /// + internal static string InfoUpToDateTitle { + get { + return ResourceManager.GetString("InfoUpToDateTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Language. + /// + internal static string Language { + get { + return ResourceManager.GetString("Language", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to About.... + /// + internal static string MenuAbout { + get { + return ResourceManager.GetString("MenuAbout", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Hides the main window and displays the "about" box.. + /// + internal static string MenuAboutTT { + get { + return ResourceManager.GetString("MenuAboutTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Advanced. + /// + internal static string MenuAdvanced { + get { + return ResourceManager.GetString("MenuAdvanced", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show window border. + /// + internal static string MenuChrome { + get { + return ResourceManager.GetString("MenuChrome", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Toggles the display of the window border.. + /// + internal static string MenuChromeTT { + get { + return ResourceManager.GetString("MenuChromeTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enable Click forwarding. + /// + internal static string MenuClickForwarding { + get { + return ResourceManager.GetString("MenuClickForwarding", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enable "click forwarding" to the cloned window.. + /// + internal static string MenuClickForwardingTT { + get { + return ResourceManager.GetString("MenuClickForwardingTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enable Click-Through. + /// + internal static string MenuClickThrough { + get { + return ResourceManager.GetString("MenuClickThrough", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica will behave like a transparent overlay that lets your clicks through to the windows below.. + /// + internal static string MenuClickThroughTT { + get { + return ResourceManager.GetString("MenuClickThroughTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Close. + /// + internal static string MenuClose { + get { + return ResourceManager.GetString("MenuClose", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Closes OnTopReplica.. + /// + internal static string MenuCloseTT { + get { + return ResourceManager.GetString("MenuCloseTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 2:1 Double. + /// + internal static string MenuFitDouble { + get { + return ResourceManager.GetString("MenuFitDouble", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Fullscreen. + /// + internal static string MenuFitFullscreen { + get { + return ResourceManager.GetString("MenuFitFullscreen", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 1:2 Half. + /// + internal static string MenuFitHalf { + get { + return ResourceManager.GetString("MenuFitHalf", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 1:1 Fit to window. + /// + internal static string MenuFitOriginal { + get { + return ResourceManager.GetString("MenuFitOriginal", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 1:4 Quarter. + /// + internal static string MenuFitQuarter { + get { + return ResourceManager.GetString("MenuFitQuarter", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Group Switch mode. + /// + internal static string MenuGroupSwitch { + get { + return ResourceManager.GetString("MenuGroupSwitch", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica will automatically clone a window from an user defined group, switching to the one least recently activated to the foreground.. + /// + internal static string MenuGroupSwitchTT { + get { + return ResourceManager.GetString("MenuGroupSwitchTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 100% (opaque). + /// + internal static string MenuOp100 { + get { + return ResourceManager.GetString("MenuOp100", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sets OnTopReplica to be completely opaque.. + /// + internal static string MenuOp100TT { + get { + return ResourceManager.GetString("MenuOp100TT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 25%. + /// + internal static string MenuOp25 { + get { + return ResourceManager.GetString("MenuOp25", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sets OnTopReplica to 25% opacity.. + /// + internal static string MenuOp25TT { + get { + return ResourceManager.GetString("MenuOp25TT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 50%. + /// + internal static string MenuOp50 { + get { + return ResourceManager.GetString("MenuOp50", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sets OnTopReplica to 50% opacity.. + /// + internal static string MenuOp50TT { + get { + return ResourceManager.GetString("MenuOp50TT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 75%. + /// + internal static string MenuOp75 { + get { + return ResourceManager.GetString("MenuOp75", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sets OnTopReplica to 75% opacity.. + /// + internal static string MenuOp75TT { + get { + return ResourceManager.GetString("MenuOp75TT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Opacity. + /// + internal static string MenuOpacity { + get { + return ResourceManager.GetString("MenuOpacity", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Open. + /// + internal static string MenuOpen { + get { + return ResourceManager.GetString("MenuOpen", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Displays OnTopReplica.. + /// + internal static string MenuOpenTT { + get { + return ResourceManager.GetString("MenuOpenTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bottom Left. + /// + internal static string MenuPosBottomLeft { + get { + return ResourceManager.GetString("MenuPosBottomLeft", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bottom Right. + /// + internal static string MenuPosBottomRight { + get { + return ResourceManager.GetString("MenuPosBottomRight", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Center. + /// + internal static string MenuPosCenter { + get { + return ResourceManager.GetString("MenuPosCenter", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disabled. + /// + internal static string MenuPosDisabled { + get { + return ResourceManager.GetString("MenuPosDisabled", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Position lock. + /// + internal static string MenuPosition { + get { + return ResourceManager.GetString("MenuPosition", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Automatically position OnTopReplica on the current screen.. + /// + internal static string MenuPositionTT { + get { + return ResourceManager.GetString("MenuPositionTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Top Left. + /// + internal static string MenuPosTopLeft { + get { + return ResourceManager.GetString("MenuPosTopLeft", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Top Right. + /// + internal static string MenuPosTopRight { + get { + return ResourceManager.GetString("MenuPosTopRight", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Quit fullscreen mode. + /// + internal static string MenuQuitFullscreen { + get { + return ResourceManager.GetString("MenuQuitFullscreen", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Recall last position and size. + /// + internal static string MenuRecall { + get { + return ResourceManager.GetString("MenuRecall", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Toggles whether OnTopReplica should store its last position and size and use them when it is restarted.. + /// + internal static string MenuRecallTT { + get { + return ResourceManager.GetString("MenuRecallTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Minimize. + /// + internal static string MenuReduce { + get { + return ResourceManager.GetString("MenuReduce", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Minimizes OnTopReplica to the task bar (or the tray).. + /// + internal static string MenuReduceTT { + get { + return ResourceManager.GetString("MenuReduceTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select region.... + /// + internal static string MenuRegion { + get { + return ResourceManager.GetString("MenuRegion", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Switches to "region mode", that allows you to select a limited region of the source's window as thumbnail.. + /// + internal static string MenuRegionTT { + get { + return ResourceManager.GetString("MenuRegionTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset window. + /// + internal static string MenuReset { + get { + return ResourceManager.GetString("MenuReset", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Resets OnTopReplica settings and its main window.. + /// + internal static string MenuResetTT { + get { + return ResourceManager.GetString("MenuResetTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Resize. + /// + internal static string MenuResize { + get { + return ResourceManager.GetString("MenuResize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Restore last cloned window. + /// + internal static string MenuRestoreLast { + get { + return ResourceManager.GetString("MenuRestoreLast", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to When enabled, OnTopReplica will attempt to restore the last cloned window on start up.. + /// + internal static string MenuRestoreLastTT { + get { + return ResourceManager.GetString("MenuRestoreLastTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Settings.... + /// + internal static string MenuSettings { + get { + return ResourceManager.GetString("MenuSettings", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Displays the settings panel.. + /// + internal static string MenuSettingsTT { + get { + return ResourceManager.GetString("MenuSettingsTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Switch to window. + /// + internal static string MenuSwitch { + get { + return ResourceManager.GetString("MenuSwitch", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Switches to the source window and hides OnTopReplica.. + /// + internal static string MenuSwitchTT { + get { + return ResourceManager.GetString("MenuSwitchTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select window. + /// + internal static string MenuWindows { + get { + return ResourceManager.GetString("MenuWindows", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to - none -. + /// + internal static string MenuWindowsNone { + get { + return ResourceManager.GetString("MenuWindowsNone", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Displays a list of window you can select as thumbnail source.. + /// + internal static string MenuWindowsTT { + get { + return ResourceManager.GetString("MenuWindowsTT", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to - whole -. + /// + internal static string MenuWindowsWholeRegion { + get { + return ResourceManager.GetString("MenuWindowsWholeRegion", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bottom. + /// + internal static string RegionsBottom { + get { + return ResourceManager.GetString("RegionsBottom", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Current region:. + /// + internal static string RegionsCurrentRegion { + get { + return ResourceManager.GetString("RegionsCurrentRegion", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete. + /// + internal static string RegionsDeleteButton { + get { + return ResourceManager.GetString("RegionsDeleteButton", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Done. + /// + internal static string RegionsDoneButton { + get { + return ResourceManager.GetString("RegionsDoneButton", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Height. + /// + internal static string RegionsHeight { + get { + return ResourceManager.GetString("RegionsHeight", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Left. + /// + internal static string RegionsLeft { + get { + return ResourceManager.GetString("RegionsLeft", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset. + /// + internal static string RegionsResetButton { + get { + return ResourceManager.GetString("RegionsResetButton", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Right. + /// + internal static string RegionsRight { + get { + return ResourceManager.GetString("RegionsRight", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Save. + /// + internal static string RegionsSaveButton { + get { + return ResourceManager.GetString("RegionsSaveButton", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Stored regions. + /// + internal static string RegionsStoredRegions { + get { + return ResourceManager.GetString("RegionsStoredRegions", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Regions:. + /// + internal static string RegionsTitle { + get { + return ResourceManager.GetString("RegionsTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Top. + /// + internal static string RegionsTop { + get { + return ResourceManager.GetString("RegionsTop", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Width. + /// + internal static string RegionsWidth { + get { + return ResourceManager.GetString("RegionsWidth", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to X. + /// + internal static string RegionsX { + get { + return ResourceManager.GetString("RegionsX", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Y. + /// + internal static string RegionsY { + get { + return ResourceManager.GetString("RegionsY", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Right-click here to start.... + /// + internal static string RightClick { + get { + return ResourceManager.GetString("RightClick", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Clone current window. + /// + internal static string SettingsHotKeyClone { + get { + return ResourceManager.GetString("SettingsHotKeyClone", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to These system-wide shortcuts can also be used when OnTopReplica is not in focus.. + /// + internal static string SettingsHotKeyDescription { + get { + return ResourceManager.GetString("SettingsHotKeyDescription", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show/Hide. + /// + internal static string SettingsHotKeyShowHide { + get { + return ResourceManager.GetString("SettingsHotKeyShowHide", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Hot keys:. + /// + internal static string SettingsHotKeyTitle { + get { + return ResourceManager.GetString("SettingsHotKeyTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Language:. + /// + internal static string SettingsLanguageTitle { + get { + return ResourceManager.GetString("SettingsLanguageTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Requires a restart.. + /// + internal static string SettingsRestartRequired { + get { + return ResourceManager.GetString("SettingsRestartRequired", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Settings. + /// + internal static string SettingsTitle { + get { + return ResourceManager.GetString("SettingsTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cancel update + ///OnTopReplica will prompt you the next time it is started.. + /// + internal static string UpdateAvailableCommandCancel { + get { + return ResourceManager.GetString("UpdateAvailableCommandCancel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Download + ///Install OnTopReplica {0}.. + /// + internal static string UpdateAvailableCommandOk { + get { + return ResourceManager.GetString("UpdateAvailableCommandOk", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The new version can be downloaded and installed from the official website.. + /// + internal static string UpdateAvailableContent { + get { + return ResourceManager.GetString("UpdateAvailableContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Installed version: {0} + ///Available version: {1}. + /// + internal static string UpdateAvailableExpanded { + get { + return ResourceManager.GetString("UpdateAvailableExpanded", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Version {0} available. + /// + internal static string UpdateAvailableInstruction { + get { + return ResourceManager.GetString("UpdateAvailableInstruction", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to {0}/{1} bytes downloaded.. + /// + internal static string UpdateDownloadingContent { + get { + return ResourceManager.GetString("UpdateDownloadingContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Downloading.... + /// + internal static string UpdateDownloadingInstruction { + get { + return ResourceManager.GetString("UpdateDownloadingInstruction", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The latest version of OnTopReplica is already installed. The program automatically checks for updates at every start. + /// + ///You can keep up to date about OnTopReplica's development, suggest improvements and new features by <a href="website">visiting the official website</a>.. + /// + internal static string UpdateInfoContent { + get { + return ResourceManager.GetString("UpdateInfoContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Latest stable version released on {0}.. + /// + internal static string UpdateInfoFooter { + get { + return ResourceManager.GetString("UpdateInfoFooter", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica is up to date. + /// + internal static string UpdateInfoInstruction { + get { + return ResourceManager.GetString("UpdateInfoInstruction", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Install + ///OnTopReplica will be closed and the update installed.. + /// + internal static string UpdateReadyCommandOk { + get { + return ResourceManager.GetString("UpdateReadyCommandOk", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica version {0} is ready to be installed on your computer.. + /// + internal static string UpdateReadyContent { + get { + return ResourceManager.GetString("UpdateReadyContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Update ready. + /// + internal static string UpdateReadyInstruction { + get { + return ResourceManager.GetString("UpdateReadyInstruction", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to OnTopReplica updates. + /// + internal static string UpdateTitle { + get { + return ResourceManager.GetString("UpdateTitle", resourceCulture); + } + } + } +} diff --git a/OnTopReplica/app.config b/OnTopReplica/app.config index d5be21d..06326b9 100644 --- a/OnTopReplica/app.config +++ b/OnTopReplica/app.config @@ -41,10 +41,10 @@ False - + - + 0 @@ -55,6 +55,9 @@ [CTRL]+[SHIFT]+O + + Standard +