public static TerminalParam CreateFromConfigNode(ConfigNode sec) { string type = sec["type"]; TerminalParam param; if(type=="serial") param = new SerialTerminalParam(); else if(type=="tcp") { ConnectionMethod cm = ParseMethod(sec["method"]); if(cm==ConnectionMethod.Telnet) param = new TelnetTerminalParam(); else param = new SSHTerminalParam(); } else if(type=="cygwin") param = new CygwinTerminalParam(); else if(type=="sfu") param = new SFUTerminalParam(); else throw new Exception("invalid format"); param.Import(sec); return param; }
public override object Clone() { SFUTerminalParam p = new SFUTerminalParam(); p.Home = _home; p.Shell = _shell; return p; }
public CommandResult NewSFUConnectionWithDialog(SFUTerminalParam param) { if(!CheckPaneCount()) return CommandResult.Denied; if(SFUUtil.GuessRootDirectory().Length==0) return CommandResult.Failed; LocalShellLoginDialog dlg = new LocalShellLoginDialog(); if(param!=null) dlg.ApplyParam(param); else dlg.ApplyParam(GApp.ConnectionHistory.TopSFUParam); if(GCUtil.ShowModalDialog(_frame, dlg)==DialogResult.OK) { ConnectionTag con = dlg.Result; if(con!=null) { AddNewTerminal(con); return CommandResult.Success; } } return CommandResult.Cancelled; }