diff options
author | René 'Necoro' Neumann <necoro@necoro.net> | 2009-09-03 19:17:33 +0200 |
---|---|---|
committer | René 'Necoro' Neumann <necoro@necoro.net> | 2009-09-03 19:17:33 +0200 |
commit | 506c6919fa6dd01b738e022e625105d12cd05c48 (patch) | |
tree | 8494dffbb6d383c19636e2b4cf681ca57a94c4fd /portato/gui/windows | |
parent | 5e200de2c506c40d1f2c3152471b1b11d58c4f6f (diff) | |
download | portato-506c6919fa6dd01b738e022e625105d12cd05c48.tar.gz portato-506c6919fa6dd01b738e022e625105d12cd05c48.tar.bz2 portato-506c6919fa6dd01b738e022e625105d12cd05c48.zip |
Screw debugging ... prefer the ctypes approach to get rid of yet another c-module.
Diffstat (limited to '')
-rw-r--r-- | portato/gui/windows/basic.py | 15 | ||||
-rw-r--r-- | portato/gui/windows/gettext.pyx | 18 |
2 files changed, 10 insertions, 23 deletions
diff --git a/portato/gui/windows/basic.py b/portato/gui/windows/basic.py index 46e345e..3cedd69 100644 --- a/portato/gui/windows/basic.py +++ b/portato/gui/windows/basic.py @@ -20,13 +20,18 @@ from functools import wraps import os.path from ...constants import TEMPLATE_DIR, APP, LOCALE_DIR -from ...helper import error, debug +from ...helper import error # for the GtkBuilder to translate correctly :) -from . import gettext -old_charset = gettext.set_gtk_gettext(APP, LOCALE_DIR) -debug("Changed from old charset '%s' to UTF-8.", old_charset) -del old_charset +import ctypes +try: + getlib = ctypes.cdll.LoadLibrary("libgettextlib.so") +except OSError: + error("'libgettextlib.so' cannot be loaded. Might be, that there are no translations available in the GUI.") +else: + getlib.textdomain(APP) + getlib.bindtextdomain(APP, LOCALE_DIR) + getlib.bind_textdomain_codeset(APP, "UTF-8") class WrappedTree (object): __slots__ = ("klass", "tree", "get_widget", "get_ui") diff --git a/portato/gui/windows/gettext.pyx b/portato/gui/windows/gettext.pyx deleted file mode 100644 index c8174e8..0000000 --- a/portato/gui/windows/gettext.pyx +++ /dev/null @@ -1,18 +0,0 @@ -cdef extern from "langinfo.h": - char* nl_langinfo (int item) - cdef enum: - CODESET - -cdef extern from "libintl.h": - char * textdomain (char* domain) - char * bindtextdomain (char* domain, char* dir) - char * bind_textdomain_codeset (char* domain, char* codeset) - -def set_gtk_gettext (char* domain, char* dir): - textdomain(domain) - bindtextdomain(domain, dir) - - old_charset = nl_langinfo(CODESET) - bind_textdomain_codeset(domain, "UTF-8") - - return old_charset |