[X2Go-Commits] pyhoca-gui.git - build-59a18b6e3b5d3f1dd8f07f26433d37fe5984a57d (branch) updated: f905cc552072465b02c8f2299f7cc3bbeadabde3

X2Go dev team git-admin at x2go.org
Tue Aug 27 13:20:55 CEST 2013


The branch, build-59a18b6e3b5d3f1dd8f07f26433d37fe5984a57d has been updated
       via  f905cc552072465b02c8f2299f7cc3bbeadabde3 (commit)
      from  66bcf0cd5872b3df0a13c53a5825aefcd17f47fd (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
-----------------------------------------------------------------------

Summary of changes:
 pyhoca/wxgui/profilemanager.py |  224 +++++++++++++++++++++++++++-------------
 1 file changed, 152 insertions(+), 72 deletions(-)

The diff of changes is:
diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py
index 8371078..bd1a17f 100644
--- a/pyhoca/wxgui/profilemanager.py
+++ b/pyhoca/wxgui/profilemanager.py
@@ -153,13 +153,20 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
         self.SSHKeyFileLabel = wx.StaticText(self.tab_Connection, -1, "RSA/DSA private key:")
         self.SSHKeyFile = wx.TextCtrl(self.tab_Connection, -1, style=wx.TE_PROCESS_ENTER)
         self.SSHKeyFileBrowseButton = wx.BitmapButton(self.tab_Connection, -1, wx.Bitmap('/%s/PyHoca/16x16/system-search.png' % _icons_location, wx.BITMAP_TYPE_ANY))
-        self.UseSSHProxy = wx.CheckBox(self.tab_Connection, -1, "Use SSH proxy to connect to server")
-        self.SSHProxyLabel = wx.StaticText(self.tab_Connection, -1, "SSH Proxy:")
-        self.SSHProxyFromHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
-        self.SSHProxyFromPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000)
-        self.SSHProxyBetweenLabel = wx.StaticText(self.tab_Connection, -1, " -> ")
-        self.SSHProxyToHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
-        self.SSHProxyToPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000)
+        self.UseSSHProxy = wx.CheckBox(self.tab_Connection, -1, "Server behind SSH proxy")
+        self.SSHProxyHostLabel = wx.StaticText(self.tab_Connection, -1, "Host:")
+        self.SSHProxyHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(80,20))
+        self.SSHProxyUserLabel = wx.StaticText(self.tab_Connection, -1, "User:")
+        self.SSHProxyUser = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(80,20))
+        self.SSHProxyKeyFileLabel = wx.StaticText(self.tab_Connection, -1, "Key file:")
+        self.SSHProxyKeyFile = wx.TextCtrl(self.tab_Connection, -1, style=wx.TE_PROCESS_ENTER)
+        self.SSHProxyKeyFileBrowseButton = wx.BitmapButton(self.tab_Connection, -1, wx.Bitmap('/%s/PyHoca/16x16/system-search.png' % _icons_location, wx.BITMAP_TYPE_ANY))
+        self.SSHProxyTunnelLabel = wx.StaticText(self.tab_Connection, -1, "SSH Proxy Tunnel:")
+        self.SSHProxyTunnelFromHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
+        self.SSHProxyTunnelFromPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000)
+        self.SSHProxyTunnelBetweenLabel = wx.StaticText(self.tab_Connection, -1, " -> ")
+        self.SSHProxyTunnelToHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
+        self.SSHProxyTunnelToPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000)
 
         self.LinkSpeed = wx.Slider(self.tab_Connection, -1, 0, 0, 4)
         self.ModemLabel = wx.StaticText(self.tab_Connection, -1, "     |\nModem", style=wx.ALIGN_LEFT)
@@ -220,7 +227,8 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
 
         self.Bind(wx.EVT_BUTTON, self.OnIconChange, self.IconButton)
         self.Bind(wx.EVT_COMBOBOX, self.OnSessionTypeSelected, self.SessionType)
-        self.Bind(wx.EVT_BUTTON, self.OnSSHPublicKeyBrowse, self.SSHKeyFileBrowseButton)
+        self.Bind(wx.EVT_BUTTON, self.OnSSHKeyFileBrowse, self.SSHKeyFileBrowseButton)
+        self.Bind(wx.EVT_BUTTON, self.OnSSHProxyKeyFileBrowse, self.SSHProxyKeyFileBrowseButton)
         self.Bind(wx.EVT_CHECKBOX, self.OnUseSSHProxy, self.UseSSHProxy)
         self.Bind(wx.EVT_RADIOBUTTON, self.OnSetDisplayFullscreen, self.DisplayTypeFullscreen)
         self.Bind(wx.EVT_RADIOBUTTON, self.OnSetDisplayCustom, self.DisplayTypeCustom)
