Bonjour,

Actuellement je suis en train de convertir un logiciel utilisant libglade vers gtkbuilder, en prévision desd prochaines version de gnome. Tout fonctionne parfaitement excepté une chose : les traductions.

En effet je n'arrive toujours pas à me passer de libglade pour charger les traductions et ne vois pas comment faire pour migrer le tout vers gtkbuilder.

Voila mon code pour la traduction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# import modules needed for language translation & gtk support
import os, sys
import gettext, locale
import gtk, gtk.glade
 
 
########################################################################
class Translator:
	"""Class that contains functions to initiate language translations"""  
 
	#----------------------------------------------------------------------
	def __init__(self, project):
		"""Constructor"""  
		self.project = project
 
		# Setup foreign language support
		langs = []
		lc, encoding = locale.getdefaultlocale()
 
		if (lc):
			langs = [lc]			
		language = os.environ.get('LANGUAGE', None)
		if (language):
			langs += language.split(":")
		# Add languages... for testing
		#langs += ["es", "fr"]
 
		gtk.glade.textdomain("OpenShot")
		gtk.glade.bindtextdomain("OpenShot", self.project.LOCALE_DIR)
 
		gettext.textdomain("OpenShot")
		gettext.bindtextdomain("OpenShot", self.project.LOCALE_DIR)
 
		gettext.install(domain="OpenShot", unicode = True, codeset = 'utf-8')
 
		# This reference is used by other classes to define the _ method 
		self.lang = gettext.translation("OpenShot", self.project.LOCALE_DIR, languages = langs, fallback = True)
Et voilà comment je l'utilise :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
# Add language support
		_ = Language_Init.Translator(project).lang.gettext
		self._ = _
Est ce que quelqu'un voit comment faire ? Je suis sûr que c'est une astuce stupide mais je n'ai trouvé aucun exemple.