[X2Go-Commits] pyhoca-gui.git - build-59a18b6e3b5d3f1dd8f07f26433d37fe5984a57d (branch) updated: 50d9824d2a3d458c8f1437ff189fc12b53df43a1
X2Go dev team
git-admin at x2go.org
Tue Aug 27 13:20:59 CEST 2013
The branch, build-59a18b6e3b5d3f1dd8f07f26433d37fe5984a57d has been updated
via 50d9824d2a3d458c8f1437ff189fc12b53df43a1 (commit)
from cc21b02553f196a6ec456f172cfab7219d4e4424 (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:
README.i18n | 11 +
debian/changelog | 3 +
debian/control | 2 +-
locale | 1 +
po/POTFILES.in | 11 +
po/de.po | 764 ++++++++++++++++++++++++++++++++++++++++
po/en.po | 764 ++++++++++++++++++++++++++++++++++++++++
po/pyhoca-gui.pot | 732 ++++++++++++++++++++++++++++++++++++++
pyhoca-gui | 10 +-
pyhoca/wxgui/about.py | 6 +-
pyhoca/wxgui/basepath.py | 4 +
pyhoca/wxgui/frontend.py | 46 +--
pyhoca/wxgui/logon.py | 52 +--
pyhoca/wxgui/menus_taskbar.py | 42 +--
pyhoca/wxgui/profilemanager.py | 262 +++++++-------
pyhoca/wxgui/taskbar.py | 11 +-
setup.cfg | 6 +
setup.py | 16 +-
18 files changed, 2529 insertions(+), 214 deletions(-)
create mode 100644 README.i18n
create mode 120000 locale
create mode 100644 po/POTFILES.in
create mode 100644 po/de.po
create mode 100644 po/en.po
create mode 100644 po/pyhoca-gui.pot
create mode 100644 setup.cfg
The diff of changes is:
diff --git a/README.i18n b/README.i18n
new file mode 100644
index 0000000..3fd3005
--- /dev/null
+++ b/README.i18n
@@ -0,0 +1,11 @@
+Activating i18n for development...
+----------------------------------
+
+If you test/use PyHoca-GUI from VCS (and not as a distribution package)
+then you have to activate i18n support with this command in PyHoca-GUI's
+base directory:
+
+$ python setup.py build_i18n
+
+light+love,
+Mike Gabriel
\ No newline at end of file
diff --git a/debian/changelog b/debian/changelog
index 85f6168..f3d3799 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,6 +5,9 @@ pyhoca-gui (0.0.21-0~nwt1) lucid maverick testing unstable; urgency=low
* now X2goSessionRegistry.update_status() can differentiate between
,,already running'' sessions (directly after connect) and newly appearing
running sessions while having been connected for quite a while
+ * added i18n support
+ * added i18n English translation file en.po
+ * added i18n German translation file de.po
-- Mike Gabriel <m.gabriel at das-netzwerkteam.de> Mon, 03 Jan 2011 21:51:00 +0100
diff --git a/debian/control b/debian/control
index dd81403..71f199e 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ 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
+Build-Depends: debhelper (>= 7), python, python-setuptools, python-support, python-distutils-extra
Standards-Version: 3.9.0
Homepage: http://das-netzwerkteam.de/site/?q=node/71
XS-Python-Version: >= 2.6
diff --git a/locale b/locale
new file mode 120000
index 0000000..7822838
--- /dev/null
+++ b/locale
@@ -0,0 +1 @@
+build/mo
\ No newline at end of file
diff --git a/po/POTFILES.in b/po/POTFILES.in
new file mode 100644
index 0000000..1bf078d
--- /dev/null
+++ b/po/POTFILES.in
@@ -0,0 +1,11 @@
+pyhoca/__init__.py
+pyhoca/wxgui/notify.py
+pyhoca/wxgui/logon.py
+pyhoca/wxgui/taskbar.py
+pyhoca/wxgui/__init__.py
+pyhoca/wxgui/profilemanager.py
+pyhoca/wxgui/menus_taskbar.py
+pyhoca/wxgui/about.py
+pyhoca/wxgui/basepath.py
+pyhoca/wxgui/frontend.py
+pyhoca-gui
diff --git a/po/de.po b/po/de.po
new file mode 100644
index 0000000..7c5fde3
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,764 @@
+# PyHoca-GUI / i18n.
+# Copyright (C) 2010-2011 Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Dick Kniep <dick.kniep at lindix.nl>
+# This file is distributed under the same license as the PyHoca-GUI package.
+# Mike Gabriel <m.gabriel at das-netzwerkteam.de>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PyHoca-GUI VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-01-10 18:36+0100\n"
+"PO-Revision-Date: 2011-01-10 17:32+0100\n"
+"Last-Translator: Mike Gabriel <m.gabriel at das-netzwerkteam.de>\n"
+"Language-Team: de <m.gabriel at das-netzwerkteam.de>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: German\n"
+"X-Poedit-Country: GERMANY\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../pyhoca/wxgui/logon.py:81
+#, python-format
+msgid "%s (via %s)"
+msgstr "%s (via %s)"
+
+#: ../pyhoca/wxgui/logon.py:83 ../pyhoca/wxgui/logon.py:97
+msgid "Username"
+msgstr "Benutzername"
+
+#: ../pyhoca/wxgui/logon.py:85 ../pyhoca/wxgui/logon.py:99
+msgid "Password"
+msgstr "Kennwort"
+
+#: ../pyhoca/wxgui/logon.py:88
+msgid "Authenticate"
+msgstr "Anmelden"
+
+#: ../pyhoca/wxgui/logon.py:93
+msgid "Session login"
+msgstr "Sitzungslogin"
+
+#: ../pyhoca/wxgui/logon.py:94
+msgid "SSH proxy server login"
+msgstr "Anmeldung an SSH Proxy"
+
+#: ../pyhoca/wxgui/logon.py:102
+msgid " Start SSH tunnel "
+msgstr "SSH Tunnel aufbauen"
+
+#: ../pyhoca/wxgui/logon.py:112 ../pyhoca/wxgui/profilemanager.py:247
+msgid "Cancel"
+msgstr "Abbrechen"
+
+#: ../pyhoca/wxgui/logon.py:235 ../pyhoca/wxgui/logon.py:267
+#: ../pyhoca/wxgui/frontend.py:309
+#, python-format
+msgid "%s - connect failure"
+msgstr "%s - Verbindung fehlgeschlagen"
+
+#: ../pyhoca/wxgui/logon.py:236 ../pyhoca/wxgui/frontend.py:309
+msgid "User is not allowed to start X2go sessions!"
+msgstr "Benutzer darf keine X2go Sitzungen starten!"
+
+#: ../pyhoca/wxgui/logon.py:241 ../pyhoca/wxgui/frontend.py:313
+#, python-format
+msgid "%s - connect"
+msgstr "%s - verbinden"
+
+#: ../pyhoca/wxgui/logon.py:242
+msgid "Authentication has been successful."
+msgstr "Anmeldung war erfolgreich."
+
+#: ../pyhoca/wxgui/logon.py:263
+msgid "SSH tunnel started"
+msgstr "SSH Tunnel gestartet"
+
+#: ../pyhoca/wxgui/logon.py:268
+msgid "Authentication failed!"
+msgstr "Anmeldung fehlgeschlagen!"
+
+#: ../pyhoca/wxgui/logon.py:273
+#, python-format
+msgid "%s - ssh proxy"
+msgstr "%s - SSH Proxy"
+
+#: ../pyhoca/wxgui/logon.py:274
+msgid "Authentication to the SSH proxy server failed!"
+msgstr "Anmeldung am SSH Proxy Server ist fehlgeschlagen"
+
+#: ../pyhoca/wxgui/logon.py:280 ../pyhoca/wxgui/logon.py:286
+#: ../pyhoca/wxgui/logon.py:291 ../pyhoca/wxgui/frontend.py:326
+#: ../pyhoca/wxgui/frontend.py:329 ../pyhoca/wxgui/frontend.py:332
+#: ../pyhoca/wxgui/frontend.py:335
+#, python-format
+msgid "%s - connect error"
+msgstr "%s - Verbindungsfehler"
+
+#: ../pyhoca/wxgui/logon.py:292
+msgid "An unknown error occured during authentication!"
+msgstr "Ein unbekannter Fehler ist während der Serveranmeldung aufgetreten!"
+
+#: ../pyhoca/wxgui/taskbar.py:94
+#, python-format
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+msgstr ""
+"PyHoca-GUI\n"
+"Verbinde mit ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:97
+#, python-format
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Verbindungsaufbau zu X2go server ,,%s'' läuft"
+
+#: ../pyhoca/wxgui/taskbar.py:102
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+msgstr "Verbindlich mit X2go ..."
+
+#: ../pyhoca/wxgui/taskbar.py:105
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Verbindungen zu entferntem X2go server aufbauen"
+
+#: ../pyhoca/wxgui/profilemanager.py:56
+msgid "GNOME Desktop (GNOME)"
+msgstr "GNOME Desktop (GNOME)"
+
+#: ../pyhoca/wxgui/profilemanager.py:57
+msgid "K Desktop Environment (KDE)"
+msgstr "K Desktop Environment (KDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:58
+msgid "Lightweight X Desktop (LXDE)"
+msgstr "Lightweight X Desktop (LXDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:59
+msgid "XDMCP Query"
+msgstr "XDMCP-Serveranfrage (Query)"
+
+#. 'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+#: ../pyhoca/wxgui/profilemanager.py:61
+msgid "Windows Terminal Server (RDP-proxy)"
+msgstr "Windows Terminalserver (RDP-proxy)"
+
+#. 'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+#: ../pyhoca/wxgui/profilemanager.py:63
+msgid "Single Application"
+msgstr "Einzelne Anwendung"
+
+#: ../pyhoca/wxgui/profilemanager.py:64 ../pyhoca/wxgui/profilemanager.py:146
+msgid "Custom command"
+msgstr "Benutzerdefiniertes Kommando"
+
+#: ../pyhoca/wxgui/profilemanager.py:67
+msgid "Internet Browser"
+msgstr "Internetbrowser"
+
+#: ../pyhoca/wxgui/profilemanager.py:68
+msgid "Email Client"
+msgstr "E-Mail Programm"
+
+#: ../pyhoca/wxgui/profilemanager.py:69
+msgid "Openoffice.org"
+msgstr "Openoffice.org"
+
+#: ../pyhoca/wxgui/profilemanager.py:70
+msgid "Terminal"
+msgstr "Terminalkonsole"
+
+#: ../pyhoca/wxgui/profilemanager.py:80
+msgid "Open file with system's default application"
+msgstr "Mit Standardanwendung des Systems öffnen"
+
+#: ../pyhoca/wxgui/profilemanager.py:81
+msgid "Open application chooser dialog"
+msgstr "Auswahldialog öffnen, um Anwendung auszuwählen"
+
+#: ../pyhoca/wxgui/profilemanager.py:82
+msgid "Save incoming file as ..."
+msgstr "Eingehende Datei speichern unter ..."
+
+#: ../pyhoca/wxgui/profilemanager.py:117
+msgid "Server"
+msgstr "Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:118
+msgid "Connection Link Speed"
+msgstr "Verbindungsgeschwindigkeit"
+
+#: ../pyhoca/wxgui/profilemanager.py:119
+msgid "Compression"
+msgstr "Komprimierung"
+
+#: ../pyhoca/wxgui/profilemanager.py:120
+msgid "Display"
+msgstr "Anzeige"
+
+#: ../pyhoca/wxgui/profilemanager.py:121
+msgid "Keyboard"
+msgstr "Tastatur"
+
+#: ../pyhoca/wxgui/profilemanager.py:122
+msgid "Sound"
+msgstr "Audio"
+
+#: ../pyhoca/wxgui/profilemanager.py:123
+msgid "Printing"
+msgstr "Drucken"
+
+#: ../pyhoca/wxgui/profilemanager.py:124
+msgid "Folder Exports"
+msgstr "Ordnerfreigabe"
+
+#: ../pyhoca/wxgui/profilemanager.py:125
+msgid "File Import"
+msgstr "Dateiimport"
+
+#. ##
+#. ## widgets for the SESSION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:130
+msgid "Profile name"
+msgstr "Profilname"
+
+#: ../pyhoca/wxgui/profilemanager.py:140
+msgid "Profile icon"
+msgstr "Profilsymbol"
+
+#: ../pyhoca/wxgui/profilemanager.py:142
+msgid "Session type"
+msgstr "Sitzungstyp"
+
+#: ../pyhoca/wxgui/profilemanager.py:144
+msgid "Application"
+msgstr "Anwendung"
+
+#: ../pyhoca/wxgui/profilemanager.py:148
+msgid "RDP settings"
+msgstr "RDP Einstellungen"
+
+#: ../pyhoca/wxgui/profilemanager.py:149
+msgid "RDP server"
+msgstr "RDP Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:151
+msgid "RDP options"
+msgstr "RDP Optionen"
+
+#: ../pyhoca/wxgui/profilemanager.py:153
+msgid "XDMCP server"
+msgstr "XDMCP Server"
+
+#. ##
+#. ## widgets for the CONNECTION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:159 ../pyhoca/wxgui/profilemanager.py:171
+msgid "User"
+msgstr "Benutzer"
+
+#: ../pyhoca/wxgui/profilemanager.py:161
+msgid "Host"
+msgstr "Hostname"
+
+#: ../pyhoca/wxgui/profilemanager.py:163
+msgid "Port"
+msgstr "Port"
+
+#: ../pyhoca/wxgui/profilemanager.py:165
+msgid "RSA/DSA private key"
+msgstr "Privater RSA/DSA Schlüssel"
+
+#: ../pyhoca/wxgui/profilemanager.py:168
+msgid "Server behind SSH proxy"
+msgstr "Server hinter SSH-Proxy"
+
+#: ../pyhoca/wxgui/profilemanager.py:169
+msgid "Host[:Port]"
+msgstr "Hostname[:Port]"
+
+#: ../pyhoca/wxgui/profilemanager.py:173
+msgid "Key file"
+msgstr "Schlüssel"
+
+#: ../pyhoca/wxgui/profilemanager.py:176
+msgid "SSH Proxy Tunnel"
+msgstr "SSH-Proxytunnel"
+
+#: ../pyhoca/wxgui/profilemanager.py:184
+msgid "Modem"
+msgstr "Modem"
+
+#: ../pyhoca/wxgui/profilemanager.py:185
+msgid "ISDN"
+msgstr "ISDN"
+
+#: ../pyhoca/wxgui/profilemanager.py:186
+msgid "ADSL"
+msgstr "ADSL"
+
+#: ../pyhoca/wxgui/profilemanager.py:187
+msgid "WAN"
+msgstr "WAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:188
+msgid "LAN"
+msgstr "LAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:190
+msgid "Method"
+msgstr "Methode"
+
+#: ../pyhoca/wxgui/profilemanager.py:192
+msgid "Image quality"
+msgstr "Bildqualität"
+
+#. ##
+#. ## wigdets for the SETTINGS tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:198
+msgid "Fullscreen"
+msgstr "Vollbild"
+
+#: ../pyhoca/wxgui/profilemanager.py:199
+msgid "Custom Size"
+msgstr "Benutzerdefinierte Größe"
+
+#: ../pyhoca/wxgui/profilemanager.py:204
+msgid "Set display DPI"
+msgstr "DPI-Wert für Anzeige setzen"
+
+#: ../pyhoca/wxgui/profilemanager.py:206
+msgid "Keep current keyboard settings"
+msgstr "Aktuelle Tastatureinstellungen beibehalten"
+
+#: ../pyhoca/wxgui/profilemanager.py:207
+msgid "Keyboard layout"
+msgstr "Tastaturlayout"
+
+#: ../pyhoca/wxgui/profilemanager.py:209
+msgid "Keyboard model"
+msgstr "Tastaturmodell"
+
+#: ../pyhoca/wxgui/profilemanager.py:211
+msgid "Enable sound support"
+msgstr "Audiounterstützung aktivieren"
+
+#: ../pyhoca/wxgui/profilemanager.py:212
+msgid "Pulse Audio"
+msgstr "Pulse Audio"
+
+#: ../pyhoca/wxgui/profilemanager.py:213
+msgid "Arts"
+msgstr "Arts"
+
+#: ../pyhoca/wxgui/profilemanager.py:214
+msgid "esd"
+msgstr "esd"
+
+#: ../pyhoca/wxgui/profilemanager.py:215
+msgid "Use default sound port"
+msgstr "Standard Audio-Port verwenden"
+
+#: ../pyhoca/wxgui/profilemanager.py:216
+msgid "Custom sound port"
+msgstr "Benutzerdefinierter Audio-Port"
+
+#: ../pyhoca/wxgui/profilemanager.py:218
+msgid "Client Side printing"
+msgstr "Unterstützung für lokale Druckeranbindung"
+
+#: ../pyhoca/wxgui/profilemanager.py:220
+msgid "Use local folder sharing"
+msgstr "Lokale Ordnerfreigabe verwenden"
+
+#: ../pyhoca/wxgui/profilemanager.py:221
+msgid "Path"
+msgstr "Pfad"
+
+#: ../pyhoca/wxgui/profilemanager.py:224 ../pyhoca/wxgui/profilemanager.py:241
+msgid "Add"
+msgstr "Hinzufügen"
+
+#: ../pyhoca/wxgui/profilemanager.py:226
+msgid "Delete"
+msgstr "Entfernen"
+
+#: ../pyhoca/wxgui/profilemanager.py:228
+msgid "Convert between client and server encodings"
+msgstr "Zeichenkodierung zwischen Server und Client übersetzen"
+
+#: ../pyhoca/wxgui/profilemanager.py:229
+msgid "Client encoding"
+msgstr "Zeichenkodierung Client"
+
+#: ../pyhoca/wxgui/profilemanager.py:231
+msgid "Server encoding"
+msgstr "Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:234
+msgid "Use file dropbox for local file import"
+msgstr "Datei-Dropbox für lokalen Dateiimport verwenden"
+
+#: ../pyhoca/wxgui/profilemanager.py:235
+msgid "Extensions"
+msgstr "Erweiterungen"
+
+#: ../pyhoca/wxgui/profilemanager.py:237
+msgid "Action"
+msgstr "Aktion"
+
+#: ../pyhoca/wxgui/profilemanager.py:242
+msgid "Defaults"
+msgstr "Standardwerte"
+
+#: ../pyhoca/wxgui/profilemanager.py:244
+msgid "Save"
+msgstr "Speichern"
+
+#: ../pyhoca/wxgui/profilemanager.py:245
+msgid "Reset"
+msgstr "Zurücksetzen"
+
+#: ../pyhoca/wxgui/profilemanager.py:282
+msgid "PyHoca-GUI Profile Manager - new profile"
+msgstr "PyHoca-GUI Profilmanager - neues Sitzungsprofil"
+
+#: ../pyhoca/wxgui/profilemanager.py:284
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s (connected)"
+msgstr "PyHoca-GUI Profilmanager - %s (verbunden)"
+
+#: ../pyhoca/wxgui/profilemanager.py:286
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s"
+msgstr "PyHoca-GUI Profilmanager - %s"
+
+#: ../pyhoca/wxgui/profilemanager.py:603
+msgid "Session Profile"
+msgstr "Sitzungsprofil"
+
+#: ../pyhoca/wxgui/profilemanager.py:604
+msgid "Connection"
+msgstr "Verbindung"
+
+#: ../pyhoca/wxgui/profilemanager.py:605
+msgid "Settings"
+msgstr "Einstellungen"
+
+#: ../pyhoca/wxgui/profilemanager.py:606
+msgid "Sharing"
+msgstr "Ordnerfreigabe"
+
+#: ../pyhoca/wxgui/profilemanager.py:961
+msgid "Icon Files (*.png)|*.png|All files (*.*)|*"
+msgstr "Icon Dateien (*.png)|*.png|Alle Dateien (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:964
+msgid "Choose an icon for this session profile"
+msgstr "Sitzungs-Icon für dieses Sitzungsprofil auswählen"
+
+#: ../pyhoca/wxgui/profilemanager.py:1072
+msgid "All files (*.*)|*"
+msgstr "Alle Dateien (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:1074
+#: ../pyhoca/wxgui/profilemanager.py:1089
+msgid "Choose a public SSH key"
+msgstr "Öffentlichen SSH-Schlüssel auswählen"
+
+#: ../pyhoca/wxgui/profilemanager.py:1212
+msgid "Choose a folder to share within a session"
+msgstr "Ordner zur Freigabe für Sitzungen auswählen"
+
+#: ../pyhoca/wxgui/profilemanager.py:1277 ../pyhoca/wxgui/menus_taskbar.py:86
+msgid "Profile Manager"
+msgstr "Profilmanager"
+
+#: ../pyhoca/wxgui/profilemanager.py:1277
+msgid "Profile name is missing, profile unusable!!!"
+msgstr "Der Profilname fehlt, Profil so nicht verwendbar!!!"
+
+#: ../pyhoca/wxgui/profilemanager.py:1297
+#, python-format
+msgid "%s - profile added"
+msgstr "%s - Profil hinzugefügt"
+
+#: ../pyhoca/wxgui/profilemanager.py:1298
+msgid "A new session profile has been added."
+msgstr "Ein neues Sitzungsprofil wurde hinzugefügt."
+
+#: ../pyhoca/wxgui/profilemanager.py:1302
+#, python-format
+msgid "%s - modified"
+msgstr "%s - modifiziert"
+
+#: ../pyhoca/wxgui/profilemanager.py:1303
+msgid "Changes to profile have been saved."
+msgstr "Änderungen am Profil wurden übernommen."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:55
+msgid "Edit Profile"
+msgstr "Sitzungsprofil bearbeiten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:57
+msgid "Delete Profile"
+msgstr "Sitzungsprofil löschen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:79 ../pyhoca/wxgui/about.py:55
+#: ../pyhoca/wxgui/about.py:57
+#, python-format
+msgid "About %s ..."
+msgstr "Über %s ..."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:97
+msgid "Client Options"
+msgstr "Optionen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:105 ../pyhoca/wxgui/menus_taskbar.py:328
+msgid "E&xit"
+msgstr "&Beenden"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:142
+msgid "Resume Session"
+msgstr "Sitzung fortfahren"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:145
+msgid "Transfer Session"
+msgstr "Sitzung übernehmen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:146
+msgid "Suspend Session"
+msgstr "Sitzung anhalten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:148
+msgid "Terminate Session"
+msgstr "Sitzung beenden"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:186
+msgid "Start &new Session"
+msgstr "&Neue Sitzung starten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:199
+msgid "Running"
+msgstr "aktiv"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:201
+msgid "Suspended"
+msgstr "angehalten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:211
+msgid "&Clean all sessions"
+msgstr "Alle Sitzungen beenden"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:213
+msgid "Customize &profile"
+msgstr "Sitzungsprofil anpassen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:215
+msgid "Share local &folder"
+msgstr "Lokalen Ordner verbinden"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:220
+msgid "&Disconnect from Server"
+msgstr "Von Server trennen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:248
+msgid "Add Profile"
+msgstr "Sitzungsprofil hinzufügen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:274
+msgid "No session profiles defined"
+msgstr "keine Sitzungsprofile definiert"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Start/Resume Session"
+msgstr "Sitzung starten/fortfahren"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Connect Server"
+msgstr "Serververbindung aufbauen"
+
+#: ../pyhoca/wxgui/frontend.py:313
+msgid "Public SSH key authentication has been successful."
+msgstr "Authentifizierung mit öffentlichem SSH Schlüssel war erfolgreich."
+
+#: ../pyhoca/wxgui/frontend.py:335
+msgid "Authentication protocol communication incomplete! Try again..."
+msgstr ""
+"Kommunikation während Authentifizierungsprotokoll unvollständig! Nochmal "
+"versuchen..."
+
+#: ../pyhoca/wxgui/frontend.py:411
+msgid "Cleaning X2go sessions..."
+msgstr "Beende X2go Sitzungen..."
+
+#: ../pyhoca/wxgui/frontend.py:431
+#, python-format
+msgid "%s - disconnect"
+msgstr "%s - trennen"
+
+#: ../pyhoca/wxgui/frontend.py:431
+msgid "X2go Profile is now disconnected."
+msgstr "X2go Profil ist nun nicht mehr verbunden."
+
+#: ../pyhoca/wxgui/frontend.py:439
+msgid "New Session Profile"
+msgstr "Neues Sitzungsprofil"
+
+#: ../pyhoca/wxgui/frontend.py:468
+#, python-format
+msgid "%s - profile deleted"
+msgstr "%s - Profil gelöscht"
+
+#: ../pyhoca/wxgui/frontend.py:468
+msgid "The session profile has been deleted."
+msgstr "Das Sitzungsprofil wurde gelöscht."
+
+#: ../pyhoca/wxgui/frontend.py:483
+#, python-format
+msgid "%s - share local folder with sessions of this profile"
+msgstr "%s - lokalen Ordner für dieses Sitzungsprofile freigeben"
+
+#: ../pyhoca/wxgui/frontend.py:526
+#, python-format
+msgid "%s - channel error"
+msgstr "%s - Verbindungsfehler"
+
+#: ../pyhoca/wxgui/frontend.py:526
+#, python-format
+msgid ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+msgstr ""
+"Die Verbindung zum Server %s wurde unerwartet unterbrochen! Bitte versuchen "
+"Sie, sich neu am Server anzumelden..."
+
+#: ../pyhoca/wxgui/frontend.py:530
+#, python-format
+msgid "%s - print job"
+msgstr "%s - Druckauftrag"
+
+#: ../pyhoca/wxgui/frontend.py:530
+#, python-format
+msgid ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+msgstr ""
+"Druckdialog für eingehende Druckaufträge ist bislang nicht implementiert!!!\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:551
+#, python-format
+msgid "%s - print error"
+msgstr "%s - Druckfehler"
+
+#: ../pyhoca/wxgui/frontend.py:551
+#, python-format
+msgid ""
+"%s\n"
+"...caused by session\n"
+"%s"
+msgstr ""
+"%s\n"
+"...verursacht von Sitzung\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:553 ../pyhoca/wxgui/frontend.py:555
+#, python-format
+msgid "%s - start"
+msgstr "%s - Start"
+
+#: ../pyhoca/wxgui/frontend.py:553
+#, python-format
+msgid ""
+"New X2go session starting up...\n"
+"%s"
+msgstr ""
+"Neue X2go Sitzung wird gestartet...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:555
+#, python-format
+msgid ""
+"Another client started X2go session\n"
+"%s"
+msgstr ""
+"Ein anderes X2go Programm hat diese Sitzung gestartet\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:557 ../pyhoca/wxgui/frontend.py:559
+#, python-format
+msgid "%s - resume"
+msgstr "%s - fortsetzen"
+
+#: ../pyhoca/wxgui/frontend.py:557
+#, python-format
+msgid ""
+"Resuming X2go session...\n"
+"%s"
+msgstr ""
+"X2go Sitzung wird fortgesetzt...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:559
+#, python-format
+msgid ""
+"Another client resumed X2go session\n"
+"%s"
+msgstr ""
+"Eine andere X2go Anwendung hat die Sitzung fortgesetzt\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:561
+#, python-format
+msgid "%s - running"
+msgstr "%s - aktiv"
+
+#: ../pyhoca/wxgui/frontend.py:561
+#, python-format
+msgid ""
+"Found already running session\n"
+"%s"
+msgstr ""
+"Bereits aktive Sitzung gefunden\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:563
+#, python-format
+msgid "%s - suspend"
+msgstr "%s - anhalten"
+
+#: ../pyhoca/wxgui/frontend.py:563
+#, python-format
+msgid ""
+"X2go Session has been suspended\n"
+"%s"
+msgstr ""
+"X2go Sitzung wurde angehalten\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:571
+#, python-format
+msgid "%s - terminate"
+msgstr "%s - beenden"
+
+#: ../pyhoca/wxgui/frontend.py:571
+#, python-format
+msgid ""
+"X2go Session has terminated\n"
+"%s"
+msgstr ""
+"X2go Sitzung wurde beendet\n"
+"%s"
diff --git a/po/en.po b/po/en.po
new file mode 100644
index 0000000..2453fbf
--- /dev/null
+++ b/po/en.po
@@ -0,0 +1,764 @@
+# PyHoca-GUI / i18n.
+# Copyright (C) 2010-2011 Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Dick Kniep <dick.kniep at lindix.nl>
+# This file is distributed under the same license as the PyHoca-GUI package.
+# Mike Gabriel <m.gabriel at das-netzwerkteam.de>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PyHoca-GUI VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-01-10 18:36+0100\n"
+"PO-Revision-Date: 2011-01-10 17:31+0100\n"
+"Last-Translator: Mike Gabriel <m.gabriel at das-netzwerkteam.de>\n"
+"Language-Team: en <m.gabriel at das-netzwerkteam.de>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: English\n"
+"X-Poedit-Country: UNITED STATES\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../pyhoca/wxgui/logon.py:81
+#, python-format
+msgid "%s (via %s)"
+msgstr "%s (via %s)"
+
+#: ../pyhoca/wxgui/logon.py:83 ../pyhoca/wxgui/logon.py:97
+msgid "Username"
+msgstr "Username"
+
+#: ../pyhoca/wxgui/logon.py:85 ../pyhoca/wxgui/logon.py:99
+msgid "Password"
+msgstr "Password"
+
+#: ../pyhoca/wxgui/logon.py:88
+msgid "Authenticate"
+msgstr "Authenticate"
+
+#: ../pyhoca/wxgui/logon.py:93
+msgid "Session login"
+msgstr "Session login"
+
+#: ../pyhoca/wxgui/logon.py:94
+msgid "SSH proxy server login"
+msgstr "SSH proxy server login"
+
+#: ../pyhoca/wxgui/logon.py:102
+msgid " Start SSH tunnel "
+msgstr " Start SSH tunnel "
+
+#: ../pyhoca/wxgui/logon.py:112 ../pyhoca/wxgui/profilemanager.py:247
+msgid "Cancel"
+msgstr "Cancel"
+
+#: ../pyhoca/wxgui/logon.py:235 ../pyhoca/wxgui/logon.py:267
+#: ../pyhoca/wxgui/frontend.py:309
+#, python-format
+msgid "%s - connect failure"
+msgstr "%s - connect failure"
+
+#: ../pyhoca/wxgui/logon.py:236 ../pyhoca/wxgui/frontend.py:309
+msgid "User is not allowed to start X2go sessions!"
+msgstr "User is not allowed to start X2go sessions!"
+
+#: ../pyhoca/wxgui/logon.py:241 ../pyhoca/wxgui/frontend.py:313
+#, python-format
+msgid "%s - connect"
+msgstr "%s - connect"
+
+#: ../pyhoca/wxgui/logon.py:242
+msgid "Authentication has been successful."
+msgstr "Authentication has been successful."
+
+#: ../pyhoca/wxgui/logon.py:263
+msgid "SSH tunnel started"
+msgstr "SSH tunnel started"
+
+#: ../pyhoca/wxgui/logon.py:268
+msgid "Authentication failed!"
+msgstr "Authentication failed!"
+
+#: ../pyhoca/wxgui/logon.py:273
+#, python-format
+msgid "%s - ssh proxy"
+msgstr "%s - ssh proxy"
+
+#: ../pyhoca/wxgui/logon.py:274
+msgid "Authentication to the SSH proxy server failed!"
+msgstr "Authentication to the SSH proxy server failed!"
+
+#: ../pyhoca/wxgui/logon.py:280 ../pyhoca/wxgui/logon.py:286
+#: ../pyhoca/wxgui/logon.py:291 ../pyhoca/wxgui/frontend.py:326
+#: ../pyhoca/wxgui/frontend.py:329 ../pyhoca/wxgui/frontend.py:332
+#: ../pyhoca/wxgui/frontend.py:335
+#, python-format
+msgid "%s - connect error"
+msgstr "%s - connect error"
+
+#: ../pyhoca/wxgui/logon.py:292
+msgid "An unknown error occured during authentication!"
+msgstr "An unknown error occured during authentication!"
+
+#: ../pyhoca/wxgui/taskbar.py:94
+#, python-format
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+msgstr ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:97
+#, python-format
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:102
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+msgstr ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+
+#: ../pyhoca/wxgui/taskbar.py:105
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+
+#: ../pyhoca/wxgui/profilemanager.py:56
+msgid "GNOME Desktop (GNOME)"
+msgstr "GNOME Desktop (GNOME)"
+
+#: ../pyhoca/wxgui/profilemanager.py:57
+msgid "K Desktop Environment (KDE)"
+msgstr "K Desktop Environment (KDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:58
+msgid "Lightweight X Desktop (LXDE)"
+msgstr "Lightweight X Desktop (LXDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:59
+msgid "XDMCP Query"
+msgstr "XDMCP Query"
+
+#. 'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+#: ../pyhoca/wxgui/profilemanager.py:61
+msgid "Windows Terminal Server (RDP-proxy)"
+msgstr "Windows Terminal Server (RDP-proxy)"
+
+#. 'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+#: ../pyhoca/wxgui/profilemanager.py:63
+msgid "Single Application"
+msgstr "Single Application"
+
+#: ../pyhoca/wxgui/profilemanager.py:64 ../pyhoca/wxgui/profilemanager.py:146
+msgid "Custom command"
+msgstr "Custom command"
+
+#: ../pyhoca/wxgui/profilemanager.py:67
+msgid "Internet Browser"
+msgstr "Internet Browser"
+
+#: ../pyhoca/wxgui/profilemanager.py:68
+msgid "Email Client"
+msgstr "Email Client"
+
+#: ../pyhoca/wxgui/profilemanager.py:69
+msgid "Openoffice.org"
+msgstr "Openoffice.org"
+
+#: ../pyhoca/wxgui/profilemanager.py:70
+msgid "Terminal"
+msgstr "Terminal"
+
+#: ../pyhoca/wxgui/profilemanager.py:80
+msgid "Open file with system's default application"
+msgstr "Open file with system's default application"
+
+#: ../pyhoca/wxgui/profilemanager.py:81
+msgid "Open application chooser dialog"
+msgstr "Open application chooser dialog"
+
+#: ../pyhoca/wxgui/profilemanager.py:82
+msgid "Save incoming file as ..."
+msgstr "Save incoming file as ..."
+
+#: ../pyhoca/wxgui/profilemanager.py:117
+msgid "Server"
+msgstr "Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:118
+msgid "Connection Link Speed"
+msgstr "Connection Link Speed"
+
+#: ../pyhoca/wxgui/profilemanager.py:119
+msgid "Compression"
+msgstr "Compression"
+
+#: ../pyhoca/wxgui/profilemanager.py:120
+msgid "Display"
+msgstr "Display"
+
+#: ../pyhoca/wxgui/profilemanager.py:121
+msgid "Keyboard"
+msgstr "Keyboard"
+
+#: ../pyhoca/wxgui/profilemanager.py:122
+msgid "Sound"
+msgstr "Sound"
+
+#: ../pyhoca/wxgui/profilemanager.py:123
+msgid "Printing"
+msgstr "Printing"
+
+#: ../pyhoca/wxgui/profilemanager.py:124
+msgid "Folder Exports"
+msgstr "Folder Exports"
+
+#: ../pyhoca/wxgui/profilemanager.py:125
+msgid "File Import"
+msgstr "File Import"
+
+#. ##
+#. ## widgets for the SESSION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:130
+msgid "Profile name"
+msgstr "Profile name"
+
+#: ../pyhoca/wxgui/profilemanager.py:140
+msgid "Profile icon"
+msgstr "Profile icon"
+
+#: ../pyhoca/wxgui/profilemanager.py:142
+msgid "Session type"
+msgstr "Session type"
+
+#: ../pyhoca/wxgui/profilemanager.py:144
+msgid "Application"
+msgstr "Application"
+
+#: ../pyhoca/wxgui/profilemanager.py:148
+msgid "RDP settings"
+msgstr "RDP settings"
+
+#: ../pyhoca/wxgui/profilemanager.py:149
+msgid "RDP server"
+msgstr "RDP server"
+
+#: ../pyhoca/wxgui/profilemanager.py:151
+msgid "RDP options"
+msgstr "RDP options"
+
+#: ../pyhoca/wxgui/profilemanager.py:153
+msgid "XDMCP server"
+msgstr "XDMCP server"
+
+#. ##
+#. ## widgets for the CONNECTION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:159 ../pyhoca/wxgui/profilemanager.py:171
+msgid "User"
+msgstr "User"
+
+#: ../pyhoca/wxgui/profilemanager.py:161
+msgid "Host"
+msgstr "Host"
+
+#: ../pyhoca/wxgui/profilemanager.py:163
+msgid "Port"
+msgstr "Port"
+
+#: ../pyhoca/wxgui/profilemanager.py:165
+msgid "RSA/DSA private key"
+msgstr "RSA/DSA private key"
+
+#: ../pyhoca/wxgui/profilemanager.py:168
+msgid "Server behind SSH proxy"
+msgstr "Server behind SSH proxy"
+
+#: ../pyhoca/wxgui/profilemanager.py:169
+msgid "Host[:Port]"
+msgstr "Host[:Port]"
+
+#: ../pyhoca/wxgui/profilemanager.py:173
+msgid "Key file"
+msgstr "Key file"
+
+#: ../pyhoca/wxgui/profilemanager.py:176
+msgid "SSH Proxy Tunnel"
+msgstr "SSH Proxy Tunnel"
+
+#: ../pyhoca/wxgui/profilemanager.py:184
+msgid "Modem"
+msgstr "Modem"
+
+#: ../pyhoca/wxgui/profilemanager.py:185
+msgid "ISDN"
+msgstr "ISDN"
+
+#: ../pyhoca/wxgui/profilemanager.py:186
+msgid "ADSL"
+msgstr "ADSL"
+
+#: ../pyhoca/wxgui/profilemanager.py:187
+msgid "WAN"
+msgstr "WAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:188
+msgid "LAN"
+msgstr "LAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:190
+msgid "Method"
+msgstr "Method"
+
+#: ../pyhoca/wxgui/profilemanager.py:192
+msgid "Image quality"
+msgstr "Image quality"
+
+#. ##
+#. ## wigdets for the SETTINGS tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:198
+msgid "Fullscreen"
+msgstr "Fullscreen"
+
+#: ../pyhoca/wxgui/profilemanager.py:199
+msgid "Custom Size"
+msgstr "Custom Size"
+
+#: ../pyhoca/wxgui/profilemanager.py:204
+msgid "Set display DPI"
+msgstr "Set display DPI"
+
+#: ../pyhoca/wxgui/profilemanager.py:206
+msgid "Keep current keyboard settings"
+msgstr "Keep current keyboard settings"
+
+#: ../pyhoca/wxgui/profilemanager.py:207
+msgid "Keyboard layout"
+msgstr "Keyboard layout"
+
+#: ../pyhoca/wxgui/profilemanager.py:209
+msgid "Keyboard model"
+msgstr "Keyboard model"
+
+#: ../pyhoca/wxgui/profilemanager.py:211
+msgid "Enable sound support"
+msgstr "Enable sound support"
+
+#: ../pyhoca/wxgui/profilemanager.py:212
+msgid "Pulse Audio"
+msgstr "Pulse Audio"
+
+#: ../pyhoca/wxgui/profilemanager.py:213
+msgid "Arts"
+msgstr "Arts"
+
+#: ../pyhoca/wxgui/profilemanager.py:214
+msgid "esd"
+msgstr "esd"
+
+#: ../pyhoca/wxgui/profilemanager.py:215
+msgid "Use default sound port"
+msgstr "Use default sound port"
+
+#: ../pyhoca/wxgui/profilemanager.py:216
+msgid "Custom sound port"
+msgstr "Custom sound port"
+
+#: ../pyhoca/wxgui/profilemanager.py:218
+msgid "Client Side printing"
+msgstr "Client Side printing"
+
+#: ../pyhoca/wxgui/profilemanager.py:220
+msgid "Use local folder sharing"
+msgstr "Use local folder sharing"
+
+#: ../pyhoca/wxgui/profilemanager.py:221
+msgid "Path"
+msgstr "Path"
+
+#: ../pyhoca/wxgui/profilemanager.py:224 ../pyhoca/wxgui/profilemanager.py:241
+msgid "Add"
+msgstr "Add"
+
+#: ../pyhoca/wxgui/profilemanager.py:226
+msgid "Delete"
+msgstr "Delete"
+
+#: ../pyhoca/wxgui/profilemanager.py:228
+msgid "Convert between client and server encodings"
+msgstr "Convert between client and server encodings"
+
+#: ../pyhoca/wxgui/profilemanager.py:229
+msgid "Client encoding"
+msgstr "Client encoding"
+
+#: ../pyhoca/wxgui/profilemanager.py:231
+msgid "Server encoding"
+msgstr "Server encoding"
+
+#: ../pyhoca/wxgui/profilemanager.py:234
+msgid "Use file dropbox for local file import"
+msgstr "Use file dropbox for local file import"
+
+#: ../pyhoca/wxgui/profilemanager.py:235
+msgid "Extensions"
+msgstr "Extensions"
+
+#: ../pyhoca/wxgui/profilemanager.py:237
+msgid "Action"
+msgstr "Action"
+
+#: ../pyhoca/wxgui/profilemanager.py:242
+msgid "Defaults"
+msgstr "Defaults"
+
+#: ../pyhoca/wxgui/profilemanager.py:244
+msgid "Save"
+msgstr "Save"
+
+#: ../pyhoca/wxgui/profilemanager.py:245
+msgid "Reset"
+msgstr "Reset"
+
+#: ../pyhoca/wxgui/profilemanager.py:282
+msgid "PyHoca-GUI Profile Manager - new profile"
+msgstr "PyHoca-GUI Profile Manager - new profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:284
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s (connected)"
+msgstr "PyHoca-GUI Profile Manager - %s (connected)"
+
+#: ../pyhoca/wxgui/profilemanager.py:286
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s"
+msgstr "PyHoca-GUI Profile Manager - %s"
+
+#: ../pyhoca/wxgui/profilemanager.py:603
+msgid "Session Profile"
+msgstr "Session Profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:604
+msgid "Connection"
+msgstr "Connection"
+
+#: ../pyhoca/wxgui/profilemanager.py:605
+msgid "Settings"
+msgstr "Settings"
+
+#: ../pyhoca/wxgui/profilemanager.py:606
+msgid "Sharing"
+msgstr "Sharing"
+
+#: ../pyhoca/wxgui/profilemanager.py:961
+msgid "Icon Files (*.png)|*.png|All files (*.*)|*"
+msgstr "Icon Files (*.png)|*.png|All files (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:964
+msgid "Choose an icon for this session profile"
+msgstr "Choose an icon for this session profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:1072
+msgid "All files (*.*)|*"
+msgstr "All files (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:1074
+#: ../pyhoca/wxgui/profilemanager.py:1089
+msgid "Choose a public SSH key"
+msgstr "Choose a public SSH key"
+
+#: ../pyhoca/wxgui/profilemanager.py:1212
+msgid "Choose a folder to share within a session"
+msgstr "Choose a folder to share within a session"
+
+#: ../pyhoca/wxgui/profilemanager.py:1277 ../pyhoca/wxgui/menus_taskbar.py:86
+msgid "Profile Manager"
+msgstr "Profile Manager"
+
+#: ../pyhoca/wxgui/profilemanager.py:1277
+msgid "Profile name is missing, profile unusable!!!"
+msgstr "Profile name is missing, profile unusable!!!"
+
+#: ../pyhoca/wxgui/profilemanager.py:1297
+#, python-format
+msgid "%s - profile added"
+msgstr "%s - profile added"
+
+#: ../pyhoca/wxgui/profilemanager.py:1298
+msgid "A new session profile has been added."
+msgstr "A new session profile has been added."
+
+#: ../pyhoca/wxgui/profilemanager.py:1302
+#, python-format
+msgid "%s - modified"
+msgstr "%s - modified"
+
+#: ../pyhoca/wxgui/profilemanager.py:1303
+msgid "Changes to profile have been saved."
+msgstr "Changes to profile have been saved."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:55
+msgid "Edit Profile"
+msgstr "Edit Profile"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:57
+msgid "Delete Profile"
+msgstr "Delete Profile"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:79 ../pyhoca/wxgui/about.py:55
+#: ../pyhoca/wxgui/about.py:57
+#, python-format
+msgid "About %s ..."
+msgstr "About %s ..."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:97
+msgid "Client Options"
+msgstr "Client Options"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:105 ../pyhoca/wxgui/menus_taskbar.py:328
+msgid "E&xit"
+msgstr "E&xit"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:142
+msgid "Resume Session"
+msgstr "Resume Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:145
+msgid "Transfer Session"
+msgstr "Transfer Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:146
+msgid "Suspend Session"
+msgstr "Suspend Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:148
+msgid "Terminate Session"
+msgstr "Terminate Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:186
+msgid "Start &new Session"
+msgstr "Start &new Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:199
+msgid "Running"
+msgstr "Running"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:201
+msgid "Suspended"
+msgstr "Suspended"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:211
+msgid "&Clean all sessions"
+msgstr "&Clean all sessions"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:213
+msgid "Customize &profile"
+msgstr "Customize &profile"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:215
+msgid "Share local &folder"
+msgstr "Share local &folder"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:220
+msgid "&Disconnect from Server"
+msgstr "&Disconnect from Server"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:248
+msgid "Add Profile"
+msgstr "Add Profile"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:274
+msgid "No session profiles defined"
+msgstr "No session profiles defined"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Start/Resume Session"
+msgstr "Start/Resume Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Connect Server"
+msgstr "Connect Server"
+
+#: ../pyhoca/wxgui/frontend.py:313
+msgid "Public SSH key authentication has been successful."
+msgstr "Public SSH key authentication has been successful."
+
+#: ../pyhoca/wxgui/frontend.py:335
+msgid "Authentication protocol communication incomplete! Try again..."
+msgstr "Authentication protocol communication incomplete! Try again..."
+
+#: ../pyhoca/wxgui/frontend.py:411
+msgid "Cleaning X2go sessions..."
+msgstr "Cleaning X2go sessions..."
+
+#: ../pyhoca/wxgui/frontend.py:431
+#, python-format
+msgid "%s - disconnect"
+msgstr "%s - disconnect"
+
+#: ../pyhoca/wxgui/frontend.py:431
+msgid "X2go Profile is now disconnected."
+msgstr "X2go Profile is now disconnected."
+
+#: ../pyhoca/wxgui/frontend.py:439
+msgid "New Session Profile"
+msgstr "New Session Profile"
+
+#: ../pyhoca/wxgui/frontend.py:468
+#, python-format
+msgid "%s - profile deleted"
+msgstr "%s - profile deleted"
+
+#: ../pyhoca/wxgui/frontend.py:468
+msgid "The session profile has been deleted."
+msgstr "The session profile has been deleted."
+
+#: ../pyhoca/wxgui/frontend.py:483
+#, python-format
+msgid "%s - share local folder with sessions of this profile"
+msgstr "%s - share local folder with sessions of this profile"
+
+#: ../pyhoca/wxgui/frontend.py:526
+#, python-format
+msgid "%s - channel error"
+msgstr "%s - channel error"
+
+#: ../pyhoca/wxgui/frontend.py:526
+#, python-format
+msgid ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+msgstr ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+
+#: ../pyhoca/wxgui/frontend.py:530
+#, python-format
+msgid "%s - print job"
+msgstr "%s - print job"
+
+#: ../pyhoca/wxgui/frontend.py:530
+#, python-format
+msgid ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+msgstr ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:551
+#, python-format
+msgid "%s - print error"
+msgstr "%s - print error"
+
+#: ../pyhoca/wxgui/frontend.py:551
+#, python-format
+msgid ""
+"%s\n"
+"...caused by session\n"
+"%s"
+msgstr ""
+"%s\n"
+"...caused by session\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:553 ../pyhoca/wxgui/frontend.py:555
+#, python-format
+msgid "%s - start"
+msgstr "%s - start"
+
+#: ../pyhoca/wxgui/frontend.py:553
+#, python-format
+msgid ""
+"New X2go session starting up...\n"
+"%s"
+msgstr ""
+"New X2go session starting up...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:555
+#, python-format
+msgid ""
+"Another client started X2go session\n"
+"%s"
+msgstr ""
+"Another client started X2go session\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:557 ../pyhoca/wxgui/frontend.py:559
+#, python-format
+msgid "%s - resume"
+msgstr "%s - resume"
+
+#: ../pyhoca/wxgui/frontend.py:557
+#, python-format
+msgid ""
+"Resuming X2go session...\n"
+"%s"
+msgstr ""
+"Resuming X2go session...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:559
+#, python-format
+msgid ""
+"Another client resumed X2go session\n"
+"%s"
+msgstr ""
+"Another client resumed X2go session\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:561
+#, python-format
+msgid "%s - running"
+msgstr "%s - running"
+
+#: ../pyhoca/wxgui/frontend.py:561
+#, python-format
+msgid ""
+"Found already running session\n"
+"%s"
+msgstr ""
+"Found already running session\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:563
+#, python-format
+msgid "%s - suspend"
+msgstr "%s - suspend"
+
+#: ../pyhoca/wxgui/frontend.py:563
+#, python-format
+msgid ""
+"X2go Session has been suspended\n"
+"%s"
+msgstr ""
+"X2go Session has been suspended\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:571
+#, python-format
+msgid "%s - terminate"
+msgstr "%s - terminate"
+
+#: ../pyhoca/wxgui/frontend.py:571
+#, python-format
+msgid ""
+"X2go Session has terminated\n"
+"%s"
+msgstr ""
+"X2go Session has terminated\n"
+"%s"
diff --git a/po/pyhoca-gui.pot b/po/pyhoca-gui.pot
new file mode 100644
index 0000000..213f5c9
--- /dev/null
+++ b/po/pyhoca-gui.pot
@@ -0,0 +1,732 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL at ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-01-10 18:36+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
+"Language-Team: LANGUAGE <LL at li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../pyhoca/wxgui/logon.py:81
+#, python-format
+msgid "%s (via %s)"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:83 ../pyhoca/wxgui/logon.py:97
+msgid "Username"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:85 ../pyhoca/wxgui/logon.py:99
+msgid "Password"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:88
+msgid "Authenticate"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:93
+msgid "Session login"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:94
+msgid "SSH proxy server login"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:102
+msgid " Start SSH tunnel "
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:112 ../pyhoca/wxgui/profilemanager.py:247
+msgid "Cancel"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:235 ../pyhoca/wxgui/logon.py:267
+#: ../pyhoca/wxgui/frontend.py:309
+#, python-format
+msgid "%s - connect failure"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:236 ../pyhoca/wxgui/frontend.py:309
+msgid "User is not allowed to start X2go sessions!"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:241 ../pyhoca/wxgui/frontend.py:313
+#, python-format
+msgid "%s - connect"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:242
+msgid "Authentication has been successful."
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:263
+msgid "SSH tunnel started"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:268
+msgid "Authentication failed!"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:273
+#, python-format
+msgid "%s - ssh proxy"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:274
+msgid "Authentication to the SSH proxy server failed!"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:280 ../pyhoca/wxgui/logon.py:286
+#: ../pyhoca/wxgui/logon.py:291 ../pyhoca/wxgui/frontend.py:326
+#: ../pyhoca/wxgui/frontend.py:329 ../pyhoca/wxgui/frontend.py:332
+#: ../pyhoca/wxgui/frontend.py:335
+#, python-format
+msgid "%s - connect error"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:292
+msgid "An unknown error occured during authentication!"
+msgstr ""
+
+#: ../pyhoca/wxgui/taskbar.py:94
+#, python-format
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+msgstr ""
+
+#: ../pyhoca/wxgui/taskbar.py:97
+#, python-format
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+msgstr ""
+
+#: ../pyhoca/wxgui/taskbar.py:102
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+msgstr ""
+
+#: ../pyhoca/wxgui/taskbar.py:105
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:56
+msgid "GNOME Desktop (GNOME)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:57
+msgid "K Desktop Environment (KDE)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:58
+msgid "Lightweight X Desktop (LXDE)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:59
+msgid "XDMCP Query"
+msgstr ""
+
+#. 'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+#: ../pyhoca/wxgui/profilemanager.py:61
+msgid "Windows Terminal Server (RDP-proxy)"
+msgstr ""
+
+#. 'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+#: ../pyhoca/wxgui/profilemanager.py:63
+msgid "Single Application"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:64 ../pyhoca/wxgui/profilemanager.py:146
+msgid "Custom command"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:67
+msgid "Internet Browser"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:68
+msgid "Email Client"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:69
+msgid "Openoffice.org"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:70
+msgid "Terminal"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:80
+msgid "Open file with system's default application"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:81
+msgid "Open application chooser dialog"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:82
+msgid "Save incoming file as ..."
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:117
+msgid "Server"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:118
+msgid "Connection Link Speed"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:119
+msgid "Compression"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:120
+msgid "Display"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:121
+msgid "Keyboard"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:122
+msgid "Sound"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:123
+msgid "Printing"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:124
+msgid "Folder Exports"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:125
+msgid "File Import"
+msgstr ""
+
+#. ##
+#. ## widgets for the SESSION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:130
+msgid "Profile name"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:140
+msgid "Profile icon"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:142
+msgid "Session type"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:144
+msgid "Application"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:148
+msgid "RDP settings"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:149
+msgid "RDP server"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:151
+msgid "RDP options"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:153
+msgid "XDMCP server"
+msgstr ""
+
+#. ##
+#. ## widgets for the CONNECTION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:159 ../pyhoca/wxgui/profilemanager.py:171
+msgid "User"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:161
+msgid "Host"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:163
+msgid "Port"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:165
+msgid "RSA/DSA private key"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:168
+msgid "Server behind SSH proxy"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:169
+msgid "Host[:Port]"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:173
+msgid "Key file"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:176
+msgid "SSH Proxy Tunnel"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:184
+msgid "Modem"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:185
+msgid "ISDN"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:186
+msgid "ADSL"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:187
+msgid "WAN"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:188
+msgid "LAN"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:190
+msgid "Method"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:192
+msgid "Image quality"
+msgstr ""
+
+#. ##
+#. ## wigdets for the SETTINGS tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:198
+msgid "Fullscreen"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:199
+msgid "Custom Size"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:204
+msgid "Set display DPI"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:206
+msgid "Keep current keyboard settings"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:207
+msgid "Keyboard layout"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:209
+msgid "Keyboard model"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:211
+msgid "Enable sound support"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:212
+msgid "Pulse Audio"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:213
+msgid "Arts"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:214
+msgid "esd"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:215
+msgid "Use default sound port"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:216
+msgid "Custom sound port"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:218
+msgid "Client Side printing"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:220
+msgid "Use local folder sharing"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:221
+msgid "Path"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:224 ../pyhoca/wxgui/profilemanager.py:241
+msgid "Add"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:226
+msgid "Delete"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:228
+msgid "Convert between client and server encodings"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:229
+msgid "Client encoding"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:231
+msgid "Server encoding"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:234
+msgid "Use file dropbox for local file import"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:235
+msgid "Extensions"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:237
+msgid "Action"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:242
+msgid "Defaults"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:244
+msgid "Save"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:245
+msgid "Reset"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:282
+msgid "PyHoca-GUI Profile Manager - new profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:284
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s (connected)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:286
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:603
+msgid "Session Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:604
+msgid "Connection"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:605
+msgid "Settings"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:606
+msgid "Sharing"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:961
+msgid "Icon Files (*.png)|*.png|All files (*.*)|*"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:964
+msgid "Choose an icon for this session profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1072
+msgid "All files (*.*)|*"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1074
+#: ../pyhoca/wxgui/profilemanager.py:1089
+msgid "Choose a public SSH key"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1212
+msgid "Choose a folder to share within a session"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1277 ../pyhoca/wxgui/menus_taskbar.py:86
+msgid "Profile Manager"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1277
+msgid "Profile name is missing, profile unusable!!!"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1297
+#, python-format
+msgid "%s - profile added"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1298
+msgid "A new session profile has been added."
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1302
+#, python-format
+msgid "%s - modified"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1303
+msgid "Changes to profile have been saved."
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:55
+msgid "Edit Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:57
+msgid "Delete Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:79 ../pyhoca/wxgui/about.py:55
+#: ../pyhoca/wxgui/about.py:57
+#, python-format
+msgid "About %s ..."
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:97
+msgid "Client Options"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:105 ../pyhoca/wxgui/menus_taskbar.py:328
+msgid "E&xit"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:142
+msgid "Resume Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:145
+msgid "Transfer Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:146
+msgid "Suspend Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:148
+msgid "Terminate Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:186
+msgid "Start &new Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:199
+msgid "Running"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:201
+msgid "Suspended"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:211
+msgid "&Clean all sessions"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:213
+msgid "Customize &profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:215
+msgid "Share local &folder"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:220
+msgid "&Disconnect from Server"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:248
+msgid "Add Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:274
+msgid "No session profiles defined"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Start/Resume Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Connect Server"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:313
+msgid "Public SSH key authentication has been successful."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:335
+msgid "Authentication protocol communication incomplete! Try again..."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:411
+msgid "Cleaning X2go sessions..."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:431
+#, python-format
+msgid "%s - disconnect"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:431
+msgid "X2go Profile is now disconnected."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:439
+msgid "New Session Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:468
+#, python-format
+msgid "%s - profile deleted"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:468
+msgid "The session profile has been deleted."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:483
+#, python-format
+msgid "%s - share local folder with sessions of this profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:526
+#, python-format
+msgid "%s - channel error"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:526
+#, python-format
+msgid ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:530
+#, python-format
+msgid "%s - print job"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:530
+#, python-format
+msgid ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:551
+#, python-format
+msgid "%s - print error"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:551
+#, python-format
+msgid ""
+"%s\n"
+"...caused by session\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:553 ../pyhoca/wxgui/frontend.py:555
+#, python-format
+msgid "%s - start"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:553
+#, python-format
+msgid ""
+"New X2go session starting up...\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:555
+#, python-format
+msgid ""
+"Another client started X2go session\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:557 ../pyhoca/wxgui/frontend.py:559
+#, python-format
+msgid "%s - resume"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:557
+#, python-format
+msgid ""
+"Resuming X2go session...\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:559
+#, python-format
+msgid ""
+"Another client resumed X2go session\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:561
+#, python-format
+msgid "%s - running"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:561
+#, python-format
+msgid ""
+"Found already running session\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:563
+#, python-format
+msgid "%s - suspend"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:563
+#, python-format
+msgid ""
+"X2go Session has been suspended\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:571
+#, python-format
+msgid "%s - terminate"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:571
+#, python-format
+msgid ""
+"X2go Session has terminated\n"
+"%s"
+msgstr ""
diff --git a/pyhoca-gui b/pyhoca-gui
index 1b76567..32eebf3 100755
--- a/pyhoca-gui
+++ b/pyhoca-gui
@@ -40,6 +40,8 @@ import argparse
import os
import sys
import exceptions
+import locale
+import gettext
PROG_NAME = os.path.basename(sys.argv[0])
PROG_PID = os.getpid()
@@ -56,6 +58,9 @@ if app.startswith('./') or os.path.dirname(PROG_NAME).endswith('trunk'):
os.environ['PYHOCAGUI_DEVELOPMENT'] = '1'
print '### PyHoca-GUI running in development mode ###'
+from pyhoca.wxgui.basepath import locale_basepath
+gettext.install('pyhoca-gui', localedir=locale_basepath, unicode=True)
+
# Python X2go modules
from x2go import CURRENT_LOCAL_USER as _CURRENT_LOCAL_USER
if _X2GOCLIENT_OS == 'Windows':
@@ -77,8 +82,8 @@ from pyhoca.wxgui import __VERSION__ as _version
from pyhoca.wxgui import PyHocaGUI
if _X2GOCLIENT_OS == 'Windows':
- from pyhoca.wxgui import basepath
- os.environ.update({'NXPROXY_BINARY': basepath.nxproxy_binary, })
+ from pyhoca.wxgui.basepath import nxproxy_binary
+ os.environ.update({'NXPROXY_BINARY': nxproxy_binary, })
__author__ = "Mike Gabriel, Dick Kniep"
__version__ = _version
@@ -95,7 +100,6 @@ VERSION: %s
""" % (PROG_NAME, PROG_PID, VERSION)
-
def check_running():
if _X2GOCLIENT_OS in ('Linux', 'Mac'):
p = subprocess.Popen(['ps', '-A'], stdout=subprocess.PIPE)
diff --git a/pyhoca/wxgui/about.py b/pyhoca/wxgui/about.py
index 2e23ff3..7014774 100644
--- a/pyhoca/wxgui/about.py
+++ b/pyhoca/wxgui/about.py
@@ -52,14 +52,14 @@ class PyHocaGUI_AboutFrame(wx.Frame):
self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
if x2go.X2GOCLIENT_OS == 'Windows':
- wx.Frame.__init__(self, None, -1, 'About PyHoca-GUI...', size=(403,319))
+ wx.Frame.__init__(self, None, -1, _('About %s ...') % 'PyHoca-GUI', size=(403,319))
else:
- wx.Frame.__init__(self, None, -1, 'About PyHoca-GUI...', size=(400,298))
+ wx.Frame.__init__(self, None, -1, _('About %s ...') % 'PyHoca-GUI', size=(400,298))
self.Bind(wx.EVT_CLOSE, self.OnHide)
_logo_bitmap = wx.StaticBitmap(self, wx.ID_ANY, wx.Bitmap(os.path.join(basepath.images_basepath, 'pyhoca-about-logo.png')), (0, 0))
self.bitmap = _logo_bitmap
-
+
if x2go.X2GOCLIENT_OS == 'Windows':
_icon = wx.Bitmap(os.path.join(basepath.icons_basepath, os.path.normpath('PyHoca/16x16/pyhoca-winicon.png')))
elif x2go.X2GOCLIENT_OS == 'Mac':
diff --git a/pyhoca/wxgui/basepath.py b/pyhoca/wxgui/basepath.py
index 78c2338..d46b887 100644
--- a/pyhoca/wxgui/basepath.py
+++ b/pyhoca/wxgui/basepath.py
@@ -25,6 +25,7 @@ if os.environ.has_key('PYHOCAGUI_DEVELOPMENT') and os.environ['PYHOCAGUI_DEVELOP
_base_location = os.path.abspath(os.path.curdir)
_icons_location = os.path.join(_base_location, 'icons')
_images_location = os.path.join(_base_location, 'img')
+ _locale_location = os.path.join(_base_location, 'locale')
if _X2GOCLIENT_OS == 'Windows':
_nxproxy_location = os.path.join(_base_location, 'contrib', 'nxproxy-mswin', 'nxproxy.exe')
else:
@@ -32,12 +33,15 @@ else:
_base_location = os.path.abspath(os.path.curdir)
_icons_location = os.path.join(_base_location, 'icons')
_images_location = os.path.join(_base_location, 'img')
+ _locale_location = os.path.join(_base_location, 'locale')
_nxproxy_location = os.path.join(_base_location, 'nxproxy', 'nxproxy.exe')
else:
_icons_location = '/usr/share/icons'
_images_location = '/usr/share/pyhoca/img'
+ _locale_location = '/usr/share/pyhoca/locale'
icons_basepath = _icons_location
images_basepath = _images_location
if _X2GOCLIENT_OS == 'Windows':
nxproxy_binary = _nxproxy_location
+locale_basepath = _locale_location
diff --git a/pyhoca/wxgui/frontend.py b/pyhoca/wxgui/frontend.py
index 8b24520..31e00fb 100644
--- a/pyhoca/wxgui/frontend.py
+++ b/pyhoca/wxgui/frontend.py
@@ -23,14 +23,14 @@ modules ={}
try:
import wxversion
wxversion.select('2.9')
- print 'USING wxPython 2.9'
+ #print 'USING wxPython 2.9'
except: pass
try:
import wxversion
wxversion.select('2.8')
- print 'USING wxPython 2.8'
+ #print 'USING wxPython 2.8'
except: pass
@@ -306,11 +306,11 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
try:
self._X2goClient__connect_session(session_uuid, add_to_known_hosts=True)
if not self._X2goClient__server_valid_x2gouser(session_uuid):
- self.notifier.send('%s - connect failure' % profile_name, 'User is not allowed to start X2go sessions!', icon='session_warning', timeout=10000)
+ self.notifier.send(_(u'%s - connect failure') % profile_name, _(u'User is not allowed to start X2go sessions!'), icon='session_warning', timeout=10000)
self._X2goClient__disconnect_profile(profile_name)
self._temp_disabled_profile_names.remove(profile_name)
else:
- self.notifier.send('%s - connect' % profile_name, 'Public SSH key authentication has been successful.', icon='auth_success', timeout=4000)
+ self.notifier.send(_(u'%s - connect') % profile_name, _(u'Public SSH key authentication has been successful.'), icon='auth_success', timeout=4000)
_dummy = self._X2goClient__list_sessions(session_uuid, refresh_cache=True)
self._post_authenticate(evt, session_uuid)
self._temp_disabled_profile_names.remove(profile_name)
@@ -323,16 +323,16 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
_logon_window = logon.PyHocaGUI_DialogBoxPassword(self, profile_name, caller=self, sshproxy_auth=True )
self._sub_windows.append(_logon_window)
except x2go.SSHException, e:
- self.notifier.send('%s - connect error' % profile_name, '%s!' % str(e), icon='auth_error', timeout=4000)
+ self.notifier.send(_(u'%s - connect error') % profile_name, '%s!' % str(e), icon='auth_error', timeout=4000)
self._temp_disabled_profile_names.remove(profile_name)
except gevent.dns.DNSError, e:
- self.notifier.send('%s - connect error' % profile_name, '%s!' % e.strerror, icon='auth_error', timeout=4000)
+ self.notifier.send(_(u'%s - connect error') % profile_name, '%s!' % e.strerror, icon='auth_error', timeout=4000)
self._temp_disabled_profile_names.remove(profile_name)
except gevent.socket.error, e:
- self.notifier.send('%s - connect error' % profile_name, '%s!' % e.strerror, icon='auth_error', timeout=4000)
+ self.notifier.send(_(u'%s - connect error') % profile_name, '%s!' % e.strerror, icon='auth_error', timeout=4000)
self._temp_disabled_profile_names.remove(profile_name)
except EOFError, e:
- self.notifier.send('%s - connect error' % profile_name, 'Communication for authentication incomplete! Try again...', icon='auth_error', timeout=4000)
+ self.notifier.send(_(u'%s - connect error') % profile_name, _(u'Authentication protocol communication incomplete! Try again...'), icon='auth_error', timeout=4000)
self._temp_disabled_profile_names.remove(profile_name)
#except:
# self.notifier.send('%s - connect error' % profile_name, 'An unknown error occurred during authentication!', icon='auth_error', timeout=4000)
@@ -408,7 +408,7 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
session_names = self._X2goClient__server_running_sessions(session_uuid) + self._X2goClient__server_suspended_sessions(session_uuid)
if self._X2goClient__server_is_alive(session_uuid):
if session_names:
- _notify_text = 'Cleaning X2go sessions...'
+ _notify_text = _(u'Cleaning X2go sessions...')
self._hide_notifications_map[self.current_profile_name] = []
for session_name in session_names:
_notify_text += '\n%s' % session_name
@@ -428,7 +428,7 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
self._X2goClient__disconnect_profile(self.current_profile_name)
gevent.sleep(2)
if not self._X2goClient__is_session_connected(session_uuid):
- self.notifier.send('%s - disconnect' % self.current_profile_name, 'X2go Profile is now disconnected.', icon='auth_disconnect', timeout=4000)
+ self.notifier.send(_(u'%s - disconnect') % self.current_profile_name, _(u'X2go Profile is now disconnected.'), icon='auth_disconnect', timeout=4000)
def OnProfileAdd(self, evt):
"""\
@@ -436,7 +436,7 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
"""
self._pyhoca_logger('adding new X2go session profile', loglevel=x2go.log.loglevel_INFO, )
- profilemanager.PyHocaGUI_ProfileManager(self, 'ADD', profile_name='New Session Profile')
+ profilemanager.PyHocaGUI_ProfileManager(self, 'ADD', profile_name=_(u'New Session Profile'))
def OnProfileEdit(self, evt):
"""\
@@ -465,7 +465,7 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
self._pyhoca_logger('deleting session profile %s' % self.current_profile_name, loglevel=x2go.log.loglevel_INFO, )
try:
self.session_profiles.delete_profile(self.current_profile_name)
- self.notifier.send(title='%s - profile deleted' % self.current_profile_name, text='The session profile has been deleted.', icon='profile_delete')
+ self.notifier.send(title=_(u'%s - profile deleted') % self.current_profile_name, text=_(u'The session profile has been deleted.'), icon='profile_delete')
except:
pass
@@ -480,7 +480,7 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
if not os.path.exists(shared_folder):
shared_folder = os.getcwd()
dlg = wx.DirDialog(
- self.about, message="%s - share local folder with sessions of this profile" % self.current_profile_name, style=1, defaultPath=shared_folder)
+ self.about, message=_(u"%s - share local folder with sessions of this profile") % self.current_profile_name, style=1, defaultPath=shared_folder)
# Show the dialog and retrieve the user response. If it is the OK response,
# process the data.
if dlg.ShowModal() == wx.ID_OK:
@@ -523,11 +523,11 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
# this hook gets called from Python X2go classes if profile_name's control session has died...
def HOOK_on_control_session_death(self, profile_name):
- self.notifier.send('%s - channel error' % profile_name, 'Lost connection to server %s unexpectedly! Try to re-authenticate to the server...' % profile_name, icon='session_warning', timeout=10000)
+ self.notifier.send(_(u'%s - channel error') % profile_name, _(u'Lost connection to server %s unexpectedly! Try to re-authenticate to the server...') % profile_name, icon='session_warning', timeout=10000)
# this hook gets called from Python X2go classes if a print job is coming in and the print action is ,,DIALOG''...
def HOOK_open_print_dialog(self, filename, profile_name='UNKNOWN', session_name='UNKNOWN'):
- self.notifier.send('%s - print job' % profile_name, 'Opening print job dialog not implemented yet!!!\n%s' % session_name, icon='session_printing', timeout=5000)
+ self.notifier.send(_(u'%s - print job') % profile_name, _(u'Opening print job dialog not implemented yet!!!\n%s') % session_name, icon='session_printing', timeout=5000)
#_p = wx.Dialog(None, -1, '%s (%s)' % (session_name, profile_name), size=(450,380))
#print 1
@@ -548,19 +548,19 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
##_p.Show(True)
#print 9
def HOOK_printaction_error(self, filename, profile_name='UNKNOWN', session_name='UNKNOWN', err_msg='GENERIC_ERROR'):
- self.notifier.send('%s - print error' % profile_name, '%s\n...caused by session\n%s' % (err_msg, session_name), icon='session_error', timeout=5000)
+ self.notifier.send(_(u'%s - print error') % profile_name, _(u'%s\n...caused by session\n%s') % (err_msg, session_name), icon='session_error', timeout=5000)
def HOOK_on_session_has_started_by_me(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
- self.notifier.send('%s - start' % profile_name, 'New X2go session starting up...\n%s' % session_name, icon='session_start', timeout=5000)
+ self.notifier.send(_(u'%s - start') % profile_name, _(u'New X2go session starting up...\n%s') % session_name, icon='session_start', timeout=5000)
def HOOK_on_session_has_started_by_other(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
- self.notifier.send('%s - start' % profile_name, 'Another client started X2go session\n%s' % session_name, icon='session_start', timeout=5000)
+ self.notifier.send(_(u'%s - start') % profile_name, _(u'Another client started X2go session\n%s') % session_name, icon='session_start', timeout=5000)
def HOOK_on_session_has_resumed_by_me(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
- self.notifier.send('%s - resume' % profile_name, 'Resuming X2go session...\n%s' % session_name, icon='session_resume', timeout=5000)
+ self.notifier.send(_(u'%s - resume') % profile_name, _(u'Resuming X2go session...\n%s') % session_name, icon='session_resume', timeout=5000)
def HOOK_on_session_has_resumed_by_other(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
- self.notifier.send('%s - resume' % profile_name, 'Another client resumed X2go session\n%s' % session_name, icon='session_resume', timeout=5000)
+ self.notifier.send(_(u'%s - resume') % profile_name, _(u'Another client resumed X2go session\n%s') % session_name, icon='session_resume', timeout=5000)
def HOOK_on_found_session_running_after_connect(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
- gevent.spawn_later(5, self.notifier.send, '%s - running' % profile_name, 'Found already running session\n%s' % session_name, icon='session_resume', timeout=5000)
+ gevent.spawn_later(5, self.notifier.send, _(u'%s - running') % profile_name, _(u'Found already running session\n%s') % session_name, icon='session_resume', timeout=5000)
def HOOK_on_session_has_been_suspended(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
- self.notifier.send('%s - suspend' % profile_name, 'X2go Session has been suspended\n%s' % session_name, icon='session_suspend', timeout=5000)
+ self.notifier.send(_(u'%s - suspend') % profile_name, _(u'X2go Session has been suspended\n%s') % session_name, icon='session_suspend', timeout=5000)
def HOOK_on_session_has_terminated(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
# avoid notification if X2goClient.clean_sessions has been used to terminate sessions
if self._hide_notifications_map.has_key(profile_name) and session_name in self._hide_notifications_map[profile_name]:
@@ -568,4 +568,4 @@ class PyHocaGUI(wx.App, x2go.X2goClient):
if not self._hide_notifications_map[profile_name]:
del self._hide_notifications_map[profile_name]
else:
- self.notifier.send('%s - terminate' % profile_name, 'X2go Session has terminated\n%s' % session_name, icon='session_terminate', timeout=5000)
+ self.notifier.send(_(u'%s - terminate') % profile_name, _(u'X2go Session has terminated\n%s') % session_name, icon='session_terminate', timeout=5000)
diff --git a/pyhoca/wxgui/logon.py b/pyhoca/wxgui/logon.py
index d3e35dc..99ce228 100644
--- a/pyhoca/wxgui/logon.py
+++ b/pyhoca/wxgui/logon.py
@@ -78,28 +78,28 @@ class PyHocaGUI_DialogBoxPassword(wx.Dialog):
if self.sshproxy_auth:
self.sshproxy_started = False
- self.SetTitle('%s (via %s)' % (profile_name, self.current_profile_config['sshproxyhost']))
+ self.SetTitle(_(u'%s (via %s)') % (profile_name, self.current_profile_config['sshproxyhost']))
- self.userLbl = wx.StaticText(self, wx.ID_ANY, 'Username:', size=(80, -1))
+ self.userLbl = wx.StaticText(self, wx.ID_ANY, _(u'Username')+':', size=(90, -1))
self.userTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER, size=(80, -1))
- self.passwordLbl = wx.StaticText(self, wx.ID_ANY, 'Password:', size=(80, -1))
+ self.passwordLbl = wx.StaticText(self, wx.ID_ANY, _(u'Password')+':', size=(90, -1))
self.passwordTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER|wx.TE_PASSWORD, size=(80, -1))
self.passwordTxt.SetFocus()
- self.loginBtn = wx.Button(self, wx.ID_OK, 'Authenticate')
+ self.loginBtn = wx.Button(self, wx.ID_OK, _(u'Authenticate'))
self.loginBtn.SetDefault()
# widgets
if self.sshproxy_auth:
- self.headerLbl = wx.StaticText(self, wx.ID_ANY, 'Session login:', size=(200, -1))
- self.sshProxyHeaderLbl = wx.StaticText(self, wx.ID_ANY, 'SSH proxy server login:', size=(200, -1))
+ self.headerLbl = wx.StaticText(self, wx.ID_ANY, _(u'Session login')+':', size=(200, -1))
+ self.sshProxyHeaderLbl = wx.StaticText(self, wx.ID_ANY, _(u'SSH proxy server login')+':', size=(200, -1))
self.headerLbl.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.FONTWEIGHT_BOLD, 0, ""))
self.sshProxyHeaderLbl.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.FONTWEIGHT_BOLD, 0, ""))
- self.sshProxyUserLbl = wx.StaticText(self, wx.ID_ANY, 'Username:', size=(80, -1))
+ self.sshProxyUserLbl = wx.StaticText(self, wx.ID_ANY, _(u'Username')+':', size=(90, -1))
self.sshProxyUserTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER, size=(80, -1))
- self.sshProxyPasswordLbl = wx.StaticText(self, wx.ID_ANY, 'Password:', size=(80, -1))
+ self.sshProxyPasswordLbl = wx.StaticText(self, wx.ID_ANY, _(u'Password')+':', size=(90, -1))
self.sshProxyPasswordTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER|wx.TE_PASSWORD, size=(80, -1))
self.sshProxyPasswordTxt.SetFocus()
- self.sshProxyLoginBtn = wx.Button(self, wx.ID_OK, ' Start SSH tunnel ')
+ self.sshProxyLoginBtn = wx.Button(self, wx.ID_OK, _(u' Start SSH tunnel '))
self.sshProxyLoginBtn.SetDefault()
self.headerLbl.Enable(False)
@@ -109,7 +109,7 @@ class PyHocaGUI_DialogBoxPassword(wx.Dialog):
self.passwordTxt.Enable(False)
self.loginBtn.Enable(False)
- self.cancelBtn = wx.Button(self, wx.ID_CANCEL, 'Cancel')
+ self.cancelBtn = wx.Button(self, wx.ID_CANCEL, _(u'Cancel'))
if self.sshproxy_auth:
self.Bind(wx.EVT_BUTTON, self.OnLogin, self.sshProxyLoginBtn)
@@ -232,14 +232,14 @@ class PyHocaGUI_DialogBoxPassword(wx.Dialog):
sshproxy_password=sshproxy_password)
if not self._PyHocaGUI._X2goClient__server_valid_x2gouser(session_uuid):
self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name,
- title='%s - connect failure' % self.current_profile_name,
- text='User is not allowed to start X2go sessions!',
+ title=_(u'%s - connect failure') % self.current_profile_name,
+ text=_(u'User is not allowed to start X2go sessions!'),
icon='auth_error')
self._PyHocaGUI._X2goClient__disconnect(session_uuid)
else:
self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name,
- title='%s - connect' % self.current_profile_name,
- text='Authentication has been successful.',
+ title=_(u'%s - connect') % self.current_profile_name,
+ text=_(u'Authentication has been successful.'),
icon='auth_success')
except x2go.AuthenticationException:
@@ -260,37 +260,37 @@ class PyHocaGUI_DialogBoxPassword(wx.Dialog):
self.sshProxyPasswordLbl.Enable(False)
self.sshProxyPasswordTxt.Enable(False)
self.sshProxyLoginBtn.Enable(False)
- self.sshProxyLoginBtn.SetLabel('SSH tunnel started')
+ self.sshProxyLoginBtn.SetLabel(_(u'SSH tunnel started'))
return
else:
self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name,
- title='%s - connect failure' % self.current_profile_name,
- text='Authentication failed!',
+ title=_(u'%s - connect failure') % self.current_profile_name,
+ text=_(u'Authentication failed!'),
icon='auth_failed')
except x2go.X2goSSHProxyAuthenticationException:
wx.EndBusyCursor()
self.sshProxyPasswordTxt.SetValue('')
- self._PyHocaGUI.notifier.send(title='%s - ssh proxy' % self.current_profile_name,
- text='Authentication to the SSH proxy server failed!',
+ self._PyHocaGUI.notifier.send(title=_(u'%s - ssh proxy') % self.current_profile_name,
+ text=_(u'Authentication to the SSH proxy server failed!'),
icon='auth_failed')
return
except gevent.dns.DNSError, e:
self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name,
- title='%s - connect error' % self.current_profile_name,
+ title=_(u'%s - connect error') % self.current_profile_name,
text='%s!' % e.strerror,
icon='auth_error')
except gevent.socket.error, e:
self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name,
- title='%s - connect error' % self.current_profile_name,
+ title=_(u'%s - connect error') % self.current_profile_name,
text='%s!' % e.strerror,
icon='auth_error')
- #except:
- # self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name,
- # title='%s - connect error' % self.current_profile_name,
- # text='An unknown error occured during authentication!',
- # icon='auth_error')
+ except:
+ self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name,
+ title=_(u'%s - connect error') % self.current_profile_name,
+ text=_(u'An unknown error occured during authentication!'),
+ icon='auth_error')
self._PyHocaGUI.notifier.send(self.current_profile_name, context='AUTH_%s' % self.current_profile_name, timeout=4000)
diff --git a/pyhoca/wxgui/menus_taskbar.py b/pyhoca/wxgui/menus_taskbar.py
index f20c1c2..e9d2a85 100644
--- a/pyhoca/wxgui/menus_taskbar.py
+++ b/pyhoca/wxgui/menus_taskbar.py
@@ -52,9 +52,9 @@ class PyHocaGUI_Menu_TaskbarManageProfile(wx.Menu):
self._PyHocaGUI._eventid_profilenames_map[ID_EDITPROFILE] = \
self._PyHocaGUI._eventid_profilenames_map[ID_DELETEPROFILE] = profile_name
- self.Append(text="Edit Profile", id=ID_EDITPROFILE)
+ self.Append(text=_(u"Edit Profile"), id=ID_EDITPROFILE)
self.AppendSeparator()
- self.Append(text="Delete Profile", id=ID_DELETEPROFILE)
+ self.Append(text=_(u"Delete Profile"), id=ID_DELETEPROFILE)
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnProfileEdit, id=ID_EDITPROFILE)
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnProfileDelete, id=ID_DELETEPROFILE)
@@ -76,14 +76,14 @@ class PyHocaGUI_Menu_TaskbarOptionsManager(wx.Menu):
wx.Menu.__init__(self)
ID_ABOUT = wx.NewId()
- self.Append(id=ID_ABOUT, text="About %s ..." % self._PyHocaGUI.appname)
+ self.Append(id=ID_ABOUT, text=_(u"About %s ...") % self._PyHocaGUI.appname)
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnAbout, id=ID_ABOUT)
self.AppendSeparator()
ID_PROFILEMANAGER = wx.NewId()
_maintain_profiles_item = self.AppendMenu(id=ID_PROFILEMANAGER,
- text="Profile Manager",
+ text=_(u"Profile Manager"),
submenu=PyHocaGUI_Menu_TaskbarProfileNames(self._PyHocaGUI,
caller=self,
disabled_profiles=self._PyHocaGUI.client_connected_profiles(return_profile_names=True),
@@ -94,7 +94,7 @@ class PyHocaGUI_Menu_TaskbarOptionsManager(wx.Menu):
self.AppendSeparator()
ID_OPTIONS = wx.NewId()
- _options_item = self.Append(id=ID_OPTIONS, text="Client Options")
+ _options_item = self.Append(id=ID_OPTIONS, text=_(u"Client Options"))
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnOptions, id=ID_OPTIONS)
if self._PyHocaGUI.options_disabled:
_options_item.Enable(False)
@@ -102,7 +102,7 @@ class PyHocaGUI_Menu_TaskbarOptionsManager(wx.Menu):
self.AppendSeparator()
ID_EXIT = wx.NewId()
- self.Append(id=ID_EXIT, text="E&xit")
+ self.Append(id=ID_EXIT, text=_("E&xit"))
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnTaskbarExit, id=ID_EXIT)
@@ -139,13 +139,13 @@ class PyHocaGUI_Menu_TaskbarSessionActions(wx.Menu):
self._PyHocaGUI._eventid_sessionnames_map[ID_TERMINATESESSION] = session_name
if status == 'S':
- self.Append(text="Resume Session", id=ID_RESUMESESSION)
+ self.Append(text=_("Resume Session"), id=ID_RESUMESESSION)
elif status == 'R':
if not session_name in self._PyHocaGUI.client_associated_sessions_of_profile_name(profile_name, return_session_names=True):
- self.Append(text="Transfer Session", id=ID_TRANSFERSESSION)
- self.Append(text="Suspend Session", id=ID_SUSPENDSESSION)
+ self.Append(text=_(u"Transfer Session"), id=ID_TRANSFERSESSION)
+ self.Append(text=_(u"Suspend Session"), id=ID_SUSPENDSESSION)
- self.Append(text="Terminate Session", id=ID_TERMINATESESSION)
+ self.Append(text=_(u"Terminate Session"), id=ID_TERMINATESESSION)
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionResume, id=ID_RESUMESESSION)
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionResume, id=ID_TRANSFERSESSION)
@@ -183,7 +183,7 @@ class PyHocaGUI_Menu_TaskbarSessionProfile(wx.Menu):
self._PyHocaGUI._eventid_profilenames_map[ID_SHARELOCALFOLDER] = \
self._PyHocaGUI._eventid_profilenames_map[ID_DISCONNECT] = profile_name
- self.Append(id=ID_SESSIONSTART, text="Start &new Session")
+ self.Append(id=ID_SESSIONSTART, text=_(u"Start &new Session"))
self.AppendSeparator()
_query_session_uuid = self._PyHocaGUI.client_connected_sessions_of_profile_name(profile_name, return_objects=False)[0]
@@ -196,9 +196,9 @@ class PyHocaGUI_Menu_TaskbarSessionProfile(wx.Menu):
_s_id = wx.NewId()
if _session_list[session_name].status == 'R':
- state = 'Running'
+ state = _(u'Running')
elif _session_list[session_name].status == 'S':
- state = 'Suspended'
+ state = _(u'Suspended')
self.AppendMenu(id=_s_id, text='%s: »%s«' % (state, session_name),
submenu=PyHocaGUI_Menu_TaskbarSessionActions(self._PyHocaGUI, caller=self,
profile_name=profile_name,
@@ -208,16 +208,16 @@ class PyHocaGUI_Menu_TaskbarSessionProfile(wx.Menu):
)
if _session_list.keys():
- self.Append(id=ID_CLEANSESSIONS, text="&Clean all sessions")
+ self.Append(id=ID_CLEANSESSIONS, text=_(u"&Clean all sessions"))
self.AppendSeparator()
- self.Append(id=ID_EDITPROFILEWHILECONNECTED, text="Customize &profile")
+ self.Append(id=ID_EDITPROFILEWHILECONNECTED, text=_(u"Customize &profile"))
if current_profile_config['useexports']:
- _share_folder = self.Append(id=ID_SHARELOCALFOLDER, text="Share local &folder")
+ _share_folder = self.Append(id=ID_SHARELOCALFOLDER, text=_(u"Share local &folder"))
if not self._PyHocaGUI._X2goClient__client_associated_sessions_of_profile_name(profile_name, return_objects=False):
_share_folder.Enable(False)
self.AppendSeparator()
- self.Append(id=ID_DISCONNECT, text="&Disconnect from Server")
+ self.Append(id=ID_DISCONNECT, text=_(u"&Disconnect from Server"))
self._PyHocaGUI.current_profile_name = profile_name
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionStart, id=ID_SESSIONSTART)
@@ -245,7 +245,7 @@ class PyHocaGUI_Menu_TaskbarProfileNames(wx.Menu):
if type(caller) == PyHocaGUI_Menu_TaskbarOptionsManager:
ID_ADDPROFILE = wx.NewId()
- self.Append(id=ID_ADDPROFILE, text="Add Profile")
+ self.Append(id=ID_ADDPROFILE, text=_(u"Add Profile"))
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnProfileAdd, id=ID_ADDPROFILE)
self.AppendSeparator()
@@ -271,7 +271,7 @@ class PyHocaGUI_Menu_TaskbarProfileNames(wx.Menu):
self._PyHocaGUI.Bind(wx.EVT_UPDATE_UI, self.OnUpdateUI, id=_this_id)
if not _profile_names:
- _dummy = self.Append(text='No session profiles defined', id=wx.NewId())
+ _dummy = self.Append(text=_('No session profiles defined'), id=wx.NewId())
_dummy.Enable(False)
def OnUpdateUI(self, evt):
@@ -302,7 +302,7 @@ class PyHocaGUI_Menu_TaskbarSessionManager(wx.Menu):
ID_AUTHENTICATE = wx.NewId()
ID_EXIT = wx.NewId()
- _auth_menu_text = self._PyHocaGUI.start_on_connect and 'Start/Resume Session' or 'Connect Server'
+ _auth_menu_text = self._PyHocaGUI.start_on_connect and _(u'Start/Resume Session') or _(u'Connect Server')
self.AppendMenu(id=ID_AUTHENTICATE,
text=_auth_menu_text,
submenu=PyHocaGUI_Menu_TaskbarProfileNames(self._PyHocaGUI,
@@ -325,7 +325,7 @@ class PyHocaGUI_Menu_TaskbarSessionManager(wx.Menu):
if _connected_sessions:
self.AppendSeparator()
- self.Append(id=ID_EXIT, text="E&xit")
+ self.Append(id=ID_EXIT, text=_(u"E&xit"))
self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnTaskbarExit, id=ID_EXIT)
diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py
index e9d9cf9..1c6afe8 100644
--- a/pyhoca/wxgui/profilemanager.py
+++ b/pyhoca/wxgui/profilemanager.py
@@ -53,21 +53,21 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
self.success = False
self.sessionChoices = {
- 'GNOME': 'GNOME Desktop (GNOME)',
- 'KDE': 'K Desktop Environment (KDE)',
- 'LXDE': 'Lightweight X Desktop (LXDE)',
- 'XDMCP': 'XDMCP Query',
- #'EMBEDDED_MENU': 'Embedded Application Menu',
- 'RDP': 'Windows Terminal Server (RDP-proxy)',
+ 'GNOME': _(u'GNOME Desktop (GNOME)'),
+ 'KDE': _(u'K Desktop Environment (KDE)'),
+ 'LXDE': _(u'Lightweight X Desktop (LXDE)'),
+ 'XDMCP': _(u'XDMCP Query'),
+ #'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+ 'RDP': _(u'Windows Terminal Server (RDP-proxy)'),
#'DirectRDP': 'Windows Terminal Server (RDP-direct)',
- 'APPLICATION': 'Single Application',
- 'CUSTOM': 'Custom command',
+ 'APPLICATION': _(u'Single Application'),
+ 'CUSTOM': _(u'Custom command'),
}
self.applicationChoices = {
- 'WWWBROWSER': 'Internet Browser',
- 'MAILCLIENT': 'Email Client',
- 'OFFICE': 'Openoffice.org',
- 'TERMINAL': 'Terminal',
+ 'WWWBROWSER': _(u'Internet Browser'),
+ 'MAILCLIENT': _(u'Email Client'),
+ 'OFFICE': _(u'Openoffice.org'),
+ 'TERMINAL': _(u'Terminal'),
}
self.linkChoices = {
0: 'MODEM',
@@ -77,9 +77,9 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
4: 'LAN',
}
self.dropboxactionChoices = {
- 'OPEN': 'Open file with system\'s default application',
- 'OPENWITH': 'Open application chooser dialog',
- 'SAVEAS': 'Save incoming file as ...',
+ 'OPEN': _(u'Open file with system\'s default application'),
+ 'OPENWITH': _(u'Open application chooser dialog'),
+ 'SAVEAS': _(u'Save incoming file as ...'),
}
_compressions = ["4k-jpeg", "32k-jpeg", "64k-jpeg", "256k-jpeg", "2m-jpeg", "16m-jpeg"]
self.compressionChoices = {}
@@ -114,20 +114,20 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
# boxes for all tabs
self.staticbox_Profile = wx.StaticBox(self.tab_Session, -1, '')
self.staticbox_SessionType = wx.StaticBox(self.tab_Session, -1, '')
- self.staticbox_Server = wx.StaticBox(self.tab_Connection, -1, "Server")
- self.staticbox_LinkSpeed = wx.StaticBox(self.tab_Connection, -1, "Connection Link Speed")
- self.staticbox_Compression = wx.StaticBox(self.tab_Connection, -1, "Compression")
- self.staticbox_Display = wx.StaticBox(self.tab_Settings, -1, "Display")
- self.staticbox_Keyboard = wx.StaticBox(self.tab_Settings, -1, "Keyboard")
- self.staticbox_Sound = wx.StaticBox(self.tab_Settings, -1, "Sound")
- self.staticbox_Printing = wx.StaticBox(self.tab_Settings, -1, "Printing")
- self.staticbox_FolderSharing = wx.StaticBox(self.tab_SharedFilesAndFolders, -1, "Folder Exports")
- self.staticbox_FileDropbox = wx.StaticBox(self.tab_SharedFilesAndFolders, -1, "File Import")
+ self.staticbox_Server = wx.StaticBox(self.tab_Connection, -1, _(u"Server"))
+ self.staticbox_LinkSpeed = wx.StaticBox(self.tab_Connection, -1, _(u"Connection Link Speed"))
+ self.staticbox_Compression = wx.StaticBox(self.tab_Connection, -1, _(u"Compression"))
+ self.staticbox_Display = wx.StaticBox(self.tab_Settings, -1, _(u"Display"))
+ self.staticbox_Keyboard = wx.StaticBox(self.tab_Settings, -1, _(u"Keyboard"))
+ self.staticbox_Sound = wx.StaticBox(self.tab_Settings, -1, _(u"Sound"))
+ self.staticbox_Printing = wx.StaticBox(self.tab_Settings, -1, _(u"Printing"))
+ self.staticbox_FolderSharing = wx.StaticBox(self.tab_SharedFilesAndFolders, -1, _(u"Folder Exports"))
+ self.staticbox_FileDropbox = wx.StaticBox(self.tab_SharedFilesAndFolders, -1, _(u"File Import"))
###
### widgets for the SESSION tab
###
- self.ProfileNameLabel = wx.StaticText(self.tab_Session, -1, "Profile name:")
+ self.ProfileNameLabel = wx.StaticText(self.tab_Session, -1, _(u"Profile name")+":")
self.ProfileName = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(200,20))
_share_location = os.path.split(_icons_location)[0]
if 'icon' in self.profile_config:
@@ -137,43 +137,43 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
if not os.path.exists(path_to_icon) or not 'icon' in self.profile_config:
path_to_icon = os.path.normpath('%s/icons/PyHoca/128x128/pyhoca-session.png' % _share_location)
self.IconPath = path_to_icon
- self.IconButtonLabel = wx.StaticText(self.tab_Session, -1, "Profile icon:")
+ self.IconButtonLabel = wx.StaticText(self.tab_Session, -1, _(u"Profile icon")+':')
self.IconButton = wx.BitmapButton(self.tab_Session, -1, wx.Bitmap(path_to_icon, wx.BITMAP_TYPE_ANY))
- self.SessionTypeLabel = wx.StaticText(self.tab_Session, -1, "Session type:")
+ self.SessionTypeLabel = wx.StaticText(self.tab_Session, -1, _(u"Session type")+':')
self.SessionType = wx.ComboBox(self.tab_Session, -1, choices=self.sessionChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY)
- self.ApplicationLabel = wx.StaticText(self.tab_Session, -1, "Application:")
+ self.ApplicationLabel = wx.StaticText(self.tab_Session, -1, _(u"Application")+':')
self.Application = wx.ComboBox(self.tab_Session, -1, choices=self.applicationChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY)
- self.CommandLabel = wx.StaticText(self.tab_Session, -1, "Custom command:")
+ self.CommandLabel = wx.StaticText(self.tab_Session, -1, _(u"Custom command")+':')
self.Command = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(200,20))
- self.RDPSettingsLabel = wx.StaticText(self.tab_Session, -1, "RDP settings:")
- self.RDPServerLabel = wx.StaticText(self.tab_Session, -1, "RDP server:")
+ self.RDPSettingsLabel = wx.StaticText(self.tab_Session, -1, _(u"RDP settings")+':')
+ self.RDPServerLabel = wx.StaticText(self.tab_Session, -1, _(u"RDP server")+':')
self.RDPServer = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(160,20))
- self.RDPOptionsLabel = wx.StaticText(self.tab_Session, -1, "RDP options:")
+ self.RDPOptionsLabel = wx.StaticText(self.tab_Session, -1, _(u"RDP options")+':')
self.RDPOptions = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(160,20))
- self.XDMCPServerLabel = wx.StaticText(self.tab_Session, -1, "XDMCP server:")
+ self.XDMCPServerLabel = wx.StaticText(self.tab_Session, -1, _(u"XDMCP server")+':')
self.XDMCPServer = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(160,20))
###
### widgets for the CONNECTION tab
###
- self.UserNameLabel = wx.StaticText(self.tab_Connection, -1, "User:")
+ self.UserNameLabel = wx.StaticText(self.tab_Connection, -1, _(u"User")+':')
self.UserName = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
- self.HostLabel = wx.StaticText(self.tab_Connection, -1, "Host:")
+ self.HostLabel = wx.StaticText(self.tab_Connection, -1, _(u"Host")+':')
self.Host = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
- self.SSHPortLabel = wx.StaticText(self.tab_Connection, -1, "Port:")
+ self.SSHPortLabel = wx.StaticText(self.tab_Connection, -1, _(u"Port")+':')
self.SSHPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000)
- self.SSHKeyFileLabel = wx.StaticText(self.tab_Connection, -1, "RSA/DSA private key:")
+ self.SSHKeyFileLabel = wx.StaticText(self.tab_Connection, -1, _(u"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, "Server behind SSH proxy")
- self.SSHProxyHostLabel = wx.StaticText(self.tab_Connection, -1, "Host:")
+ self.UseSSHProxy = wx.CheckBox(self.tab_Connection, -1, _(u"Server behind SSH proxy"))
+ self.SSHProxyHostLabel = wx.StaticText(self.tab_Connection, -1, _(u"Host[:Port]")+':')
self.SSHProxyHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(80,20))
- self.SSHProxyUserLabel = wx.StaticText(self.tab_Connection, -1, "User:")
+ self.SSHProxyUserLabel = wx.StaticText(self.tab_Connection, -1, _(u"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.SSHProxyKeyFileLabel = wx.StaticText(self.tab_Connection, -1, _(u"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.SSHProxyTunnelLabel = wx.StaticText(self.tab_Connection, -1, _(u"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, " -> ")
@@ -181,70 +181,70 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
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, " |\n Modem", style=wx.ALIGN_CENTRE)
- self.ISDNLabel = wx.StaticText(self.tab_Connection, -1, " |\n ISDN", style=wx.ALIGN_CENTRE)
- self.ADSLLabel = wx.StaticText(self.tab_Connection, -1, " |\n ADSL", style=wx.ALIGN_CENTRE)
- self.WANLabel = wx.StaticText(self.tab_Connection, -1, " |\n WAN", style=wx.ALIGN_CENTRE)
- self.LANLabel = wx.StaticText(self.tab_Connection, -1, " |\n LAN", style=wx.ALIGN_CENTRE)
+ self.ModemLabel = wx.StaticText(self.tab_Connection, -1, " |\n "+_(u"Modem"), style=wx.ALIGN_CENTRE)
+ self.ISDNLabel = wx.StaticText(self.tab_Connection, -1, " |\n "+_(u"ISDN"), style=wx.ALIGN_CENTRE)
+ self.ADSLLabel = wx.StaticText(self.tab_Connection, -1, " |\n "+_(u"ADSL"), style=wx.ALIGN_CENTRE)
+ self.WANLabel = wx.StaticText(self.tab_Connection, -1, " |\n "+_(u"WAN"), style=wx.ALIGN_CENTRE)
+ self.LANLabel = wx.StaticText(self.tab_Connection, -1, " |\n "+_(u"LAN"), style=wx.ALIGN_CENTRE)
- self.CompressionLabel = wx.StaticText(self.tab_Connection, -1, "Method:")
+ self.CompressionLabel = wx.StaticText(self.tab_Connection, -1, _(u"Method")+':')
self.Compression = wx.ComboBox(self.tab_Connection, -1, choices=self.compressionChoices.values(), style=wx.CB_DROPDOWN)
- self.ImageQualityLabel = wx.StaticText(self.tab_Connection, -1, "Image quality:")
+ self.ImageQualityLabel = wx.StaticText(self.tab_Connection, -1, _(u"Image quality")+':')
self.ImageQuality = wx.SpinCtrl(self.tab_Connection, -1, "9", min=0, max=9)
###
### wigdets for the SETTINGS tab
###
- self.DisplayTypeFullscreen = wx.RadioButton(self.tab_Settings, -1, "Fullscreen", style=wx.RB_GROUP)
- self.DisplayTypeCustom = wx.RadioButton(self.tab_Settings, -1, "Custom Size:")
+ self.DisplayTypeFullscreen = wx.RadioButton(self.tab_Settings, -1, _(u"Fullscreen")+':', style=wx.RB_GROUP)
+ self.DisplayTypeCustom = wx.RadioButton(self.tab_Settings, -1, _(u"Custom Size")+':')
self.ScreenWidthLabel = wx.StaticText(self.tab_Settings, -1, '')
self.ScreenWidth = wx.SpinCtrl(self.tab_Settings, -1, "800", min=400, max=3000)
self.ScreenHeightLabel = wx.StaticText(self.tab_Settings, -1, "x")
self.ScreenHeight = wx.SpinCtrl(self.tab_Settings, -1, "600", min=500, max=3000)
- self.SetDisplayDPI = wx.CheckBox(self.tab_Settings, -1, "Set display DPI:")
+ self.SetDisplayDPI = wx.CheckBox(self.tab_Settings, -1, _(u"Set display DPI")+':')
self.DisplayDPI = wx.SpinCtrl(self.tab_Settings, -1, "96", min=32, max=512)
- self.CurrentKeyBoard = wx.CheckBox(self.tab_Settings, -1, "Keep current keyboard settings")
- self.KeyboardLayoutLabel = wx.StaticText(self.tab_Settings, -1, "Keyboard layout:")
+ self.CurrentKeyBoard = wx.CheckBox(self.tab_Settings, -1, _(u"Keep current keyboard settings"))
+ self.KeyboardLayoutLabel = wx.StaticText(self.tab_Settings, -1, _(u"Keyboard layout")+':')
self.KeyboardLayout = wx.TextCtrl(self.tab_Settings, -1, "")
- self.KeyboardModelLabel = wx.StaticText(self.tab_Settings, -1, "Keyboard model:")
+ self.KeyboardModelLabel = wx.StaticText(self.tab_Settings, -1, _(u"Keyboard model")+':')
self.KeyboardModel = wx.TextCtrl(self.tab_Settings, -1, "")
- self.EnableSound = wx.CheckBox(self.tab_Settings, -1, "Enable sound support")
- self.PulseAudio = wx.RadioButton(self.tab_Settings, -1, "Pulse Audio", style=wx.RB_GROUP)
- self.Arts = wx.RadioButton(self.tab_Settings, -1, "Arts")
- self.esd = wx.RadioButton(self.tab_Settings, -1, "esd")
- self.DefaultSoundPort = wx.CheckBox(self.tab_Settings, -1, "Use default sound port")
- self.SoundPortLabel = wx.StaticText(self.tab_Settings, -1, "Custom sound port:")
+ self.EnableSound = wx.CheckBox(self.tab_Settings, -1, _(u"Enable sound support"))
+ self.PulseAudio = wx.RadioButton(self.tab_Settings, -1, _(u"Pulse Audio"), style=wx.RB_GROUP)
+ self.Arts = wx.RadioButton(self.tab_Settings, -1, _(u"Arts"))
+ self.esd = wx.RadioButton(self.tab_Settings, -1, _(u"esd"))
+ self.DefaultSoundPort = wx.CheckBox(self.tab_Settings, -1, _(u"Use default sound port"))
+ self.SoundPortLabel = wx.StaticText(self.tab_Settings, -1, _(u"Custom sound port")+':')
self.SoundPort = wx.SpinCtrl(self.tab_Settings, -1, "4713", min=23, max=64889)
- self.ClientSidePrinting = wx.CheckBox(self.tab_Settings, -1, "Client Side printing")
+ self.ClientSidePrinting = wx.CheckBox(self.tab_Settings, -1, _(u"Client Side printing"))
- self.UseLocalFolderSharing = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, "Use local folder sharing")
- self.SharedFolderPathLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, "Path:")
+ self.UseLocalFolderSharing = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, _(u"Use local folder sharing"))
+ self.SharedFolderPathLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Path")+':')
self.SharedFolderPath = wx.TextCtrl(self.tab_SharedFilesAndFolders, -1, "", style=wx.TE_PROCESS_ENTER)
self.SharedFolderPathBrowseButton = wx.BitmapButton(self.tab_SharedFilesAndFolders, -1, wx.Bitmap('%s/PyHoca/16x16/system-search.png' % _icons_location, wx.BITMAP_TYPE_ANY))
- self.AddSharedFolderPathButton = wx.Button(self.tab_SharedFilesAndFolders, -1, "Add")
+ self.AddSharedFolderPathButton = wx.Button(self.tab_SharedFilesAndFolders, -1, _(u"Add"))
self.SharedFoldersList = wx.ListCtrl(self.tab_SharedFilesAndFolders, -1, style=wx.LC_LIST|wx.SUNKEN_BORDER|wx.LC_SINGLE_SEL|wx.LC_VRULES)
- self.DeleteSharedFolderPathButton = wx.Button(self.tab_SharedFilesAndFolders, -1, "Delete")
+ self.DeleteSharedFolderPathButton = wx.Button(self.tab_SharedFilesAndFolders, -1, _(u"Delete"))
- self.UseFileDropbox = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, "Use file dropbox for local file import")
- self.FileDropboxExtensionsLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, "Extensions:")
- self.FileDropboxExtensions = wx.TextCtrl(self.tab_SharedFilesAndFolders, -1, "", style=wx.TE_PROCESS_ENTER)
- self.FileDropboxActionLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, "Action:")
- self.FileDropboxAction = wx.ComboBox(self.tab_SharedFilesAndFolders, -1, choices=self.dropboxactionChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY)
-
- self.UseEncodingConverter = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, "Convert between client and server encodings")
- self.ClientEncodingLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, "Client encoding:")
+ self.UseEncodingConverter = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, _(u"Convert between client and server encodings"))
+ self.ClientEncodingLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Client encoding")+':')
self.ClientEncoding = wx.ComboBox(self.tab_SharedFilesAndFolders, -1, choices=_known_encodings, style=wx.CB_DROPDOWN|wx.CB_READONLY)
- self.ServerEncodingLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, "Server encoding:")
+ self.ServerEncodingLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Server encoding")+':')
self.ServerEncoding = wx.ComboBox(self.tab_SharedFilesAndFolders, -1, choices=_known_encodings, style=wx.CB_DROPDOWN|wx.CB_READONLY)
+ self.UseFileDropbox = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, _(u"Use file dropbox for local file import"))
+ self.FileDropboxExtensionsLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Extensions")+':')
+ self.FileDropboxExtensions = wx.TextCtrl(self.tab_SharedFilesAndFolders, -1, "", style=wx.TE_PROCESS_ENTER)
+ self.FileDropboxActionLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Action")+':')
+ self.FileDropboxAction = wx.ComboBox(self.tab_SharedFilesAndFolders, -1, choices=self.dropboxactionChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY)
+
if self.action == 'ADD':
- self.OKButton = wx.Button(self, -1, "Add")
- self.DefaultButton = wx.Button(self, -1, 'Defaults')
+ self.OKButton = wx.Button(self, -1, _(u"Add"))
+ self.DefaultButton = wx.Button(self, -1, _(u'Defaults'))
else:
- self.OKButton = wx.Button(self, -1, "Save")
- self.DefaultButton = wx.Button(self, -1, 'Reset')
+ self.OKButton = wx.Button(self, -1, _(u"Save"))
+ self.DefaultButton = wx.Button(self, -1, _(u'Reset'))
self.OKButton.SetDefault()
- self.CancelButton = wx.Button(self, -1, "Cancel")
+ self.CancelButton = wx.Button(self, -1, _(u"Cancel"))
self.__set_properties()
self.__update_fields()
@@ -279,11 +279,11 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
def __set_properties(self):
if self.action == 'ADD':
- self.SetTitle("PyHoca-GUI Profile Manager - new profile")
+ self.SetTitle(_(u"PyHoca-GUI Profile Manager - new profile"))
elif self.action == 'EDIT_CONNECTED':
- self.SetTitle("PyHoca-GUI Profile Manager - %s (connected)" % self.profile_config['name'])
+ self.SetTitle(_(u"PyHoca-GUI Profile Manager - %s (connected)") % self.profile_config['name'])
else:
- self.SetTitle("PyHoca-GUI Profile Manager - %s" % self.profile_config['name'])
+ self.SetTitle(_(u"PyHoca-GUI Profile Manager - %s") % self.profile_config['name'])
self.SetFont(wx.Font(9, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
_textfield_height = self.SSHKeyFileBrowseButton.GetBestSize().GetHeight()-2
self.ProfileNameLabel.SetMinSize((120, 16))
@@ -304,20 +304,22 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
self.RDPServer.SetMinSize((160, _textfield_height))
self.RDPOptionsLabel.SetMinSize((120, 16))
self.RDPOptions.SetMinSize((160, _textfield_height))
- self.HostLabel.SetMinSize((120, 16))
+ self.HostLabel.SetMinSize((110, 16))
self.Host.SetMinSize((180, _textfield_height))
- self.UserNameLabel.SetMinSize((120, 16))
+ self.UserNameLabel.SetMinSize((110, 16))
self.UserName.SetMinSize((180, _textfield_height))
- self.SSHPortLabel.SetMinSize((120, 16))
- self.SSHPort.SetMinSize((80, _textfield_height))
- self.SSHKeyFileLabel.SetMinSize((120, 16))
+ self.SSHPortLabel.SetMinSize((110, 16))
+ self.SSHPort.SetMinSize((65, _textfield_height))
+ self.SSHKeyFileLabel.SetMinSize((-1, 16))
self.SSHKeyFile.SetMinSize((152, _textfield_height))
self.SSHKeyFileBrowseButton.SetSize(self.SSHKeyFileBrowseButton.GetBestSize())
- self.SSHProxyHost.SetMinSize((120, _textfield_height))
- self.SSHProxyUser.SetMinSize((92, _textfield_height))
- self.SSHProxyKeyFile.SetMinSize((124, _textfield_height))
+ self.SSHProxyUserLabel.SetMinSize((110, 16))
+ self.SSHProxyUser.SetMinSize((180, _textfield_height))
+ self.SSHProxyHostLabel.SetMinSize((110, 16))
+ self.SSHProxyHost.SetMinSize((180, _textfield_height))
+ self.SSHProxyKeyFile.SetMinSize((120, _textfield_height))
self.SSHProxyKeyFileBrowseButton.SetSize(self.SSHProxyKeyFileBrowseButton.GetBestSize())
- self.SSHProxyTunnelLabel.SetMinSize((120, 16))
+ self.SSHProxyTunnelLabel.SetMinSize((110, 16))
self.SSHProxyTunnelFromPort.SetMinSize((60, _textfield_height))
self.SSHProxyTunnelToPort.SetMinSize((60, _textfield_height))
self.SSHProxyTunnelFromHost.SetMinSize((120, _textfield_height))
@@ -337,7 +339,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
self.DisplayTypeCustom.SetValue(1)
self.ScreenWidth.SetMinSize((60, _textfield_height))
self.ScreenHeight.SetMinSize((60, _textfield_height))
- self.SetDisplayDPI.SetMinSize((120, _textfield_height))
+ self.SetDisplayDPI.SetMinSize((-1, _textfield_height))
self.DisplayDPI.SetMinSize((60, _textfield_height))
self.KeyboardLayoutLabel.SetMinSize((120, 16))
self.KeyboardLayout.SetMinSize((120, _textfield_height))
@@ -349,7 +351,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
self.Arts.SetMinSize((120, _textfield_height))
self.DefaultSoundPort.SetValue(1)
self.esd.SetMinSize((120, 21))
- self.ClientSidePrinting.SetMinSize((143, _textfield_height))
+ self.ClientSidePrinting.SetMinSize((-1, _textfield_height))
self.ClientSidePrinting.SetValue(1)
self.SharedFolderPath.SetMinSize((220, _textfield_height))
self.SharedFolderPathBrowseButton.SetSize(self.SharedFolderPathBrowseButton.GetBestSize())
@@ -361,9 +363,9 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
self.FileDropboxExtensions.SetMinSize((140, _textfield_height))
self.FileDropboxAction.SetMinSize((180, _textfield_height))
- self.OKButton.SetMinSize((60, 30))
- self.CancelButton.SetMinSize((60, 30))
- self.DefaultButton.SetMinSize((60, 30))
+ self.OKButton.SetMinSize((-1, 30))
+ self.CancelButton.SetMinSize((-1, 30))
+ self.DefaultButton.SetMinSize((-1, 30))
def __do_layout(self):
@@ -423,12 +425,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
sizer_2_1_4 = wx.BoxSizer(wx.HORIZONTAL)
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.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)
@@ -437,22 +434,28 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
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.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.SSHProxyTunnelFromPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
- sizer_2_1_6.Add((8, 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.SSHProxyTunnelToHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
- sizer_2_1_6.Add((4, 0))
- sizer_2_1_6.Add(self.SSHProxyTunnelToPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_2_1_6.Add(self.SSHProxyHostLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_2_1_6.Add(self.SSHProxyHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_2_1_6.Add((0,32))
+ sizer_2_1_7 = wx.BoxSizer(wx.HORIZONTAL)
+ sizer_2_1_7.Add(self.SSHProxyTunnelLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_2_1_7.Add(self.SSHProxyTunnelFromHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_2_1_7.Add((4, 0))
+ sizer_2_1_7.Add(self.SSHProxyTunnelFromPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_2_1_7.Add((8, 0))
+ sizer_2_1_7.Add(self.SSHProxyTunnelBetweenLabel, 0, wx.ALIGN_CENTRE_VERTICAL|wx.ALIGN_CENTRE_HORIZONTAL, 0)
+ sizer_2_1_7.Add((8, 0))
+ sizer_2_1_7.Add(self.SSHProxyTunnelToHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_2_1_7.Add((4, 0))
+ sizer_2_1_7.Add(self.SSHProxyTunnelToPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_2_1_7.Add((0,32))
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|wx.ALIGN_BOTTOM, 0)
+ sizer_2_1.Add(sizer_2_1_5, 0, wx.EXPAND, 0)
sizer_2_1.Add(sizer_2_1_6, 0, wx.EXPAND, 0)
+ sizer_2_1.Add(sizer_2_1_7, 0, wx.EXPAND, 0)
sizer_2_2 = wx.StaticBoxSizer(self.staticbox_LinkSpeed, wx.VERTICAL)
sizer_2_2_1 = wx.BoxSizer(wx.VERTICAL)
@@ -498,6 +501,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
sizer_3_1_2 = wx.BoxSizer(wx.HORIZONTAL)
sizer_3_1_2.Add((0,24))
sizer_3_1_2.Add(self.SetDisplayDPI, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+ sizer_3_1_2.Add((8,0))
sizer_3_1_2.Add(self.DisplayDPI, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
sizer_3_1.Add(sizer_3_1_1, 0, 0, 0)
sizer_3_1.Add(sizer_3_1_2, 0, 0, 0)
@@ -596,10 +600,10 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
sizer_4.Add(sizer_4_2, 1, wx.EXPAND, 0)
self.tab_SharedFilesAndFolders.SetSizer(sizer_4)
- self.X2goTabs.AddPage(self.tab_Session, "Session Profile")
- self.X2goTabs.AddPage(self.tab_Connection, "Connection")
- self.X2goTabs.AddPage(self.tab_Settings, "Settings")
- self.X2goTabs.AddPage(self.tab_SharedFilesAndFolders, "Sharing")
+ self.X2goTabs.AddPage(self.tab_Session, _(u"Session Profile"))
+ self.X2goTabs.AddPage(self.tab_Connection, _(u"Connection"))
+ self.X2goTabs.AddPage(self.tab_Settings, _(u"Settings"))
+ self.X2goTabs.AddPage(self.tab_SharedFilesAndFolders, _(u"Sharing"))
# the bottom area with OK, Defaults and Cancel buttons
sizer_B = wx.BoxSizer(wx.HORIZONTAL)
@@ -954,10 +958,10 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
iconsdir = _icons_location
if not os.path.exists(iconsdir):
iconsdir = os.getcwd()
- wildcard = "Icon Files (*.png)|*.png|" \
- "All files (*.*)|*"
+ wildcard = _(u"Icon Files (*.png)|*.png|" \
+ "All files (*.*)|*")
dlg = wx.FileDialog(
- self, message="Choose an icon for this session profile", defaultDir=iconsdir,
+ self, message=_(u"Choose an icon for this session profile"), defaultDir=iconsdir,
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.
@@ -1065,9 +1069,9 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
sshdir = os.path.expanduser('~/.ssh')
if not os.path.exists(sshdir):
sshdir = os.getcwd()
- wildcard = "All files (*.*)|*"
+ wildcard = _(u"All files (*.*)|*")
dlg = wx.FileDialog(
- self, message="Choose a public SSH key", defaultDir=sshdir,
+ self, message=_(u"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.
@@ -1082,7 +1086,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
sshdir = os.getcwd()
wildcard = "All files (*.*)|*"
dlg = wx.FileDialog(
- self, message="Choose a public SSH key", defaultDir=sshdir,
+ self, message=_(u"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.
@@ -1205,7 +1209,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
if not os.path.exists(shared_folder):
shared_folder = os.getcwd()
dlg = wx.DirDialog(
- self, message="Choose a folder to share within a session", style=1, defaultPath=shared_folder)
+ self, message=_(u"Choose a folder to share within a session"), style=1, defaultPath=shared_folder)
# Show the dialog and retrieve the user response. If it is the OK response,
# process the data.
if dlg.ShowModal() == wx.ID_OK:
@@ -1270,7 +1274,7 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
validateOk = True
if len(self.profile_config['name'].strip()) == 0:
validateOk = False
- self._PyHocaGUI.notifier.send(title='Profile Manager', text='Profile name is missing, profile unusable!!!', icon='profile_error')
+ self._PyHocaGUI.notifier.send(title=_(u'Profile Manager'), text=_(u'Profile name is missing, profile unusable!!!'), icon='profile_error')
return validateOk
def OnOKButton(self, event):
@@ -1290,13 +1294,13 @@ class PyHocaGUI_ProfileManager(wx.Dialog):
self.session_profiles.write()
if self.action == 'ADD':
- self._PyHocaGUI.notifier.send(title='%s - profile added' % self.profile_config['name'],
- text='A new session profile has been added.',
+ self._PyHocaGUI.notifier.send(title=_(u'%s - profile added') % self.profile_config['name'],
+ text=_(u'A new session profile has been added.'),
icon='profile_add',
)
elif self.action == 'EDIT':
- self._PyHocaGUI.notifier.send(title='%s - modified' % self.profile_config['name'],
- text='Changes to profile have been saved.',
+ self._PyHocaGUI.notifier.send(title=_(u'%s - modified') % self.profile_config['name'],
+ text=_(u'Changes to profile have been saved.'),
icon='profile_save',
)
diff --git a/pyhoca/wxgui/taskbar.py b/pyhoca/wxgui/taskbar.py
index fb24bf3..f90c99f 100644
--- a/pyhoca/wxgui/taskbar.py
+++ b/pyhoca/wxgui/taskbar.py
@@ -91,18 +91,18 @@ class PyHocaGUI_TaskBarIcon(wx.TaskBarIcon):
self.icon = self.MakeIcon(icon_name='pyhoca-trayicon')
if x2go.X2GOCLIENT_OS == 'Windows':
self.icon = self.MakeIcon(icon_name='x2go-logo-ubuntu')
- self.SetIcon(self.icon, "PyHoca-GUI\nConnecting you to ,,%s\'\'" % profile_name)
+ self.SetIcon(self.icon, _(u"PyHoca-GUI\nConnecting you to ,,%s\'\'") % profile_name)
else:
self.icon = self.MakeIcon(icon_name='pyhoca-trayicon')
- self.SetIcon(self.icon, "PyHoca-GUI (Python X2goClient)\nCurrently connecting you to remote X2go server ,,%s\'\'" % profile_name)
+ self.SetIcon(self.icon, _(u"PyHoca-GUI (Python X2goClient)\nCurrently connecting you to remote X2go server ,,%s\'\'") % profile_name)
def SetIconIdle(self):
if x2go.X2GOCLIENT_OS == 'Windows':
self.icon = self.MakeIcon(icon_name='x2go-logo-ubuntu')
- self.SetIcon(self.icon, "PyHoca-GUI\nConnecting you to X2go...")
+ self.SetIcon(self.icon, _(u"PyHoca-GUI\nConnecting you to X2go..."))
else:
self.icon = self.MakeIcon(icon_name='pyhoca-trayicon')
- self.SetIcon(self.icon, "PyHoca-GUI (Python X2goClient)\nClient for connecting you to a remote X2go server")
+ self.SetIcon(self.icon, _(u"PyHoca-GUI (Python X2goClient)\nClient for connecting you to a remote X2go server"))
def CreateSessionManagerPopupMenu(self, evt):
"""\
@@ -141,5 +141,4 @@ class PyHocaGUI_TaskBarIcon(wx.TaskBarIcon):
def Close(self):
self.RemoveIcon()
-
-
+
diff --git a/setup.cfg b/setup.cfg
new file mode 100644
index 0000000..d58552f
--- /dev/null
+++ b/setup.cfg
@@ -0,0 +1,6 @@
+[build]
+i18n = True
+
+[build_i18n]
+domain = pyhoca-gui
+#desktop_files = [('share/applications', ['desktop/pyhoca-gui.desktop.in', ]), ]
diff --git a/setup.py b/setup.py
index ee7f21c..4bed179 100755
--- a/setup.py
+++ b/setup.py
@@ -19,10 +19,15 @@
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
from setuptools import setup, find_packages
+from distutils.core import setup
+from DistUtilsExtra.command import *
+import os
+
+# import the PyHoca-GUI
import pyhoca.wxgui
setup(
- name = "PyHoca-GUI",
+ name = "pyhoca-gui",
version = pyhoca.wxgui.__VERSION__,
description = "PyHoca-GUI is a cross-platform (Windows, MacOS X, Linux) graphical X2go client.",
license = 'GPL',
@@ -30,5 +35,12 @@ setup(
url = 'http://www.x2go.org',
packages = [ 'pyhoca.wxgui', ],
package_dir = {'': '.'},
- install_requires = [ 'setuptools', ]
+ install_requires = [ 'setuptools', ],
+ cmdclass = { "build" : build_extra.build_extra,
+ "build_i18n" : build_i18n.build_i18n,
+ "build_help" : build_help.build_help,
+ "build_icons" : build_icons.build_icons,
+ "clean": clean_i18n.clean_i18n,
+ }
+
)
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