@@ -270,11 +278,15 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
         self.SSHKeyFileLabel.SetMinSize((120, 16))
         self.SSHKeyFile.SetMinSize((152, _textfield_height))
         self.SSHKeyFileBrowseButton.SetSize(self.SSHKeyFileBrowseButton.GetBestSize())
-        self.SSHProxyLabel.SetMinSize((120, 16))
-        self.SSHProxyFromPort.SetMinSize((60, _textfield_height))
-        self.SSHProxyToPort.SetMinSize((60, _textfield_height))
-        self.SSHProxyFromHost.SetMinSize((120, _textfield_height))
-        self.SSHProxyToHost.SetMinSize((120, _textfield_height))
+        self.SSHProxyHost.SetMinSize((120, _textfield_height))
+        self.SSHProxyUser.SetMinSize((92, _textfield_height))
+        self.SSHProxyKeyFile.SetMinSize((124, _textfield_height))
+        self.SSHProxyKeyFileBrowseButton.SetSize(self.SSHProxyKeyFileBrowseButton.GetBestSize())
+        self.SSHProxyTunnelLabel.SetMinSize((120, 16))
+        self.SSHProxyTunnelFromPort.SetMinSize((60, _textfield_height))
+        self.SSHProxyTunnelToPort.SetMinSize((60, _textfield_height))
+        self.SSHProxyTunnelFromHost.SetMinSize((120, _textfield_height))
+        self.SSHProxyTunnelToHost.SetMinSize((120, _textfield_height))
         self.LinkSpeed.SetMinSize((454, _textfield_height))
         self.ModemLabel.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
         self.ISDNLabel.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
@@ -359,33 +371,45 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
         sizer_2_1_2.Add(self.Host, 0, 0, 0)
         sizer_2_1_2.Add((0,32))
         sizer_2_1_3 = wx.BoxSizer(wx.HORIZONTAL)
