public ITerminalConnection EstablishConnection(IPoderosaMainWindow window, ITerminalParameter destination, ITerminalSettings settings) { ICygwinParameter cygwin = (ICygwinParameter)destination.GetAdapter(typeof(ICygwinParameter)); IProtocolService ps = TerminalSessionsPlugin.Instance.ProtocolService; ISynchronizedConnector sc = ps.CreateFormBasedSynchronozedConnector(window); IInterruptable t = ps.AsyncCygwinConnect(sc.InterruptableConnectorClient, cygwin); ITerminalConnection con = sc.WaitConnection(t, TerminalSessionsPlugin.Instance.TerminalSessionOptions.TerminalEstablishTimeout); AdjustCaptionAndText(settings, cygwin.ShellBody, StartCommandIcon.Cygwin); return(con); }