private void editServer_Click(object sender, EventArgs e) { TreeNode node = this.treeView1.SelectedNode; if (node != null) { ConnectionData puttyData = (ConnectionData)m_server[node.Text]; if (puttyData == null) { return; } ConnectionForm connection = new ConnectionForm((TreeNode)m_nodes["Servers"], m_quickDatas, m_server); connection.setData(puttyData); string oldParent = puttyData.parent; string oldName = puttyData.name; if (connection.ShowDialog() == DialogResult.OK) { puttyData = Dlg2Data(connection); if (oldName != puttyData.name) { //改名新建 if (m_server.ContainsKey(puttyData.name)) { removeServer(puttyData.name, false); } m_server[puttyData.name] = puttyData; saveConfig(m_server, "server.ini"); TreeNode temp = new TreeNode(puttyData.name); TreeNode parentNode = getParent(puttyData.parent); parentNode.Nodes.Add(temp); parentNode.ExpandAll(); } else { //改组 m_server[puttyData.name] = puttyData; saveConfig(m_server, "server.ini"); if (oldParent != puttyData.parent) { TreeNode oldParentNode = getParent(oldParent); TreeNode parentNode = getParent(puttyData.parent); TreeNode temp = getNode(oldParent, puttyData.name); oldParentNode.Nodes.Remove(temp); parentNode.Nodes.Add(temp); parentNode.ExpandAll(); } } } } }
private void addNewServer_Click(object sender, EventArgs e) { ConnectionForm connection = new ConnectionForm((TreeNode)m_nodes["Servers"], m_quickDatas); if (connection.ShowDialog() == DialogResult.OK) { ConnectionData puttyData = Dlg2Data(connection); m_server[puttyData.name] = puttyData; TreeNode temp = new TreeNode(puttyData.name); TreeNode parent = getParent(puttyData.parent); parent.Nodes.Add(temp); parent.ExpandAll(); saveConfig(m_server, "server.ini"); } }
ConnectionData Dlg2Data(ConnectionForm connection) { ConnectionData puttyData = new ConnectionData(); puttyData.name = connection.c_name.Text; puttyData.ip = connection.c_ip.Text; puttyData.port = connection.c_port.Text; puttyData.protocol = connection.c_protocol; puttyData.username = connection.c_username.Text; puttyData.password = connection.c_password.Text; puttyData.keyfile = connection.c_keyfile.Text; puttyData.parent = connection.c_parent.Text; if (puttyData.parent.Trim() == "") { puttyData.parent = "Default"; } puttyData.quickType = connection.c_scriptType.Text; puttyData.command = connection.c_command.Text; puttyData.waitTime = connection.c_waitTime.Text; return(puttyData); }