-        sizer_2_1_3.Add(self.SSHPortLabel, 0, wx.ALIGN_CENTRE_VERTICAL|wx.RIGHT, 0)
+        sizer_2_1_3.Add(self.SSHPortLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
         sizer_2_1_3.Add(self.SSHPort, 0, 0, 0)
+        sizer_2_1_3.Add((16,0))
+        sizer_2_1_3.Add(self.SSHKeyFileLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_3.Add(self.SSHKeyFile, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_3.Add(self.SSHKeyFileBrowseButton, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
         sizer_2_1_3.Add((0,32))
         sizer_2_1_4 = wx.BoxSizer(wx.HORIZONTAL)
-        sizer_2_1_4.Add(self.SSHKeyFileLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
-        sizer_2_1_4.Add(self.SSHKeyFile, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
-        sizer_2_1_4.Add(self.SSHKeyFileBrowseButton, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
-        sizer_2_1_4.Add((0,32))
+        sizer_2_1_4.Add(self.UseSSHProxy, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
         sizer_2_1_5 = wx.BoxSizer(wx.HORIZONTAL)
-        sizer_2_1_5.Add(self.UseSSHProxy, 0, wx.ALIGN_BOTTOM, 0)
+        sizer_2_1_5.Add(self.SSHProxyHostLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add((8,0))
+        sizer_2_1_5.Add(self.SSHProxyHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add((16,0))
+        sizer_2_1_5.Add(self.SSHProxyUserLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add((8,0))
+        sizer_2_1_5.Add(self.SSHProxyUser, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add((16,0))
+        sizer_2_1_5.Add(self.SSHProxyKeyFileLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add((8,0))
+        sizer_2_1_5.Add(self.SSHProxyKeyFile, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add(self.SSHProxyKeyFileBrowseButton, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
         sizer_2_1_5.Add((0,32))
         sizer_2_1_6 = wx.BoxSizer(wx.HORIZONTAL)
-        sizer_2_1_6.Add(self.SSHProxyLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
-        sizer_2_1_6.Add(self.SSHProxyFromHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_6.Add(self.SSHProxyTunnelLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_6.Add(self.SSHProxyTunnelFromHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
         sizer_2_1_6.Add((4, 0))
-        sizer_2_1_6.Add(self.SSHProxyFromPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_6.Add(self.SSHProxyTunnelFromPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
         sizer_2_1_6.Add((8, 0))
-        sizer_2_1_6.Add(self.SSHProxyBetweenLabel, 0, wx.ALIGN_CENTRE_VERTICAL|wx.ALIGN_CENTRE_HORIZONTAL, 0)
+        sizer_2_1_6.Add(self.SSHProxyTunnelBetweenLabel, 0, wx.ALIGN_CENTRE_VERTICAL|wx.ALIGN_CENTRE_HORIZONTAL, 0)
         sizer_2_1_6.Add((8, 0))
-        sizer_2_1_6.Add(self.SSHProxyToHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_6.Add(self.SSHProxyTunnelToHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
         sizer_2_1_6.Add((4, 0))
-        sizer_2_1_6.Add(self.SSHProxyToPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_6.Add(self.SSHProxyTunnelToPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
         sizer_2_1.Add(sizer_2_1_1, 0, wx.EXPAND, 0)
         sizer_2_1.Add(sizer_2_1_2, 0, wx.EXPAND, 0)
         sizer_2_1.Add(sizer_2_1_3, 0, wx.EXPAND, 0)
         sizer_2_1.Add(sizer_2_1_4, 0, wx.EXPAND, 0)
-        sizer_2_1.Add(sizer_2_1_5, 0, wx.EXPAND, 0)
+        sizer_2_1.Add(sizer_2_1_5, 0, wx.EXPAND|wx.ALIGN_BOTTOM, 0)
         sizer_2_1.Add(sizer_2_1_6, 0, wx.EXPAND, 0)
 
         sizer_2_2 = wx.StaticBoxSizer(self.staticbox_LinkSpeed, wx.VERTICAL)
@@ -545,30 +569,48 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
         self.UseSSHProxy.SetValue(self.profile_config['usesshproxy'])
 
         _ssh_proxy = self.profile_config['usesshproxy']
-        if self.profile_config['sshproxy'].count(':') == 2:
-            _from_port, _to_host, _to_port = self.profile_config['sshproxy'].split(':')
+        self.SSHProxyHost.SetValue(self.profile_config['sshproxyhost'])
+        self.SSHProxyUser.SetValue(self.profile_config['sshproxyuser'])
+        self.SSHProxyKeyFile.SetValue(self.profile_config['sshproxykeyfile'])
+        _from_host = _from_port = _to_host = _to_port = None
+        if self.profile_config['sshproxytunnel'].count(':') == 2:
+            _from_port, _to_host, _to_port = self.profile_config['sshproxytunnel'].split(':')
             _from_host = 'localhost'
-        elif self.profile_config['sshproxy'].count(':') == 3:
-            _from_host, _from_port, _to_host, _to_port = self.profile_config['sshproxy'].split(':')
+        elif self.profile_config['sshproxytunnel'].count(':') == 3:
+            _from_host, _from_port, _to_host, _to_port = self.profile_config['sshproxytunnel'].split(':')
 
+        if _from_host: self.SSHProxyTunnelFromHost.SetValue(_from_host)
+        if _from_port: self.SSHProxyTunnelFromPort.SetValue(int(_from_port))
+        if _to_host: self.SSHProxyTunnelToHost.SetValue(_to_host)
+        if _to_port: self.SSHProxyTunnelToPort.SetValue(int(_to_port))
         if _ssh_proxy:
-            self.SSHProxyFromHost.SetValue(_from_host)
-            self.SSHProxyFromPort.SetValue(int(_from_port))
-            self.SSHProxyToHost.SetValue(_to_host)
-            self.SSHProxyToPort.SetValue(int(_to_port))
-            self.SSHProxyLabel.Enable(True)
-            self.SSHProxyFromHost.Enable(True)
-            self.SSHProxyFromPort.Enable(True)
-            self.SSHProxyBetweenLabel.Enable(True)
-            self.SSHProxyToHost.Enable(True)
-            self.SSHProxyToPort.Enable(True)
+            self.SSHProxyHostLabel.Enable(True)
+            self.SSHProxyHost.Enable(True)
+            self.SSHProxyUserLabel.Enable(True)
+            self.SSHProxyUser.Enable(True)
+            self.SSHProxyKeyFileLabel.Enable(True)
+            self.SSHProxyKeyFile.Enable(True)
+            self.SSHProxyKeyFileBrowseButton.Enable(True)
+            self.SSHProxyTunnelLabel.Enable(True)
+            self.SSHProxyTunnelFromHost.Enable(True)
+            self.SSHProxyTunnelFromPort.Enable(True)
+            self.SSHProxyTunnelBetweenLabel.Enable(True)
+            self.SSHProxyTunnelToHost.Enable(True)
+            self.SSHProxyTunnelToPort.Enable(True)
         else:
-            self.SSHProxyLabel.Enable(False)
-            self.SSHProxyFromHost.Enable(False)
-            self.SSHProxyFromPort.Enable(False)
-            self.SSHProxyBetweenLabel.Enable(False)
-            self.SSHProxyToHost.Enable(False)
-            self.SSHProxyToPort.Enable(False)
+            self.SSHProxyHostLabel.Enable(False)
+            self.SSHProxyHost.Enable(False)
+            self.SSHProxyUserLabel.Enable(False)
+            self.SSHProxyUser.Enable(False)
+            self.SSHProxyKeyFileLabel.Enable(False)
+            self.SSHProxyKeyFile.Enable(False)
+            self.SSHProxyKeyFileBrowseButton.Enable(False)
+            self.SSHProxyTunnelLabel.Enable(False)
+            self.SSHProxyTunnelFromHost.Enable(False)
+            self.SSHProxyTunnelFromPort.Enable(False)
+            self.SSHProxyTunnelBetweenLabel.Enable(False)
+            self.SSHProxyTunnelToHost.Enable(False)
+            self.SSHProxyTunnelToPort.Enable(False)
 
         _command = self.profile_config['command']
 
@@ -589,7 +631,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
             self.Application.SetValue(self.applicationChoices[_command])
             self.Command.SetValue('')
         else:
-            self.SessionTyp.SetValue(self.sessionChoices['CUSTOM'])
+            self.SessionType.SetValue(self.sessionChoices['CUSTOM'])
             self.Command.Enable(True)
             self.Command.SetValue(_command)
 
@@ -723,12 +765,19 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
             self.SSHKeyFileLabel.Enable(False)
             self.SSHKeyFile.Enable(False)
             self.UseSSHProxy.Enable(False)
-            self.SSHProxyLabel.Enable(False)
-            self.SSHProxyFromHost.Enable(False)
-            self.SSHProxyFromPort.Enable(False)
-            self.SSHProxyBetweenLabel.Enable(False)
-            self.SSHProxyToHost.Enable(False)
-            self.SSHProxyToPort.Enable(False)
+            self.SSHProxyHostLabel.Enable(False)
+            self.SSHProxyHost.Enable(False)
+            self.SSHProxyUserLabel.Enable(False)
+            self.SSHProxyUser.Enable(False)
+            self.SSHProxyKeyFileLabel.Enable(False)
+            self.SSHProxyKeyFile.Enable(False)
+            self.SSHProxyKeyFileBrowseButton.Enable(False)
+            self.SSHProxyTunnelLabel.Enable(False)
+            self.SSHProxyTunnelFromHost.Enable(False)
+            self.SSHProxyTunnelFromPort.Enable(False)
+            self.SSHProxyTunnelBetweenLabel.Enable(False)
+            self.SSHProxyTunnelToHost.Enable(False)
+            self.SSHProxyTunnelToPort.Enable(False)
             self.tab_SharedFolders.Enable(False)
 
     def __update_from_screen(self):
@@ -742,11 +791,14 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
             self.profile_config['usesshproxy'] = True
         else:
             self.profile_config['usesshproxy'] = False
-        self.profile_config['sshproxy'] = '%s:%s:%s:%s' % (self.SSHProxyFromHost.GetValue(),
-                                                           self.SSHProxyFromPort.GetValue(),
-                                                           self.SSHProxyToHost.GetValue(),
-                                                           self.SSHProxyToPort.GetValue(),
-                                                          )
+        self.profile_config['sshproxyhost'] = self.SSHProxyHost.GetValue()
+        self.profile_config['sshproxyuser'] = self.SSHProxyUser.GetValue()
+        self.profile_config['sshproxytunnel'] = '%s:%s:%s:%s' % (self.SSHProxyTunnelFromHost.GetValue(),
+                                                                 self.SSHProxyTunnelFromPort.GetValue(),
+                                                                 self.SSHProxyTunnelToHost.GetValue(),
+                                                                 self.SSHProxyTunnelToPort.GetValue(),
+                                                                )
+        self.profile_config['sshproxykeyfile'] = self.SSHProxyKeyFile.GetValue()
 
         _session_type = [ s for s in self.sessionChoices.keys() if self.sessionChoices[s] == self.SessionType.GetValue() ][0]
         if _session_type == 'APPLICATION':
@@ -907,8 +959,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
 
         self.disable_EditConnected_options()
 
-
-    def OnSSHPublicKeyBrowse(self, event):
+    def OnSSHKeyFileBrowse(self, event):
         sshdir = os.path.expanduser('~/.ssh')
         if not os.path.exists(sshdir):
             sshdir = os.getcwd()
@@ -923,21 +974,50 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
             path = dlg.GetPath()
             self.SSHKeyFile.SetValue(path)
 
+    def OnSSHProxyKeyFileBrowse(self, event):
+        sshdir = os.path.expanduser('~/.ssh')
+        if not os.path.exists(sshdir):
+            sshdir = os.getcwd()
+        wildcard = "All files (*.*)|*"
+        dlg = wx.FileDialog(
+            self, message="Choose a public SSH key", defaultDir=sshdir,
+            defaultFile="", wildcard=wildcard, style=wx.OPEN | wx.CHANGE_DIR )
+        # Show the dialog and retrieve the user response. If it is the OK response,
+        # process the data.
+        if dlg.ShowModal() == wx.ID_OK:
+            # This returns a Python list of files that were selected.
+            path = dlg.GetPath()
+            self.SSHProxyKeyFile.SetValue(path)
+
     def OnUseSSHProxy(self, event):
         if self.UseSSHProxy.GetValue():
-            self.SSHProxyLabel.Enable(True)
-            self.SSHProxyFromHost.Enable(True)
-            self.SSHProxyBetweenLabel.Enable(True)
-            self.SSHProxyFromPort.Enable(True)
-            self.SSHProxyToHost.Enable(True)
-            self.SSHProxyToPort.Enable(True)
+            self.SSHProxyHostLabel.Enable(True)
+            self.SSHProxyHost.Enable(True)
+            self.SSHProxyUserLabel.Enable(True)
+            self.SSHProxyUser.Enable(True)
+            self.SSHProxyKeyFileLabel.Enable(True)
+            self.SSHProxyKeyFile.Enable(True)
+            self.SSHProxyKeyFileBrowseButton.Enable(True)
+            self.SSHProxyTunnelLabel.Enable(True)
+            self.SSHProxyTunnelFromHost.Enable(True)
+            self.SSHProxyTunnelBetweenLabel.Enable(True)
+            self.SSHProxyTunnelFromPort.Enable(True)
+            self.SSHProxyTunnelToHost.Enable(True)
+            self.SSHProxyTunnelToPort.Enable(True)
         else:
-            self.SSHProxyLabel.Enable(False)
-            self.SSHProxyFromHost.Enable(False)
-            self.SSHProxyFromPort.Enable(False)
-            self.SSHProxyBetweenLabel.Enable(False)
-            self.SSHProxyToHost.Enable(False)
-            self.SSHProxyToPort.Enable(False)
+            self.SSHProxyHostLabel.Enable(False)
+            self.SSHProxyHost.Enable(False)
+            self.SSHProxyUserLabel.Enable(False)
+            self.SSHProxyUser.Enable(False)
+            self.SSHProxyKeyFileLabel.Enable(False)
+            self.SSHProxyKeyFile.Enable(False)
+            self.SSHProxyKeyFileBrowseButton.Enable(False)
+            self.SSHProxyTunnelLabel.Enable(False)
+            self.SSHProxyTunnelFromHost.Enable(False)
+            self.SSHProxyTunnelFromPort.Enable(False)
+            self.SSHProxyTunnelBetweenLabel.Enable(False)
+            self.SSHProxyTunnelToHost.Enable(False)
+            self.SSHProxyTunnelToPort.Enable(False)
 
     def OnKeepKeyboard(self, event):
         if self.CurrentKeyBoard.GetValue():


hooks/post-receive
-- 
pyhoca-gui.git (Python X2Go Client (wxPython GUI))

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "pyhoca-gui.git" (Python X2Go Client (wxPython GUI)).




More information about the x2go-commits mailing list