Ejemplo n.º 1
0
        /// <summary>
        /// Startet eine Putty Session in einem gedockten Fenster
        /// </summary>
        /// <param name="sessionName">Name der Session die gestartet werden soll</param>
        /// <param name="callForm">Das Formular auf dem die Action Invoked werden soll</param>
        /// <param name="containerForm">Das Formular in dem das neue Fenster angedockt werden soll</param>
        /// <param name="dockPanel">Das für das Docking verantwortliche DockPanel</param>
        /// <param name="dockstate">Angabe wie das neue Fenster angedockt werden soll</param>
        public static void StartPuttySession(string sessionName, Form callForm, Form containerForm, DockPanel dockPanel, DockState dockstate = DockState.Document)
        {
            StartPuttyAgentIfNeeded();

            twiPutty puttyWindow = null;

            ApplicationClosedCallback callback = delegate(bool closed) {
                if (puttyWindow != null)
                {
                    if (puttyWindow.InvokeRequired)
                    {
                        callForm.BeginInvoke((MethodInvoker) delegate() {
                            puttyWindow.Close();
                        });
                    }
                    else
                    {
                        puttyWindow.Close();
                    }
                }
            };

            puttyWindow = new twiPutty(sessionName, callback, containerForm);
            puttyWindow.Show(dockPanel, dockstate);
        }
Ejemplo n.º 2
0
        public void StartQuickSession(string protocol, string host, string port)
        {
            string name = protocol + "-" + host + "-" + port;

            recentRepository.AddSession(host, protocol, Convert.ToInt32(port), name);

            frmSessions.AddSessionToRecentSessionList(name);

            twiPutty puttyWindow = null;

            ApplicationClosedCallback callback = delegate(bool closed) {
                if (puttyWindow != null)
                {
                    if (puttyWindow.InvokeRequired)
                    {
                        this.BeginInvoke((MethodInvoker) delegate() {
                            puttyWindow.Close();
                        });
                    }
                    else
                    {
                        puttyWindow.Close();
                    }
                }
            };

            puttyWindow = new twiPutty(name, callback, this);
            puttyWindow.Show(ContentPanel, WeifenLuo.WinFormsUI.Docking.DockState.Document);
        }
Ejemplo n.º 3
0
        public twiPutty(string session, ApplicationClosedCallback callback, Form container)
        {
            InitializeComponent();

            m_ApplicationExit = callback;
            containerForm     = container;
            sessionName       = session;

            if (session == "")
            {
                this.Text = ApplicationSettings.PuttyLocation;
            }
            else
            {
                this.Text = session;
            }

            this.applicationwrapper                 = new ApplicationPanel(container);
            this.applicationwrapper.Dock            = System.Windows.Forms.DockStyle.Fill;
            this.applicationwrapper.ApplicationName = ApplicationSettings.PuttyLocation;
            if (session != "")
            {
                this.applicationwrapper.ApplicationParameters = "-load " + session;
            }
            this.applicationwrapper.Location        = new System.Drawing.Point(0, 0);
            this.applicationwrapper.Name            = "applicationControl1";
            this.applicationwrapper.Size            = new System.Drawing.Size(284, 264);
            this.applicationwrapper.TabIndex        = 0;
            this.applicationwrapper.m_CloseCallback = this.m_ApplicationExit;
            this.Controls.Add(this.applicationwrapper);

            this.FormClosing            += new FormClosingEventHandler(twiPutty_FormClosing);
            this.TabPageContextMenuStrip = this.conMenuSessionTab;
        }
Ejemplo n.º 4
0
        private void settingsToolStripMenuItem_Click(object sender, EventArgs e)
        {
            twiPutty puttyWindow = null;

            ApplicationClosedCallback callback = delegate(bool closed) {
                if (puttyWindow != null)
                {
                    if (puttyWindow.InvokeRequired)
                    {
                        this.BeginInvoke((MethodInvoker) delegate() {
                            puttyWindow.Close();
                        });
                    }
                    else
                    {
                        puttyWindow.Close();
                    }
                }
            };

            puttyWindow = new twiPutty("", callback, this);
            puttyWindow.Show(ContentPanel, WeifenLuo.WinFormsUI.Docking.DockState.Document);
        }