From 506c6919fa6dd01b738e022e625105d12cd05c48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20=27Necoro=27=20Neumann?= Date: Thu, 3 Sep 2009 19:17:33 +0200 Subject: Screw debugging ... prefer the ctypes approach to get rid of yet another c-module. --- portato/gui/windows/basic.py | 15 ++++++++++----- portato/gui/windows/gettext.pyx | 18 ------------------ 2 files changed, 10 insertions(+), 23 deletions(-) delete mode 100644 portato/gui/windows/gettext.pyx (limited to 'portato') 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 -- cgit v1.2.3