Hi All,


I tried to use multi-language for my application but after loading any language the default language (English) didn't appear!?


Do I need to create en.qm/ts just like any other language or I can load the default language by some command?


here is a snippet of my code:

	def getLang(self):
		if self.lang == 3:
			return QString("en")
		elif self.lang == 31:
			return QString("ar")
		elif self.lang == 32:
			return QString("tr")
		else:
			return QString("en")
			
	def languageChange(self):
		translator = QTranslator(self)
		currentLang = QString(":/l10n/%1.qm").arg(self.getLang())
		if not translator.load(currentLang):
			print QString("Couldn't load language file")
		widget = QWidget(self)
		if self.lang == 31:
			qApp.setLayoutDirection(Qt.RightToLeft)
			QLocale.setDefault(QLocale(QLocale.Arabic, QLocale.SyrianArabRepublic))
			for widget in QApplication.allWidgets():
				widget.setLayoutDirection(Qt.RightToLeft)
		else:
			qApp.setLayoutDirection(Qt.LeftToRight)
			for widget in qApp.allWidgets():
				widget.setLayoutDirection(Qt.LeftToRight)
		qApp.installTranslator(translator)
		self.retranslateUi(self)
		
	def on_toolButton_english_clicked(self):
		self.lang = 3
		self.languageChange()
		self.toolButton_english.setChecked(1)
		
	def on_toolButton_arabic_clicked(self):
		self.lang = 31
		self.languageChange()
		self.toolButton_arabic.setChecked(1)
		
	def on_toolButton_turkish_clicked(self):
		self.lang = 32
		self.languageChange()
		self.toolButton_turkish.setChecked(1)


-- 
Best Regards
Muhammad Bashir Al-Noimi
My Blog: http://mbnoimi.net

_______________________________________________
PyQt mailing list    PyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to