summaryrefslogtreecommitdiffstats
path: root/examples3/i18n
diff options
context:
space:
mode:
authorTimothy Pearson <[email protected]>2011-11-29 00:31:00 -0600
committerTimothy Pearson <[email protected]>2011-11-29 00:31:00 -0600
commitb388516ca2691303a076a0764fd40bf7116fe43d (patch)
tree6f1615d1f12b325f4d1cd9c25d1519303794001a /examples3/i18n
downloadpytqt-b388516ca2691303a076a0764fd40bf7116fe43d.tar.gz
pytqt-b388516ca2691303a076a0764fd40bf7116fe43d.zip
Initial import of python-qt3
Diffstat (limited to 'examples3/i18n')
-rw-r--r--examples3/i18n/i18n.pro15
-rwxr-xr-xexamples3/i18n/i18n.py147
-rw-r--r--examples3/i18n/mywidget.py47
-rw-r--r--examples3/i18n/mywidget_cs.qmbin0 -> 818 bytes
-rw-r--r--examples3/i18n/mywidget_cs.ts75
-rw-r--r--examples3/i18n/mywidget_de.qmbin0 -> 913 bytes
-rw-r--r--examples3/i18n/mywidget_de.ts69
-rw-r--r--examples3/i18n/mywidget_el.qmbin0 -> 832 bytes
-rw-r--r--examples3/i18n/mywidget_el.ts68
-rw-r--r--examples3/i18n/mywidget_en.qmbin0 -> 337 bytes
-rw-r--r--examples3/i18n/mywidget_en.ts69
-rw-r--r--examples3/i18n/mywidget_eo.qmbin0 -> 835 bytes
-rw-r--r--examples3/i18n/mywidget_eo.ts72
-rw-r--r--examples3/i18n/mywidget_fr.qmbin0 -> 884 bytes
-rw-r--r--examples3/i18n/mywidget_fr.ts68
-rw-r--r--examples3/i18n/mywidget_it.qmbin0 -> 763 bytes
-rw-r--r--examples3/i18n/mywidget_it.ts72
-rw-r--r--examples3/i18n/mywidget_jp.qmbin0 -> 738 bytes
-rw-r--r--examples3/i18n/mywidget_jp.ts68
-rw-r--r--examples3/i18n/mywidget_ko.qmbin0 -> 738 bytes
-rw-r--r--examples3/i18n/mywidget_ko.ts68
-rw-r--r--examples3/i18n/mywidget_no.qmbin0 -> 830 bytes
-rw-r--r--examples3/i18n/mywidget_no.ts68
-rw-r--r--examples3/i18n/mywidget_ru.qmbin0 -> 799 bytes
-rw-r--r--examples3/i18n/mywidget_ru.ts68
-rw-r--r--examples3/i18n/mywidget_zh.qmbin0 -> 706 bytes
-rw-r--r--examples3/i18n/mywidget_zh.ts68
27 files changed, 1042 insertions, 0 deletions
diff --git a/examples3/i18n/i18n.pro b/examples3/i18n/i18n.pro
new file mode 100644
index 0000000..fc55895
--- /dev/null
+++ b/examples3/i18n/i18n.pro
@@ -0,0 +1,15 @@
+SOURCES = mywidget.py \
+ i18n.py
+
+TRANSLATIONS = mywidget_cs.ts \
+ mywidget_de.ts \
+ mywidget_el.ts \
+ mywidget_en.ts \
+ mywidget_eo.ts \
+ mywidget_fr.ts \
+ mywidget_it.ts \
+ mywidget_jp.ts \
+ mywidget_ko.ts \
+ mywidget_no.ts \
+ mywidget_ru.ts \
+ mywidget_zh.ts
diff --git a/examples3/i18n/i18n.py b/examples3/i18n/i18n.py
new file mode 100755
index 0000000..06cc97f
--- /dev/null
+++ b/examples3/i18n/i18n.py
@@ -0,0 +1,147 @@
+#!/usr/bin/env python
+
+# Copyright (c) 2002 Detlev Offenbach <[email protected]>
+
+from whrandom import randint
+import sys
+
+from qt import *
+
+from mywidget import MyWidget
+
+class QVDialog(QDialog):
+ def __init__(self, parent=None, name=None, modal=0, flags=0):
+ QDialog.__init__(self, parent, name, modal, flags)
+
+ self.vb = QVBoxLayout(self, 8)
+ self.vb.setAutoAdd(1)
+
+ self.hb = None
+ self.map = {}
+ #self.sm = QSignalMapper(self)
+ self.connect(self, PYSIGNAL('mapped(int)'), self.done)
+
+ def addButtons(self, cancel=None, ok=None, mid1=None, mid2=None, mid3=None):
+ if ok is None:
+ self.addButton(self.tr("OK"),1)
+ else:
+ self.addButton(ok,1)
+
+ if mid1 is not None:
+ self.addButton(mid1,2)
+
+ if mid2 is not None:
+ self.addButton(mid2,3)
+
+ if mid3 is not None:
+ self.addButton(mid3,4)
+
+ if cancel is None:
+ self.addButton(self.tr('Cancel'),0)
+ else:
+ self.addButton(cancel,0)
+
+ def addButton(self, text, result):
+ if self.hb is None:
+ self.hb = QHBox(self)
+ c = QPushButton(text, self.hb)
+ self.setMapping(c, result)
+ self.connect(c, SIGNAL('clicked()'), self.mapit)
+
+ def setMapping(self, c, result):
+ self.map[c] = result
+
+ def mapit(self):
+ qo = self.sender()
+ self.emit(PYSIGNAL('mapped(int)'), (self.map[qo],))
+
+translator = None
+wlist = [] # keep reference to widgets
+
+def showLang(lang):
+ global translator
+
+ qApp.setPalette(QPalette(QColor(220-randint(0,64),220-randint(0,64),220-randint(0,64))))
+
+ language = "mywidget_"+lang+".qm"
+ fi = QFileInfo(language)
+
+ if not fi.exists():
+ QMessageBox.warning(None, "File error",
+ "Cannot find translation for language: "+lang+\
+ "\n(try eg. 'de' or 'en')")
+ return None
+
+ if translator is not None:
+ qApp.removeTranslator(translator)
+ translator = None
+
+ translator = QTranslator(None)
+ translator.load(language,".")
+ qApp.installTranslator(translator)
+ m = MyWidget()
+ m.setCaption("PyQt Example - i18n - " + unicode(m.caption()))
+ wlist.append(m)
+ return m
+
+def main(argv):
+ app = QApplication(argv)
+
+ qm = ["cs", "de", "el", "en", "eo", "fr", "it", "jp", "ko", "no", "ru", "zh"]
+
+ lang = None
+ if len(argv) == 2:
+ lang = argv[1]
+
+ if (len(argv) != 2) or (lang == "all"):
+ dlg = QVDialog(None, None, 1)
+ qmb = []
+ r = 0
+ if lang == "all":
+ r=2
+ else:
+ bg = QButtonGroup(4, Qt.Vertical, "Choose Locales", dlg)
+ loc = QTextCodec.locale()
+ for i in range(0,len(qm)):
+ qmb.append(QCheckBox(qm[i], bg))
+ qmb[i].setChecked(str(loc) == qm[i])
+ dlg.addButtons("Cancel","OK","All")
+ r = dlg.exec_loop()
+
+ if r:
+ tight = qApp.desktop().screen().width < 1024
+ x = 5
+ y = 25
+ for i in range(0,len(qm)):
+ if (r == 2) or (qmb[i].isChecked()):
+ w = showLang(qm[i])
+
+ if w == None:
+ sys.exit(0)
+
+ app.connect(app, SIGNAL('lastWindowClosed()'), qApp, SLOT('quit()'))
+ w.setGeometry(x,y,197,356)
+ w.show()
+ if tight:
+ x += 8
+ y += 8
+ else:
+ x += 205
+ if x > 1000:
+ x = 5
+ y += 384
+
+ else:
+ sys.exit(0)
+
+ else:
+ lang = argv[1]
+ m = showLang(lang)
+ app.setMainWidget(m)
+ m.setCaption("PyQt Example - i18n")
+ m.show()
+
+ return app.exec_loop()
+
+if __name__ == "__main__":
+ main(sys.argv)
diff --git a/examples3/i18n/mywidget.py b/examples3/i18n/mywidget.py
new file mode 100644
index 0000000..60e267a
--- /dev/null
+++ b/examples3/i18n/mywidget.py
@@ -0,0 +1,47 @@
+# Copyright (c) 2002 Detlev Offenbach <[email protected]>
+
+from qt import *
+
+class MyWidget(QMainWindow):
+
+ def __init__(self, parent=None, name=None):
+ QMainWindow.__init__(self, parent, name)
+
+ self.central = QVBox(self)
+ self.central.setMargin(5)
+ self.central.setSpacing(5)
+ self.setCentralWidget(self.central)
+
+ self.setCaption(self.trUtf8("""Internationalization Example"""))
+
+ self.file = QPopupMenu(self)
+ self.file.insertItem(self.trUtf8("E&xit"), qApp, SLOT("quit()"),
+ QKeySequence(self.trUtf8("Ctrl+Q","File|Quit")))
+ self.menuBar().insertItem(self.trUtf8("&File"), self.file)
+
+ self.statusBar().message(self.trUtf8('''Language: English'''))
+
+ self.label = QLabel(self.trUtf8("The Main Window"), self.central)
+
+ self.gbox = QButtonGroup(1, QGroupBox.Horizontal,
+ self.trUtf8("View"), self.central)
+ rb = QRadioButton(qApp.translate('MyWidget','Perspective'), self.gbox)
+ rb = QRadioButton(qApp.translate('MyWidget','Isometric'), self.gbox)
+ rb = QRadioButton(qApp.translate('MyWidget','Oblique'), self.gbox)
+
+ self.initChoices(self.central)
+
+ choices = [
+ QT_TRANSLATE_NOOP("MyWidget", "First"),
+ QT_TRANSLATE_NOOP("MyWidget", "Second"),
+ QT_TRANSLATE_NOOP("MyWidget", "Third")
+ ]
+
+ def initChoices(self, parent):
+ self.lb = QListBox(parent)
+ for ch in self.choices:
+ self.lb.insertItem(self.trUtf8(ch))
+
+ def closeEvent(self, e):
+ QWidget.closeEvent(self, e)
+ self.emit(PYSIGNAL('closed'), ())
diff --git a/examples3/i18n/mywidget_cs.qm b/examples3/i18n/mywidget_cs.qm
new file mode 100644
index 0000000..f95090d
--- /dev/null
+++ b/examples3/i18n/mywidget_cs.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_cs.ts b/examples3/i18n/mywidget_cs.ts
new file mode 100644
index 0000000..4cf61f1
--- /dev/null
+++ b/examples3/i18n/mywidget_cs.ts
@@ -0,0 +1,75 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">Pohled</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Soubor</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit</source>
+ <translation type="unfinished">&amp;Konec</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">První</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">Třetí</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">Jayzk: Český</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">Hlavní okno</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">Nakloněný</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">Druhý</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">Isometrický</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">Perspektivní</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">Ukázka lokalizace</translation>
+ </message>
+</context>
+<context encoding="UTF-8">
+ <name>QAccel</name>
+ <message encoding="UTF-8">
+ <source>Ctrl</source>
+ <translation type="obsolete">Ctrl</translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_de.qm b/examples3/i18n/mywidget_de.qm
new file mode 100644
index 0000000..6433855
--- /dev/null
+++ b/examples3/i18n/mywidget_de.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_de.ts b/examples3/i18n/mywidget_de.ts
new file mode 100644
index 0000000..d114b8b
--- /dev/null
+++ b/examples3/i18n/mywidget_de.ts
@@ -0,0 +1,69 @@
+<!DOCTYPE TS><TS>
+<context>
+ <name>MyWidget</name>
+ <message>
+ <source>First</source>
+ <translation>Erstens</translation>
+ </message>
+ <message>
+ <source>Second</source>
+ <translation>Zweitens</translation>
+ </message>
+ <message>
+ <source>Third</source>
+ <translation>Drittens</translation>
+ </message>
+ <message>
+ <source>Internationalization Example</source>
+ <translation>Internationalisierungsbeispiel</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation>Be&amp;enden</translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation>&amp;Datei</translation>
+ </message>
+ <message>
+ <source>Language: English</source>
+ <translation>Sprache: Deutsch</translation>
+ </message>
+ <message>
+ <source>The Main Window</source>
+ <translation>Das Hauptfenster</translation>
+ </message>
+ <message>
+ <source>View</source>
+ <translation>Ansicht</translation>
+ </message>
+ <message>
+ <source>Perspective</source>
+ <translation>Perspektivisch</translation>
+ </message>
+ <message>
+ <source>Isometric</source>
+ <translation>Isometrisch</translation>
+ </message>
+ <message>
+ <source>Oblique</source>
+ <translation>Schief</translation>
+ </message>
+ <message>
+ <source>Ctrl+Q</source>
+ <comment>File|Quit</comment>
+ <translation>Strg+Q</translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation>OK</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation>Abbruch</translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_el.qm b/examples3/i18n/mywidget_el.qm
new file mode 100644
index 0000000..15d7689
--- /dev/null
+++ b/examples3/i18n/mywidget_el.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_el.ts b/examples3/i18n/mywidget_el.ts
new file mode 100644
index 0000000..59fb228
--- /dev/null
+++ b/examples3/i18n/mywidget_el.ts
@@ -0,0 +1,68 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Αρχείο</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit</source>
+ <translation type="unfinished">Έ&amp;ξοδος</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">Πρώτο</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">Παράδειγμα διεθνοποίησης</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">Ισομετρική</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">Γλώσσα: Ελληνικά</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">Πλάγια</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">Προοπτική</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">Δεύτερο</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">Κύριο παράθυρο</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">Τρίτο</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">Όψη</translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_en.qm b/examples3/i18n/mywidget_en.qm
new file mode 100644
index 0000000..6bd22c4
--- /dev/null
+++ b/examples3/i18n/mywidget_en.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_en.ts b/examples3/i18n/mywidget_en.ts
new file mode 100644
index 0000000..f231669
--- /dev/null
+++ b/examples3/i18n/mywidget_en.ts
@@ -0,0 +1,69 @@
+<!DOCTYPE TS><TS>
+<context>
+ <name>MyWidget</name>
+ <message>
+ <source>First</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Second</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Third</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Internationalization Example</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Language: English</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>The Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Perspective</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Isometric</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Oblique</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Ctrl+Q</source>
+ <comment>File|Quit</comment>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_eo.qm b/examples3/i18n/mywidget_eo.qm
new file mode 100644
index 0000000..372cf79
--- /dev/null
+++ b/examples3/i18n/mywidget_eo.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_eo.ts b/examples3/i18n/mywidget_eo.ts
new file mode 100644
index 0000000..381870d
--- /dev/null
+++ b/examples3/i18n/mywidget_eo.ts
@@ -0,0 +1,72 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Dosiero</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+F</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit...</source>
+ <translation type="obsolete">&amp;Fini...</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">Unue</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">Ekzemplo pri internaciigo</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">Isometria</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">Lingvo: Esperanto (ĈĜĤĴŜŬĉĝĥĵŝŭ)</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">Oblikva</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">Perspektiva</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">Due</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">La Ĉeffenestro</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">Trie</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">Aspekto</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_fr.qm b/examples3/i18n/mywidget_fr.qm
new file mode 100644
index 0000000..12a8464
--- /dev/null
+++ b/examples3/i18n/mywidget_fr.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_fr.ts b/examples3/i18n/mywidget_fr.ts
new file mode 100644
index 0000000..a029084
--- /dev/null
+++ b/examples3/i18n/mywidget_fr.ts
@@ -0,0 +1,68 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">Vue</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Fichier</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit</source>
+ <translation type="unfinished">&amp;Quitter</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">Premier</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">Troisième</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">Langage : Français</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">La fenêtre principale</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">Oblique</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">Second</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">Isométrique</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">Perspective</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">Exemple d&apos;internationalisation</translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_it.qm b/examples3/i18n/mywidget_it.qm
new file mode 100644
index 0000000..075bee2
--- /dev/null
+++ b/examples3/i18n/mywidget_it.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_it.ts b/examples3/i18n/mywidget_it.ts
new file mode 100644
index 0000000..a450deb
--- /dev/null
+++ b/examples3/i18n/mywidget_it.ts
@@ -0,0 +1,72 @@
+<!DOCTYPE TS><TS>
+<context>
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>E&amp;xit...</source>
+ <translation type="obsolete">&amp;Esci...</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">Primo</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">Esempio di localizzazione</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">Isometrica</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">Lingua: Italiano</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">Obliqua</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">Prospettica</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">Secondo</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">La Finestra Principale</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">Terzo</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">Vista</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_jp.qm b/examples3/i18n/mywidget_jp.qm
new file mode 100644
index 0000000..8942dd7
--- /dev/null
+++ b/examples3/i18n/mywidget_jp.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_jp.ts b/examples3/i18n/mywidget_jp.ts
new file mode 100644
index 0000000..2a7345f
--- /dev/null
+++ b/examples3/i18n/mywidget_jp.ts
@@ -0,0 +1,68 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">ファイル(&amp;F)</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit</source>
+ <translation type="unfinished">終了(&amp;X)</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">第一行</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">国際化(i18n)の例</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">等角投影法</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">言語: 日本語</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">斜め投影法</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">遠近法</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">第二行</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">メインウィンドウ</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">第三行</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">表示方式</translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_ko.qm b/examples3/i18n/mywidget_ko.qm
new file mode 100644
index 0000000..dccc2ba
--- /dev/null
+++ b/examples3/i18n/mywidget_ko.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_ko.ts b/examples3/i18n/mywidget_ko.ts
new file mode 100644
index 0000000..acc8f9b
--- /dev/null
+++ b/examples3/i18n/mywidget_ko.ts
@@ -0,0 +1,68 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">파일&amp;F</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+E</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit</source>
+ <translation type="unfinished">종료&amp;X</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">첫번째</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">국제화 예제</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">Isometric</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">언어 : 한국어</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">Oblique</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">Perspective</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">두번째</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">메인 윈도우</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">세번째</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">보기</translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_no.qm b/examples3/i18n/mywidget_no.qm
new file mode 100644
index 0000000..2adc136
--- /dev/null
+++ b/examples3/i18n/mywidget_no.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_no.ts b/examples3/i18n/mywidget_no.ts
new file mode 100644
index 0000000..341c664
--- /dev/null
+++ b/examples3/i18n/mywidget_no.ts
@@ -0,0 +1,68 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">Visning</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Fil</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit</source>
+ <translation type="unfinished">&amp;Slutt</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">Første</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">Tredje</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">Språk: Norsk</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">Hovedvinduet</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+S</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">Skjev</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">Andre</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">Isometrisk</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">Perspektiv</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">Internasjonaliseringseksempel</translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_ru.qm b/examples3/i18n/mywidget_ru.qm
new file mode 100644
index 0000000..ebc512e
--- /dev/null
+++ b/examples3/i18n/mywidget_ru.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_ru.ts b/examples3/i18n/mywidget_ru.ts
new file mode 100644
index 0000000..07070b0
--- /dev/null
+++ b/examples3/i18n/mywidget_ru.ts
@@ -0,0 +1,68 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">Вид</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">Файл</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit</source>
+ <translation type="unfinished">Выход</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">Первый</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">Третий</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">Язык: Русский</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">Главное окно</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">Курсив</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">Второй</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">Изометрический</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">Перспектива</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">Пример интернациноализации</translation>
+ </message>
+ <message>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/examples3/i18n/mywidget_zh.qm b/examples3/i18n/mywidget_zh.qm
new file mode 100644
index 0000000..a890c09
--- /dev/null
+++ b/examples3/i18n/mywidget_zh.qm
Binary files differ
diff --git a/examples3/i18n/mywidget_zh.ts b/examples3/i18n/mywidget_zh.ts
new file mode 100644
index 0000000..8b015d6
--- /dev/null
+++ b/examples3/i18n/mywidget_zh.ts
@@ -0,0 +1,68 @@
+<!DOCTYPE TS><TS>
+<context encoding="UTF-8">
+ <name>MyWidget</name>
+ <message encoding="UTF-8">
+ <source>View</source>
+ <translation type="unfinished">视图</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>&amp;File</source>
+ <translation type="unfinished">文件[&amp;F]</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>E&amp;xit</source>
+ <translation type="unfinished">退出[&amp;x]</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>First</source>
+ <translation type="unfinished">第一个</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Third</source>
+ <translation type="unfinished">第三个</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Language: English</source>
+ <translation type="unfinished">语言: 简体中文</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>The Main Window</source>
+ <translation type="unfinished">主窗口</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Oblique</source>
+ <translation type="unfinished">斜投影</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Second</source>
+ <translation type="unfinished">第二个</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Isometric</source>
+ <translation type="unfinished">等角投影</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Perspective</source>
+ <translation type="unfinished">透视投影</translation>
+ </message>
+ <message encoding="UTF-8">
+ <source>Internationalization Example</source>
+ <translation type="unfinished">国际化范例</translation>
+ </message>
+</context>
+<context>
+ <name>QVDialog</name>
+ <message>
+ <source>OK</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>