[X2Go-Commits] pyhoca-gui.git - twofactorauth (branch) updated: c619050a92ec3938227e9ff638857ecaea4dad89

X2Go dev team git-admin at x2go.org
Sat Sep 14 15:54:11 CEST 2013


The branch, twofactorauth has been updated
       via  c619050a92ec3938227e9ff638857ecaea4dad89 (commit)
      from  cfe41758290b30cf1eb07ddb0fc23db2a708cd2e (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:
 X2goXserver.py                                     |   48 ----------
 build-for-reprepro.sh                              |   39 ++++++++
 debian/changelog                                   |    6 ++
 debian/compat                                      |    1 +
 debian/control                                     |   15 +++
 debian/copyright                                   |   14 +++
 debian/pycompat                                    |    1 +
 debian/pyhoca-gui.docs                             |    2 +
 debian/pyhoca-gui.install                          |    1 +
 debian/pyhoca-gui.manpages                         |    1 +
 debian/rules                                       |   24 +++++
 debian/source/format                               |    1 +
 man/pyhoca-gui.1                                   |   69 ++++++++++++++
 pyhoca-gui.py => pyhoca-gui                        |   90 +++++++-----------
 pyhoca/__init__.py                                 |   20 ++++
 pyhoca/wxgui/__init__.py                           |   23 +++++
 .../wxgui/_delete_/SessionProfile.py               |    0
 x2goLogon.py => pyhoca/wxgui/frontend.py           |  100 ++++++++++++--------
 pyhocaguiImages.py => pyhoca/wxgui/images.py       |    0
 Message.py => pyhoca/wxgui/messages.py             |    0
 .../wxgui/profilemanager.py                        |    0
 pyhoca/wxgui/x2go                                  |    1 +
 x2goLogon.py => pyhoca/wxgui/x2goLogon.py          |    4 +-
 setup.py                                           |   35 +++++++
 24 files changed, 346 insertions(+), 149 deletions(-)
 delete mode 100644 X2goXserver.py
 create mode 100755 build-for-reprepro.sh
 create mode 100644 debian/changelog
 create mode 100644 debian/compat
 create mode 100644 debian/control
 create mode 100644 debian/copyright
 create mode 100644 debian/pycompat
 create mode 100644 debian/pyhoca-gui.docs
 create mode 100644 debian/pyhoca-gui.install
 create mode 100644 debian/pyhoca-gui.manpages
 create mode 100755 debian/rules
 create mode 100644 debian/source/format
 create mode 100644 man/pyhoca-gui.1
 rename pyhoca-gui.py => pyhoca-gui (64%)
 mode change 100644 => 100755
 create mode 100644 pyhoca/__init__.py
 create mode 100644 pyhoca/wxgui/__init__.py
 rename SessionProfile.py => pyhoca/wxgui/_delete_/SessionProfile.py (100%)
 copy x2goLogon.py => pyhoca/wxgui/frontend.py (91%)
 rename pyhocaguiImages.py => pyhoca/wxgui/images.py (100%)
 rename Message.py => pyhoca/wxgui/messages.py (100%)
 rename X2goMaintProfile.py => pyhoca/wxgui/profilemanager.py (100%)
 create mode 120000 pyhoca/wxgui/x2go
 rename x2goLogon.py => pyhoca/wxgui/x2goLogon.py (99%)
 create mode 100755 setup.py

The diff of changes is:
diff --git a/X2goXserver.py b/X2goXserver.py
deleted file mode 100644
index a845f1a..0000000
--- a/X2goXserver.py
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/usr/bin/env python
-# -*- coding: utf-8 -*-
-
-"""
-    Copyright (C) 2010 by Dick Kniep <dick.kniep at lindix.nl>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the
-    Free Software Foundation, Inc.,
-    59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-
-    Contributors to the code of this programme:
-        Jörg Sawatzki <joerg.sawatzki at web.de>
-        Mike Gabriel <m.gabriel at das-netzwerkteam.de>
-"""
-
-import os
-import subprocess
-
-def startXserver(XServerParms):
-    """
-    This routine will start an XServer if it is not running 
-    already
-    """
-    processname = XServerParms.binary
-    for line in os.popen("ps xa"):
-        fields = line.split()
-        pid = fields[0]
-        process = fields[4]
-
-        if process.find(XServerParms.binary) > 0:
-            # XServer is already running
-            return
-            
-        p = subprocess.Popen([XServerParms.binary,XServerParms.parameters], shell=True)
-        sts = os.waitpid(p.pid, 0)[1]
-
-    
\ No newline at end of file
diff --git a/build-for-reprepro.sh b/build-for-reprepro.sh
new file mode 100755
index 0000000..5062694
--- /dev/null
+++ b/build-for-reprepro.sh
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# This programme is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This programme is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+PACKAGE=pyhoca-gui
+
+rm -f ../$PACKAGE_*.changes
+rm -f ../$PACKAGE_*.upload
+rm -f ../$PACKAGE_*.build
+rm -f ../$PACKAGE_*.dsc
+rm -f ../$PACKAGE_*.tar.gz
+rm -f ../$PACKAGE*.deb
+
+cp debian/changelog debian/changelog.new
+editor debian/changelog.new
+mv debian/changelog.new debian/changelog
+
+debuild
+
+cd ..
+rm -f $PACKAGE_*.upload
+dupload --to nwt-ubuntu $PACKAGE_*.changes
+rm -f $PACKAGE_*.upload
+dupload --to nwt-debian $PACKAGE_*.changes
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..4a032db
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,6 @@
+pyhoca-gui (0.0.1-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * initializing PyHoca-GUI .deb package
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Tue, 16 Nov 2010 23:30:00 +0100
+
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7f8f011
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+7
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..07f1f3e
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,15 @@
+Source: pyhoca-gui
+Section: python
+Priority: optional
+Maintainer: Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+Build-Depends: debhelper (>= 7), python, python-setuptools, python-support
+Standards-Version: 3.9.0
+Homepage: http://das-netzwerkteam.de/site/?q=node/71
+XS-Python-Version: all
+
+Package: pyhoca-gui
+Replaces: pyhoca-gui
+Architecture: all
+Depends: ${misc:Depends}, python, python-x2go (>=0.0.15-0~nwt1), python-argparse
+Description: An graphical X2go client written in (wx)Python
+ A graphical X2go client implementation written in (wx)Python.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..bbd8562
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,14 @@
+pyhoca-gui - Copyright (C) 2010 by Dick Kniep <dick.kniep at lindix.nl>
+             Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+
+Published under the terms of the GNU General Public License.
+See http://www.gnu.org/licenses/gpl.html for a recent copy.
+
+On Debian/Ubuntu systems a local copy of the GPL license can also be 
+found in /usr/share/common-licenses.
+
+The code has been packaged for Debian/Ubuntu by Mike Gabriel 
+<m.gabriel at das-netzwerkteam.de>
+
+light+love,
+Dick Kniep and Mike Gabriel
diff --git a/debian/pycompat b/debian/pycompat
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/debian/pycompat
@@ -0,0 +1 @@
+2
diff --git a/debian/pyhoca-gui.docs b/debian/pyhoca-gui.docs
new file mode 100644
index 0000000..1d23e9b
--- /dev/null
+++ b/debian/pyhoca-gui.docs
@@ -0,0 +1,2 @@
+README
+TODO
\ No newline at end of file
diff --git a/debian/pyhoca-gui.install b/debian/pyhoca-gui.install
new file mode 100644
index 0000000..62cc5f6
--- /dev/null
+++ b/debian/pyhoca-gui.install
@@ -0,0 +1 @@
+pyhoca-gui /usr/bin/
\ No newline at end of file
diff --git a/debian/pyhoca-gui.manpages b/debian/pyhoca-gui.manpages
new file mode 100644
index 0000000..b27fa76
--- /dev/null
+++ b/debian/pyhoca-gui.manpages
@@ -0,0 +1 @@
+man/pyhoca-gui.1
\ No newline at end of file
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..ecc9871
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,24 @@
+#!/usr/bin/make -f
+# debian/rules file - for pyhoca-cli
+# Based on sample debian/rules file - for GNU Hello (1.3).
+# Copyright 2010 by Mike Gabriel
+
+#PYVERS=$(shell pyversions -vr)
+
+%:
+	dh ${@}
+
+build:
+	dh ${@}
+
+install:
+	dh ${@}
+
+
+binary-indep:
+	dh ${@}
+
+clean:
+	rm -Rfv debian/pyhoca-cli debian/pyhoca-cli.*.debhelper debian/pyhoca-cli.substvars
+	rm -Rfv debian/tmp debian/patches
+	dh ${@}
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/man/pyhoca-gui.1 b/man/pyhoca-gui.1
new file mode 100644
index 0000000..a33f04e
--- /dev/null
+++ b/man/pyhoca-gui.1
@@ -0,0 +1,69 @@
+'\" -*- coding: utf-8 -*-
+.if \n(.g .ds T< \\FC
+.if \n(.g .ds T> \\F[\n[.fam]]
+.de URL
+\\$2 \(la\\$1\(ra\\$3
+..
+.if \n(.g .mso www.tmac
+.TH pyhoca-gui 1 "21 Sep 2010" "Version 0.0.1" "X2go Application"
+.SH NAME
+pyhoca-gui \- graphical X2go client applet written in Python
+.SH SYNOPSIS
+'nh
+.fi
+.ad l
+\fBpyhoca-gui\fR \kx
+.if (\nx>(\n(.l/2)) .nr x (\n(.l/5)
+'in \n(.iu+\nxu
+[
+\fIoptions\fR
+]
+'in \n(.iu-\nxu
+.ad b
+'hy
+.SH DESCRIPTION
+\fBpyhoca-gui\fR is a cross-platform (Windows, MacOS X, Linux) graphical X2go client applet that
+docks to your desktop's system tray.
+.PP
+From your desktop's system tray you can start/resume/share pre-configured X2go sessions. You can manage the
+pre-configured session profiles in the X2go profile manager and also configure the basic setup of
+\fBpyhoca-gui\fR.
+.PP
+\fBpyhoca-gui\fR uses the same set of config files (\fBsettings\fR, \fBprinting\fR and \fBsessions\fR in ~/.x2goclient) as the original 
+X2go Client application (by Heinz-M. Graesing and Oleksandr Schneydr) does.
+.PP
+See the included README and TODO for further information on \fBpyhoca-gui\fR.
+.SH COMMON OPTIONS
+\fBpyhoca-gui\fR accepts the following common options:
+.TP
+\*(T<\fB\-h, \-\-help\fR\*(T> 
+Display a help with all available command line options and exit.
+.TP 
+\*(T<\fB\-V, \-\-version\fR\*(T> 
+Output version information and exit.
+.TP 
+\*(T<\fB\-d, \-\-debug\fR\*(T> 
+Enable debugging output.
+.TP 
+\*(T<\fB\-\-libdebug\fR\*(T> 
+Enable debugging code of the unterlying Python X2go module.
+.TP 
+\*(T<\fB\-\-libdebug-sftpxfer\fR\*(T> 
+Enable debugging code of Python X2go's sFTP server code (very verbose, and it may even reveal promiscuous data).
+.SH X2GO GUI OPTIONS
+.TP 
+\*(T<\fB\-u, \-\-username\fR \fI<USERNAME>\fR\*(T> 
+Username for the session (default: currently logged in user).
+.TP 
+\*(T<\fB\-p, \-\-password\fR \fI<secret>\fR\*(T> 
+User password, usage not recommended directly from the command line, useful for scripting, though (default: not set).
+.TP
+\*(T<\fB\-m, \-\-minimized\fR\*(T> 
+Start x2go gui minimized on the taskbar.
+.TP 
+\*(T<\fB\-s, \-\-session-profile\fR\*(T>
+The name of the session profile to be used to make the connection.
+.SH "SEE ALSO"
+\fB/usr/share/doc/pyhoca-gui\fR
+.SH AUTHOR
+This manual has been written by Dick Kniep <dick.kniep at lindix.nl> and Mike Gabriel <m.gabriel at das-netzwerkteam.de>.
diff --git a/pyhoca-gui.py b/pyhoca-gui
old mode 100644
new mode 100755
similarity index 64%
rename from pyhoca-gui.py
rename to pyhoca-gui
index aadf9a9..1cdc108
--- a/pyhoca-gui.py
+++ b/pyhoca-gui
@@ -1,34 +1,23 @@
-# -*- coding: utf-8 -*-
 #!/usr/bin/env python
-#-----------------------------------------------------------------------------
-# Name:        pyhoca-gui.py
-# Purpose:     Main program to start the python x2go gui
-#-----------------------------------------------------------------------------
-
-"""
-    Copyright (C) 2010 by Dick Kniep <dick.kniep at lindix.nl>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the
-    Free Software Foundation, Inc.,
-    59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-
-    Contributors to the code of this programme:
-        Jörg Sawatzki <joerg.sawatzki at web.de>
-        Mike Gabriel <m.gabriel at das-netzwerkteam.de>
-"""
-
+# -*- coding: utf-8 -*-
 
+# Copyright (C) 2010 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 
 modules ={}
 
@@ -36,18 +25,20 @@ try:
     import wxversion
     wxversion.select('2.8')
 except: pass
-import wx
-import x2go
-import x2goLogon
 import argparse
-import os.path
 import os
+import os.path
 import sys
 import platform
 import exceptions
 from subprocess import Popen, PIPE
 
-class notsupportedError(exceptions.StandardError): pass
+# Python X2go modules
+import x2go
+
+from pyhoca.wxgui import PyHocaGUI
+
+class NotSupportedException(exceptions.StandardError): pass
 
 # version information
 PROG_NAME = os.path.basename(sys.argv[0])
@@ -65,24 +56,6 @@ VERSION: %s
 __author__ = "Dick J. Kniep"
 __version__ = "$Id$"
 
-class pyhocagui(wx.App):
-    def __init__(self, args, logger, liblogger):
-        self.args = args
-        self.logger = logger
-        self.liblogger = liblogger
-        wx.App.__init__(self)
-
-    def OnInit(self):
-        wx.BeginBusyCursor()
-        self.SetAppName('pyhoca, GUI Client of X2Go')
-        self.SetVendorName('Lindix BV. Almere (c) 2010')
-        x2goLogon.startX2Go(self)
-        wx.EndBusyCursor()
-        return True
-
-    def OnExit(self):
-        pass
-
 # debug options...
 debug_options =  [
                    {'args':['-d','--debug'], 'default': False, 'action': 'store_true', 'help': 'enable application debugging code', },
@@ -102,12 +75,12 @@ def parseargs():
     global DEBUG
     global print_action_args
 
-    p = argparse.ArgumentParser(description='X2go Gui client implemented in (wx)Python.',\
+    p = argparse.ArgumentParser(description='Graphical X2go client implemented in (wx)Python.',\
                                 epilog="""Possible values for the --pack NX option are:""", \
                                 formatter_class=argparse.RawDescriptionHelpFormatter, \
                                 add_help=True, argument_default=None)
     p_debugopts = p.add_argument_group('debug options')
-    p_guiopts = p.add_argument_group('PyHoca Gui options')
+    p_guiopts = p.add_argument_group('PyHoca GUI options')
 
     for (p_group, opts) in ((p_guiopts, x2go_gui_options), (p_debugopts, debug_options)):
         required = False
@@ -119,7 +92,7 @@ def parseargs():
 
     a = p.parse_args()
 
-    logger = x2go.X2goLogger(tag='MAIN')
+    logger = x2go.X2goLogger(tag='PyHoca-GUI')
     liblogger = x2go.X2goLogger()
 
     if a.debug:
@@ -145,7 +118,7 @@ def parseargs():
             import getpass
             a.username = getpass.getuser()
         else:
-            raise notsupportedError('Platform %s is not supported' % platform.system())
+            raise NotSupportedExceptions('Platform %s is not supported' % platform.system())
 
     return a, logger, liblogger
 
@@ -162,13 +135,14 @@ def check_running(logger):
         #logger('psa_out %s' % (psA_out,), x2go.loglevel_DEBUG )
         return psA_out[0].count(PROG_NAME) > 1
     elif platform.system() == 'Windows':
+        # TODO!!!
         return False
 
 def main():
     args, logger, liblogger = parseargs()
     if check_running(logger): sys.exit(0)
-    pgui = pyhocagui(args, logger, liblogger)
-    pgui.MainLoop()
+    thisPyHocaGUI = PyHocaGUI(args, logger, liblogger)
+    thisPyHocaGUI.MainLoop()
 
 if __name__ == '__main__':
     main()
diff --git a/pyhoca/__init__.py b/pyhoca/__init__.py
new file mode 100644
index 0000000..373d6dd
--- /dev/null
+++ b/pyhoca/__init__.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
diff --git a/pyhoca/wxgui/__init__.py b/pyhoca/wxgui/__init__.py
new file mode 100644
index 0000000..c3b0113
--- /dev/null
+++ b/pyhoca/wxgui/__init__.py
@@ -0,0 +1,23 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+__VERSION__ = '0.1.0'
+
+from frontend import *
\ No newline at end of file
diff --git a/SessionProfile.py b/pyhoca/wxgui/_delete_/SessionProfile.py
similarity index 100%
rename from SessionProfile.py
rename to pyhoca/wxgui/_delete_/SessionProfile.py
diff --git a/x2goLogon.py b/pyhoca/wxgui/frontend.py
similarity index 91%
copy from x2goLogon.py
copy to pyhoca/wxgui/frontend.py
index f4e7d67..98dedfb 100644
--- a/x2goLogon.py
+++ b/pyhoca/wxgui/frontend.py
@@ -1,44 +1,62 @@
 # -*- coding: utf-8 -*-
-#-----------------------------------------------------------------------------
-# Name:        x2goLogon.py
-# Purpose:     display the Logon screen for x2go
-#-----------------------------------------------------------------------------
-
-"""
-    Copyright (C) 2010 by Dick Kniep <dick.kniep at lindix.nl>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the
-    Free Software Foundation, Inc.,
-    59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-
-    Contributors to the code of this programme:
-        Jörg Sawatzki <joerg.sawatzki at web.de>
-        Mike Gabriel <m.gabriel at das-netzwerkteam.de>
-"""
 
+# Copyright (C) 2010 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+modules ={}
+
+try:
+    import wxversion
+    wxversion.select('2.8')
+except: pass
 import wx
+import x2go
 import time
 import sys
 import wx.lib.scrolledpanel as scrolled
 import wx.lib.mixins.listctrl as listmix
-import X2goMaintProfile
-from Message import Message
-import x2go
-import pyhocaguiImages
 import platform
 import types
 
+# PyHoca-GUI modules
+import profilemanager
+import images
+from messages import Message
+
+
+class PyHocaGUI(wx.App, x2go.X2goClient):
+    def __init__(self, args, logger, liblogger):
+        self.args = args
+        self.logger = logger
+        self.liblogger = liblogger
+        wx.App.__init__(self)
+
+    def OnInit(self):
+        wx.BeginBusyCursor()
+        self.SetAppName('PyHoca-GUI -- Python based X2go Client')
+        self.SetVendorName('Lindix BV. Almere (c) 2010')
+        startX2Go(self)
+        wx.EndBusyCursor()
+        return True
+
+    def OnExit(self):
+        pass
+
 
 try:
     from agw import knobctrl as KC
@@ -123,7 +141,7 @@ class menuActions(wx.Menu):
 
     def OnAddProfile(self, evt):
         self.logger('Add Profile started', x2go.loglevel_INFO, )
-        X2goMaintProfile.X2goMaintProfile('Add', self.parent, self.SessionProfiles, self.parent.callbackupdList)
+        profilemanager.X2goMaintProfile('Add', self.parent, self.SessionProfiles, self.parent.callbackupdList)
 
     def OnNewSession(self, evt):
         if hasattr(self.parent,'selected_profile'):
@@ -149,7 +167,7 @@ class menuActions(wx.Menu):
     def OnUpdateProfile(self, evt):
         self.logger('Update Profile started', x2go.loglevel_INFO, )
         if self.selected_profile:
-            X2goMaintProfile.X2goMaintProfile('Upd', self.parent, self.SessionProfiles, self.parent.callbackupdList, self.selected_profile)
+            profilemanager.X2goMaintProfile('Upd', self.parent, self.SessionProfiles, self.parent.callbackupdList, self.selected_profile)
 
     def OnExit(self, evt):
         self.logger('Exit application', x2go.loglevel_INFO, )
@@ -255,13 +273,13 @@ class X2GoPasswordScrn(sc.SizedFrame):
         self.onConnect(username, password)
 
     def onConnect(self, username, password):
-        removeParms = ['defsndport', 'useiconv', 'iconvfrom', 'height', 'width', 'export', 'speed', 'quality', 'fullscreen','xdmcpserver', 'rdpoptions', 'print', 'sndport', 'usekbd','fstunnel', 'sound', 'rootless', 'icon', 'default', 'iconvto', 'dpi','rdpserver', 'soundtunnel', 'name','key','applications', 'sshport', 'setdpi', 'startsoundsystem']
+        removeParms = ['defsndport', 'useiconv', 'iconvfrom', 'height', 'width', 'export', 'speed', 'quality', 'fullscreen','xdmcpserver', 'rdpoptions', 'print', 'sndport', 'usekbd','fstunnel', 'sound', 'rootless', 'icon', 'default', 'iconvto', 'dpi','rdpserver', 'soundtunnel', 'name','applications', 'setdpi', 'startsoundsystem']
         error = True
         profile_name = self.current_profile['name']
         profile_id = self.SessionProfiles.to_profile_id(profile_name)
         _params = self.SessionProfiles.get_profile_config(profile_name)
         if 'export' in _params:
-            _params['share_local_folders'] = _params['export']
+            _params['share_local_folders'] = _params['export'].split(',')
         else:
             _params['share_local_folders'] = self.settingsProfile.get('General','sharefolders')
 
@@ -308,8 +326,8 @@ class X2GoListCtrl(wx.ListCtrl, listmix.ListCtrlAutoWidthMixin, listmix.ColumnSo
                  size=wx.DefaultSize, style=0):
         wx.ListCtrl.__init__(self, parent, ID, pos, size, style)
         listmix.ListCtrlAutoWidthMixin.__init__(self)
-        self.sm_up = parent.il.Add(pyhocaguiImages.getSmallUpArrowBitmap())
-        self.sm_dn = parent.il.Add(pyhocaguiImages.getSmallDnArrowBitmap())
+        self.sm_up = parent.il.Add(images.getSmallUpArrowBitmap())
+        self.sm_dn = parent.il.Add(images.getSmallDnArrowBitmap())
         listmix.ColumnSorterMixin.__init__(self, 2)
         self.SortListItems(0, True)
 
@@ -341,9 +359,9 @@ class X2GoChooseSessionScrn(wx.Frame):
         self.list = X2GoListCtrl(self, -1,
                                  style=wx.LC_REPORT | wx.BORDER_NONE | wx.LC_SORT_ASCENDING
                                  )
-        self.idx1 = self.il.Add(pyhocaguiImages.getnetwork_disconnected_lanBitmap())
-        self.idx2 = self.il.Add(pyhocaguiImages.getnetwork_connected_lan_kncBitmap())
-        self.idx3 = self.il.Add(pyhocaguiImages.getresumeBitmap())
+        self.idx1 = self.il.Add(images.getnetwork_disconnected_lanBitmap())
+        self.idx2 = self.il.Add(images.getnetwork_connected_lan_kncBitmap())
+        self.idx3 = self.il.Add(images.getresumeBitmap())
 
         self.list.SetImageList(self.il, wx.IMAGE_LIST_SMALL)
 
@@ -490,7 +508,7 @@ class X2GoLogonTaskBarIcon(wx.TaskBarIcon):
         wx.TaskBarIcon.__init__(self)
         self.parent = parent
         self.parent.parent.logger('Start TaskBarIcon type %s' % (wx.PlatformInfo, ), x2go.loglevel_INFO, )
-        icon = self.MakeIcon(pyhocaguiImages.getx2goclientImage())
+        icon = self.MakeIcon(images.getx2goclientImage())
         self.SetIcon(icon, "x2go connect")
         self.imgidx = 1
 
diff --git a/pyhocaguiImages.py b/pyhoca/wxgui/images.py
similarity index 100%
rename from pyhocaguiImages.py
rename to pyhoca/wxgui/images.py
diff --git a/Message.py b/pyhoca/wxgui/messages.py
similarity index 100%
rename from Message.py
rename to pyhoca/wxgui/messages.py
diff --git a/X2goMaintProfile.py b/pyhoca/wxgui/profilemanager.py
similarity index 100%
rename from X2goMaintProfile.py
rename to pyhoca/wxgui/profilemanager.py
diff --git a/pyhoca/wxgui/x2go b/pyhoca/wxgui/x2go
new file mode 120000
index 0000000..b700370
--- /dev/null
+++ b/pyhoca/wxgui/x2go
@@ -0,0 +1 @@
+../../../../python/python-x2go/trunk/x2go
\ No newline at end of file
diff --git a/x2goLogon.py b/pyhoca/wxgui/x2goLogon.py
similarity index 99%
rename from x2goLogon.py
rename to pyhoca/wxgui/x2goLogon.py
index f4e7d67..d83b837 100644
--- a/x2goLogon.py
+++ b/pyhoca/wxgui/x2goLogon.py
@@ -255,13 +255,13 @@ class X2GoPasswordScrn(sc.SizedFrame):
         self.onConnect(username, password)
 
     def onConnect(self, username, password):
-        removeParms = ['defsndport', 'useiconv', 'iconvfrom', 'height', 'width', 'export', 'speed', 'quality', 'fullscreen','xdmcpserver', 'rdpoptions', 'print', 'sndport', 'usekbd','fstunnel', 'sound', 'rootless', 'icon', 'default', 'iconvto', 'dpi','rdpserver', 'soundtunnel', 'name','key','applications', 'sshport', 'setdpi', 'startsoundsystem']
+        removeParms = ['defsndport', 'useiconv', 'iconvfrom', 'height', 'width', 'export', 'speed', 'quality', 'fullscreen','xdmcpserver', 'rdpoptions', 'print', 'sndport', 'usekbd','fstunnel', 'sound', 'rootless', 'icon', 'default', 'iconvto', 'dpi','rdpserver', 'soundtunnel', 'name','applications', 'setdpi', 'startsoundsystem']
         error = True
         profile_name = self.current_profile['name']
         profile_id = self.SessionProfiles.to_profile_id(profile_name)
         _params = self.SessionProfiles.get_profile_config(profile_name)
         if 'export' in _params:
-            _params['share_local_folders'] = _params['export']
+            _params['share_local_folders'] = _params['export'].split(',')
         else:
             _params['share_local_folders'] = self.settingsProfile.get('General','sharefolders')
 
diff --git a/setup.py b/setup.py
new file mode 100755
index 0000000..bcb5d87
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,35 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# 
+# PyHoca is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PyHoca is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+from setuptools import setup, find_packages
+import pyhoca.wxgui
+
+setup(
+    name = "PyHoca GUI",
+    version = pyhoca.wxgui.__VERSION__,
+    description = "PyHoca GUI is a cross-platform (Windows, MacOS X, Linux) graphical X2go client.",
+    license = 'GPL',
+    author = 'Dick Kniep',
+    url = 'http://www.x2go.org',
+    packages = [ 'pyhoca.wxgui', ],
+    package_dir = {'': '.'},
+    exclude = [ 'pyhoca.wxgui.x2go', ],
+    install_requires = [ 'setuptools', ]
+)


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