From ccb35bdc5a82fff9fa6c804995b2153edb31c482 Mon Sep 17 00:00:00 2001 From: David Sparer Date: Tue, 7 Feb 2017 10:33:34 -0700 Subject: [PATCH] factored out tools menu to new class --- mRemoteV1/UI/Forms/frmMain.Designer.cs | 125 +++---------------- mRemoteV1/UI/Forms/frmMain.cs | 59 +-------- mRemoteV1/UI/Menu/HelpMenu.cs | 11 ++ mRemoteV1/UI/Menu/ToolsMenu.cs | 161 +++++++++++++++++++++++++ mRemoteV1/mRemoteV1.csproj | 4 + 5 files changed, 196 insertions(+), 164 deletions(-) create mode 100644 mRemoteV1/UI/Menu/HelpMenu.cs create mode 100644 mRemoteV1/UI/Menu/ToolsMenu.cs diff --git a/mRemoteV1/UI/Forms/frmMain.Designer.cs b/mRemoteV1/UI/Forms/frmMain.Designer.cs index b13f83183..5f57d27fe 100644 --- a/mRemoteV1/UI/Forms/frmMain.Designer.cs +++ b/mRemoteV1/UI/Forms/frmMain.Designer.cs @@ -34,14 +34,6 @@ namespace mRemoteNG.UI.Forms this.mMenFile = new System.Windows.Forms.ToolStripMenuItem(); this.mMenView = new System.Windows.Forms.ToolStripMenuItem(); this.mMenTools = new System.Windows.Forms.ToolStripMenuItem(); - this.credentialManagerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.mMenToolsSSHTransfer = new System.Windows.Forms.ToolStripMenuItem(); - this.mMenToolsUVNCSC = new System.Windows.Forms.ToolStripMenuItem(); - this.mMenToolsExternalApps = new System.Windows.Forms.ToolStripMenuItem(); - this.mMenToolsPortScan = new System.Windows.Forms.ToolStripMenuItem(); - this.mMenToolsSep1 = new System.Windows.Forms.ToolStripSeparator(); - this.mMenToolsComponentsCheck = new System.Windows.Forms.ToolStripMenuItem(); - this.mMenToolsOptions = new System.Windows.Forms.ToolStripMenuItem(); this.mMenInfo = new System.Windows.Forms.ToolStripMenuItem(); this.mMenInfoHelp = new System.Windows.Forms.ToolStripMenuItem(); this.mMenInfoSep1 = new System.Windows.Forms.ToolStripSeparator(); @@ -50,8 +42,8 @@ namespace mRemoteNG.UI.Forms this.mMenInfoForum = new System.Windows.Forms.ToolStripMenuItem(); this.mMenInfoBugReport = new System.Windows.Forms.ToolStripMenuItem(); this.ToolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); - this.mMenToolsUpdate = new System.Windows.Forms.ToolStripMenuItem(); this.mMenInfoSep2 = new System.Windows.Forms.ToolStripSeparator(); + this.mMenToolsUpdate = new System.Windows.Forms.ToolStripMenuItem(); this.mMenInfoAbout = new System.Windows.Forms.ToolStripMenuItem(); this.mMenSep3 = new System.Windows.Forms.ToolStripSeparator(); this.lblQuickConnect = new System.Windows.Forms.ToolStripLabel(); @@ -59,11 +51,11 @@ namespace mRemoteNG.UI.Forms this.tsContainer = new System.Windows.Forms.ToolStripContainer(); this.tsExternalTools = new System.Windows.Forms.ToolStrip(); this.cMenExtAppsToolbar = new System.Windows.Forms.ContextMenuStrip(this.components); - this.cMenToolbarShowText = new System.Windows.Forms.ToolStripMenuItem(); this.tsQuickConnect = new System.Windows.Forms.ToolStrip(); this.btnQuickConnect = new mRemoteNG.UI.Controls.ToolStripSplitButton(); this.mnuQuickConnectProtocol = new System.Windows.Forms.ContextMenuStrip(this.components); this.btnConnections = new System.Windows.Forms.ToolStripDropDownButton(); + this.cMenToolbarShowText = new System.Windows.Forms.ToolStripMenuItem(); this.mnuConnections = new System.Windows.Forms.ContextMenuStrip(this.components); this.tmrAutoSave = new System.Windows.Forms.Timer(this.components); this.msMain.SuspendLayout(); @@ -92,7 +84,6 @@ namespace mRemoteNG.UI.Forms this.msMain.Dock = System.Windows.Forms.DockStyle.None; this.msMain.GripMargin = new System.Windows.Forms.Padding(0); this.msMain.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.mMenTools, this.mMenInfo}); this.msMain.Location = new System.Drawing.Point(3, 0); this.msMain.Name = "msMain"; @@ -101,84 +92,15 @@ namespace mRemoteNG.UI.Forms this.msMain.Stretch = false; this.msMain.TabIndex = 16; this.msMain.Text = "Main Toolbar"; - // - // mMenTools + // cMenToolbarShowText // - this.mMenTools.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.credentialManagerToolStripMenuItem, - this.mMenToolsSSHTransfer, - this.mMenToolsUVNCSC, - this.mMenToolsExternalApps, - this.mMenToolsPortScan, - this.mMenToolsSep1, - this.mMenToolsComponentsCheck, - this.mMenToolsOptions}); - this.mMenTools.Name = "mMenTools"; - this.mMenTools.Size = new System.Drawing.Size(48, 20); - this.mMenTools.Text = "&Tools"; - // - // credentialManagerToolStripMenuItem - // - this.credentialManagerToolStripMenuItem.Image = global::mRemoteNG.Resources.key; - this.credentialManagerToolStripMenuItem.Name = "credentialManagerToolStripMenuItem"; - this.credentialManagerToolStripMenuItem.Size = new System.Drawing.Size(184, 22); - this.credentialManagerToolStripMenuItem.Text = "Credential Manager"; - this.credentialManagerToolStripMenuItem.Click += new System.EventHandler(this.credentialManagerToolStripMenuItem_Click); - // - // mMenToolsSSHTransfer - // - this.mMenToolsSSHTransfer.Image = global::mRemoteNG.Resources.SSHTransfer; - this.mMenToolsSSHTransfer.Name = "mMenToolsSSHTransfer"; - this.mMenToolsSSHTransfer.Size = new System.Drawing.Size(184, 22); - this.mMenToolsSSHTransfer.Text = "SSH File Transfer"; - this.mMenToolsSSHTransfer.Click += new System.EventHandler(this.mMenToolsSSHTransfer_Click); - // - // mMenToolsUVNCSC - // - this.mMenToolsUVNCSC.Image = global::mRemoteNG.Resources.UVNC_SC; - this.mMenToolsUVNCSC.Name = "mMenToolsUVNCSC"; - this.mMenToolsUVNCSC.Size = new System.Drawing.Size(184, 22); - this.mMenToolsUVNCSC.Text = "UltraVNC SingleClick"; - this.mMenToolsUVNCSC.Visible = false; - this.mMenToolsUVNCSC.Click += new System.EventHandler(this.mMenToolsUVNCSC_Click); - // - // mMenToolsExternalApps - // - this.mMenToolsExternalApps.Image = global::mRemoteNG.Resources.ExtApp; - this.mMenToolsExternalApps.Name = "mMenToolsExternalApps"; - this.mMenToolsExternalApps.Size = new System.Drawing.Size(184, 22); - this.mMenToolsExternalApps.Text = "External Applications"; - this.mMenToolsExternalApps.Click += new System.EventHandler(this.mMenToolsExternalApps_Click); - // - // mMenToolsPortScan - // - this.mMenToolsPortScan.Image = global::mRemoteNG.Resources.PortScan; - this.mMenToolsPortScan.Name = "mMenToolsPortScan"; - this.mMenToolsPortScan.Size = new System.Drawing.Size(184, 22); - this.mMenToolsPortScan.Text = "Port Scan"; - this.mMenToolsPortScan.Click += new System.EventHandler(this.mMenToolsPortScan_Click); - // - // mMenToolsSep1 - // - this.mMenToolsSep1.Name = "mMenToolsSep1"; - this.mMenToolsSep1.Size = new System.Drawing.Size(181, 6); - // - // mMenToolsComponentsCheck - // - this.mMenToolsComponentsCheck.Image = global::mRemoteNG.Resources.cog_error; - this.mMenToolsComponentsCheck.Name = "mMenToolsComponentsCheck"; - this.mMenToolsComponentsCheck.Size = new System.Drawing.Size(184, 22); - this.mMenToolsComponentsCheck.Text = "Components Check"; - this.mMenToolsComponentsCheck.Click += new System.EventHandler(this.mMenToolsComponentsCheck_Click); - // - // mMenToolsOptions - // - this.mMenToolsOptions.Image = global::mRemoteNG.Resources.Options; - this.mMenToolsOptions.Name = "mMenToolsOptions"; - this.mMenToolsOptions.Size = new System.Drawing.Size(184, 22); - this.mMenToolsOptions.Text = "Options"; - this.mMenToolsOptions.Click += new System.EventHandler(this.mMenToolsOptions_Click); + this.cMenToolbarShowText.Checked = true; + this.cMenToolbarShowText.CheckState = System.Windows.Forms.CheckState.Checked; + this.cMenToolbarShowText.Name = "cMenToolbarShowText"; + this.cMenToolbarShowText.Size = new System.Drawing.Size(128, 22); + this.cMenToolbarShowText.Text = "Show Text"; + this.cMenToolbarShowText.Click += new System.EventHandler(this.cMenToolbarShowText_Click); // // mMenInfo // @@ -324,20 +246,11 @@ namespace mRemoteNG.UI.Forms // // cMenExtAppsToolbar // - this.cMenExtAppsToolbar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.cMenToolbarShowText}); + //this.cMenExtAppsToolbar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + //this.cMenToolbarShowText}); this.cMenExtAppsToolbar.Name = "cMenToolbar"; this.cMenExtAppsToolbar.Size = new System.Drawing.Size(129, 26); // - // cMenToolbarShowText - // - this.cMenToolbarShowText.Checked = true; - this.cMenToolbarShowText.CheckState = System.Windows.Forms.CheckState.Checked; - this.cMenToolbarShowText.Name = "cMenToolbarShowText"; - this.cMenToolbarShowText.Size = new System.Drawing.Size(128, 22); - this.cMenToolbarShowText.Text = "Show Text"; - this.cMenToolbarShowText.Click += new System.EventHandler(this.cMenToolbarShowText_Click); - // // tsQuickConnect // this.tsQuickConnect.Dock = System.Windows.Forms.DockStyle.None; @@ -432,36 +345,28 @@ namespace mRemoteNG.UI.Forms internal System.Windows.Forms.ToolStripMenuItem mMenTools; internal System.Windows.Forms.ToolStripLabel lblQuickConnect; internal System.Windows.Forms.ToolStripMenuItem mMenInfo; - internal System.Windows.Forms.ToolStripSeparator mMenToolsSep1; - internal System.Windows.Forms.ToolStripMenuItem mMenToolsOptions; internal System.Windows.Forms.ToolStripMenuItem mMenInfoHelp; - internal System.Windows.Forms.ToolStripMenuItem mMenInfoWebsite; + internal System.Windows.Forms.ToolStripMenuItem cMenToolbarShowText; + internal System.Windows.Forms.ToolStripMenuItem mMenInfoWebsite; internal System.Windows.Forms.ToolStripSeparator mMenInfoSep1; internal System.Windows.Forms.ToolStripMenuItem mMenInfoAbout; internal QuickConnectComboBox cmbQuickConnect; - internal System.Windows.Forms.ToolStripMenuItem mMenToolsSSHTransfer; internal System.Windows.Forms.ToolStripContainer tsContainer; - internal System.Windows.Forms.ToolStripMenuItem mMenToolsExternalApps; internal System.Windows.Forms.Timer tmrAutoSave; internal System.Windows.Forms.ToolStrip tsExternalTools; internal System.Windows.Forms.ContextMenuStrip cMenExtAppsToolbar; - internal System.Windows.Forms.ToolStripMenuItem cMenToolbarShowText; - internal System.Windows.Forms.ToolStripMenuItem mMenToolsPortScan; internal System.Windows.Forms.ToolStrip tsQuickConnect; internal System.Windows.Forms.ToolStripSeparator mMenSep3; internal System.Windows.Forms.ToolStripMenuItem mMenInfoDonate; - internal ToolStripSplitButton btnQuickConnect; - internal System.Windows.Forms.ToolStripMenuItem mMenToolsUVNCSC; - internal System.Windows.Forms.ToolStripMenuItem mMenToolsComponentsCheck; + internal System.Windows.Forms.ToolStripMenuItem mMenToolsUpdate; + internal ToolStripSplitButton btnQuickConnect; internal System.Windows.Forms.ToolStripSeparator mMenInfoSep2; internal System.Windows.Forms.ToolStripMenuItem mMenInfoBugReport; internal System.Windows.Forms.ToolStripSeparator ToolStripSeparator2; internal System.Windows.Forms.ToolStripMenuItem mMenInfoForum; - internal System.Windows.Forms.ToolStripMenuItem mMenToolsUpdate; internal System.Windows.Forms.ContextMenuStrip mnuQuickConnectProtocol; internal System.Windows.Forms.ToolStripDropDownButton btnConnections; internal System.Windows.Forms.ContextMenuStrip mnuConnections; private System.ComponentModel.IContainer components; - private System.Windows.Forms.ToolStripMenuItem credentialManagerToolStripMenuItem; } } diff --git a/mRemoteV1/UI/Forms/frmMain.cs b/mRemoteV1/UI/Forms/frmMain.cs index e582f4e63..110b73d5d 100644 --- a/mRemoteV1/UI/Forms/frmMain.cs +++ b/mRemoteV1/UI/Forms/frmMain.cs @@ -170,18 +170,12 @@ namespace mRemoteNG.UI.Forms msMain.Items.Add(new MainFileMenu(ConnectionTreeWindow, _connectionInitiator)); msMain.Items.Add(new ViewMenu(tsExternalTools, tsQuickConnect, _fullscreen, this)); + msMain.Items.Add(new ToolsMenu(this, _credentialManager)); } private void ApplyLanguage() { - mMenTools.Text = Language.strMenuTools; - mMenToolsSSHTransfer.Text = Language.strMenuSSHFileTransfer; - mMenToolsExternalApps.Text = Language.strMenuExternalTools; - mMenToolsPortScan.Text = Language.strMenuPortScan; - mMenToolsComponentsCheck.Text = Language.strComponentsCheck; mMenToolsUpdate.Text = Language.strMenuCheckForUpdates; - mMenToolsOptions.Text = Language.strMenuOptions; - mMenInfo.Text = Language.strMenuHelp; mMenInfoHelp.Text = Language.strMenuHelpContents; mMenInfoForum.Text = Language.strMenuSupportForum; @@ -401,53 +395,6 @@ namespace mRemoteNG.UI.Forms #endregion #region Menu - #region Tools - private void credentialManagerToolStripMenuItem_Click(object sender, EventArgs e) - { - var credentialManagerForm = new CredentialManagerForm(_credentialManager) - { - DeletionConfirmer = new CredentialDeletionMsgBoxConfirmer(MessageBox.Show) - }; - credentialManagerForm.CenterOnTarget(this); - credentialManagerForm.Show(); - } - - private void mMenToolsUpdate_Click(object sender, EventArgs e) - { - Windows.Show(WindowType.Update); - } - - private void mMenToolsSSHTransfer_Click(object sender, EventArgs e) - { - Windows.Show(WindowType.SSHTransfer); - } - - private void mMenToolsUVNCSC_Click(object sender, EventArgs e) - { - Windows.Show(WindowType.UltraVNCSC); - } - - private void mMenToolsExternalApps_Click(object sender, EventArgs e) - { - Windows.Show(WindowType.ExternalApps); - } - - private void mMenToolsPortScan_Click(object sender, EventArgs e) - { - Windows.Show(WindowType.PortScan); - } - - private void mMenToolsComponentsCheck_Click(object sender, EventArgs e) - { - Windows.Show(WindowType.ComponentsCheck); - } - - private void mMenToolsOptions_Click(object sender, EventArgs e) - { - Windows.Show(WindowType.Options); - } - #endregion - #region Quick Connect private void PopulateQuickConnectProtocolMenu() { @@ -523,6 +470,10 @@ namespace mRemoteNG.UI.Forms #endregion #region Info + private void mMenToolsUpdate_Click(object sender, EventArgs e) + { + Windows.Show(WindowType.Update); + } private void mMenInfoHelp_Click(object sender, EventArgs e) { Windows.Show(WindowType.Help); diff --git a/mRemoteV1/UI/Menu/HelpMenu.cs b/mRemoteV1/UI/Menu/HelpMenu.cs new file mode 100644 index 000000000..284e251d3 --- /dev/null +++ b/mRemoteV1/UI/Menu/HelpMenu.cs @@ -0,0 +1,11 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace mRemoteNG.UI.Menu +{ + class HelpMenu + { + } +} diff --git a/mRemoteV1/UI/Menu/ToolsMenu.cs b/mRemoteV1/UI/Menu/ToolsMenu.cs new file mode 100644 index 000000000..f51abc14a --- /dev/null +++ b/mRemoteV1/UI/Menu/ToolsMenu.cs @@ -0,0 +1,161 @@ +using System; +using System.Windows.Forms; +using mRemoteNG.App; +using mRemoteNG.Credential; +using mRemoteNG.UI.Forms; + +namespace mRemoteNG.UI.Menu +{ + public class ToolsMenu : ToolStripMenuItem + { + private ToolStripSeparator _mMenToolsSep1; + private ToolStripMenuItem _mMenToolsOptions; + private ToolStripMenuItem _mMenToolsSshTransfer; + private ToolStripMenuItem _mMenToolsExternalApps; + private ToolStripMenuItem _mMenToolsPortScan; + private ToolStripMenuItem _mMenToolsUvncsc; + private ToolStripMenuItem _mMenToolsComponentsCheck; + private ToolStripMenuItem _credentialManagerToolStripMenuItem; + private readonly CredentialManager _credentialManager; + private readonly Form _form; + + public ToolsMenu(Form form, CredentialManager credentialManager) + { + _form = form; + _credentialManager = credentialManager; + Initialize(); + } + + private void Initialize() + { + _credentialManagerToolStripMenuItem = new ToolStripMenuItem(); + _mMenToolsSshTransfer = new ToolStripMenuItem(); + _mMenToolsUvncsc = new ToolStripMenuItem(); + _mMenToolsExternalApps = new ToolStripMenuItem(); + _mMenToolsPortScan = new ToolStripMenuItem(); + _mMenToolsSep1 = new ToolStripSeparator(); + _mMenToolsComponentsCheck = new ToolStripMenuItem(); + _mMenToolsOptions = new ToolStripMenuItem(); + + // + // mMenTools + // + DropDownItems.AddRange(new ToolStripItem[] { + _credentialManagerToolStripMenuItem, + _mMenToolsSshTransfer, + _mMenToolsUvncsc, + _mMenToolsExternalApps, + _mMenToolsPortScan, + _mMenToolsSep1, + _mMenToolsComponentsCheck, + _mMenToolsOptions}); + Name = "mMenTools"; + Size = new System.Drawing.Size(48, 20); + Text = Language.strMenuTools; + // + // credentialManagerToolStripMenuItem + // + _credentialManagerToolStripMenuItem.Image = Resources.key; + _credentialManagerToolStripMenuItem.Name = "credentialManagerToolStripMenuItem"; + _credentialManagerToolStripMenuItem.Size = new System.Drawing.Size(184, 22); + _credentialManagerToolStripMenuItem.Text = "Credential Manager"; + _credentialManagerToolStripMenuItem.Click += credentialManagerToolStripMenuItem_Click; + // + // mMenToolsSSHTransfer + // + _mMenToolsSshTransfer.Image = Resources.SSHTransfer; + _mMenToolsSshTransfer.Name = "mMenToolsSSHTransfer"; + _mMenToolsSshTransfer.Size = new System.Drawing.Size(184, 22); + _mMenToolsSshTransfer.Text = Language.strMenuSSHFileTransfer; + _mMenToolsSshTransfer.Click += mMenToolsSSHTransfer_Click; + // + // mMenToolsUVNCSC + // + _mMenToolsUvncsc.Image = Resources.UVNC_SC; + _mMenToolsUvncsc.Name = "mMenToolsUVNCSC"; + _mMenToolsUvncsc.Size = new System.Drawing.Size(184, 22); + _mMenToolsUvncsc.Text = "UltraVNC SingleClick"; + _mMenToolsUvncsc.Visible = false; + _mMenToolsUvncsc.Click += mMenToolsUVNCSC_Click; + // + // mMenToolsExternalApps + // + _mMenToolsExternalApps.Image = Resources.ExtApp; + _mMenToolsExternalApps.Name = "mMenToolsExternalApps"; + _mMenToolsExternalApps.Size = new System.Drawing.Size(184, 22); + _mMenToolsExternalApps.Text = Language.strMenuExternalTools; + _mMenToolsExternalApps.Click += mMenToolsExternalApps_Click; + // + // mMenToolsPortScan + // + _mMenToolsPortScan.Image = Resources.PortScan; + _mMenToolsPortScan.Name = "mMenToolsPortScan"; + _mMenToolsPortScan.Size = new System.Drawing.Size(184, 22); + _mMenToolsPortScan.Text = Language.strMenuPortScan; + _mMenToolsPortScan.Click += mMenToolsPortScan_Click; + // + // mMenToolsSep1 + // + _mMenToolsSep1.Name = "mMenToolsSep1"; + _mMenToolsSep1.Size = new System.Drawing.Size(181, 6); + // + // mMenToolsComponentsCheck + // + _mMenToolsComponentsCheck.Image = Resources.cog_error; + _mMenToolsComponentsCheck.Name = "mMenToolsComponentsCheck"; + _mMenToolsComponentsCheck.Size = new System.Drawing.Size(184, 22); + _mMenToolsComponentsCheck.Text = Language.strComponentsCheck; + _mMenToolsComponentsCheck.Click += mMenToolsComponentsCheck_Click; + // + // mMenToolsOptions + // + _mMenToolsOptions.Image = Resources.Options; + _mMenToolsOptions.Name = "mMenToolsOptions"; + _mMenToolsOptions.Size = new System.Drawing.Size(184, 22); + _mMenToolsOptions.Text = Language.strMenuOptions; + _mMenToolsOptions.Click += mMenToolsOptions_Click; + } + + #region Tools + private void credentialManagerToolStripMenuItem_Click(object sender, EventArgs e) + { + var credentialManagerForm = new CredentialManagerForm(_credentialManager) + { + DeletionConfirmer = new CredentialDeletionMsgBoxConfirmer(MessageBox.Show) + }; + credentialManagerForm.CenterOnTarget(_form); + credentialManagerForm.Show(); + } + + private void mMenToolsSSHTransfer_Click(object sender, EventArgs e) + { + Windows.Show(WindowType.SSHTransfer); + } + + private void mMenToolsUVNCSC_Click(object sender, EventArgs e) + { + Windows.Show(WindowType.UltraVNCSC); + } + + private void mMenToolsExternalApps_Click(object sender, EventArgs e) + { + Windows.Show(WindowType.ExternalApps); + } + + private void mMenToolsPortScan_Click(object sender, EventArgs e) + { + Windows.Show(WindowType.PortScan); + } + + private void mMenToolsComponentsCheck_Click(object sender, EventArgs e) + { + Windows.Show(WindowType.ComponentsCheck); + } + + private void mMenToolsOptions_Click(object sender, EventArgs e) + { + Windows.Show(WindowType.Options); + } + #endregion + } +} \ No newline at end of file diff --git a/mRemoteV1/mRemoteV1.csproj b/mRemoteV1/mRemoteV1.csproj index a0de2459c..01e435b01 100644 --- a/mRemoteV1/mRemoteV1.csproj +++ b/mRemoteV1/mRemoteV1.csproj @@ -506,10 +506,14 @@ Component + Component + + Component + Component