private void mnuAddAccount_Click(object sender, EventArgs e) { using (frmAccount form = new frmAccount(settings)) { DialogResult result = form.ShowDialog(this); if (result == DialogResult.OK) { string password = Regex.Replace(form.Key, "\\s", ""); string accountName = form.AccountName; settings.Accounts[accountName] = new SecureString().AppendChars(password); settings.SaveSettings(); settings.SaveAccounts(); AddAccount(accountName, settings.Accounts[accountName]); } } }
private void mnuAccount_Click(object sender, EventArgs e) { ToolStripItem accountMenuItem = sender as ToolStripItem; string oldAccountName = accountMenuItem.Text; ToolStripItem timeoutMenuItem = accountMenuItem.Tag as ToolStripItem; using (frmAccount form = new frmAccount(settings, this)) { form.ShowRemove(true); form.AccountName = oldAccountName; form.Key = settings.Accounts[oldAccountName].Use(p => p); DialogResult result = form.ShowDialog(this); if (result == DialogResult.OK) { settings.Accounts.Remove(oldAccountName); string accountName = form.AccountName; if (String.IsNullOrEmpty(accountName) == false) { settings.Accounts[accountName] = new SecureString().AppendChars(form.Key); accountMenuItem.Text = accountName; timeoutMenuItem.Tag = accountName; } else { timeoutMenuItems.Remove(timeoutMenuItem); var ix = contextMenu.Items.IndexOf(accountMenuItem); contextMenu.Items.RemoveAt(ix + 2); // remove separator contextMenu.Items.RemoveAt(ix + 1); // remove timeout password contextMenu.Items.RemoveAt(ix); // remove account name } settings.SaveSettings(); settings.SaveAccounts(); } } }
private void mnuAccount_Click(object sender, EventArgs e) { ToolStripItem accountMenuItem = sender as ToolStripItem; string oldAccountName = accountMenuItem.Text; ToolStripItem timeoutMenuItem = accountMenuItem.Tag as ToolStripItem; using (frmAccount form = new frmAccount(settings)) { form.ShowRemove(true); form.AccountName = oldAccountName; form.Key = settings.Accounts[oldAccountName].Use(p => p); DialogResult result = form.ShowDialog(this); if (result == DialogResult.OK && form.IsKeyValid) { settings.Accounts.Remove(oldAccountName); string accountName = form.AccountName; if (String.IsNullOrEmpty(accountName) == false) { settings.Accounts[accountName] = new SecureString().AppendChars(form.Key); accountMenuItem.Text = accountName; timeoutMenuItem.Tag = accountName; } else { var ix = contextMenu.Items.IndexOf(accountMenuItem); contextMenu.Items.RemoveAt(ix + 2); // remove separator contextMenu.Items.RemoveAt(ix + 1); // remove timeout password contextMenu.Items.RemoveAt(ix); // remove account name } settings.SaveSettings(); settings.SaveAccounts(); } } }