[Interest] qsTr in components

Kristoffersen, Even (NO14) Even.Kristoffersen at Honeywell.com
Tue May 24 11:58:00 CEST 2016


Minimal example attached.

If I use the TextTr component "txt" property it does not show any translation at all even though txt goes through qsTr and the translation is loaded at creation time.
If I use " text: qsTr(x) + translator.refresh" directly from main.qml then it works.

You can switch between the modes by changing to the commented out lines 36 and 73 in main.qml instead of line 35 and 72.

-Even


-----Original Message-----
From: Interest [mailto:interest-bounces+even.kristoffersen=honeywell.com at qt-project.org] On Behalf Of Kristoffersen, Even (NO14)
Sent: 23. mai 2016 15:24
To: Jason H <jhihn at gmx.com>
Cc: interest at qt-project.org
Subject: Re: [Interest] qsTr in components

Yup,

translator is my C++ object exposed to QML, and refresh is the signal.
Not sure why it's not working, I'll try to create a minimal example and see if it's still an issue there.

This is with Qt 5.6 btw.

-Even

-----Original Message-----
From: Jason H [mailto:jhihn at gmx.com] 
Sent: 23. mai 2016 15:17
To: Jason H <jhihn at gmx.com>
Cc: Kristoffersen, Even (NO14) <Even.Kristoffersen at Honeywell.com>; interest at qt-project.org
Subject: Re: [Interest] qsTr in components



> Sent: Monday, May 23, 2016 at 9:14 AM
> From: "Jason H" <jhihn at gmx.com>
> To: "Kristoffersen, Even (NO14)" <Even.Kristoffersen at Honeywell.com>
> Cc: "interest at qt-project.org" <interest at qt-project.org>
> Subject: Re: [Interest] qsTr in components
>
> 
> 
> > Sent: Monday, May 23, 2016 at 8:31 AM
> > From: "Kristoffersen, Even (NO14)" <Even.Kristoffersen at Honeywell.com>
> > To: "interest at qt-project.org" <interest at qt-project.org>
> > Subject: [Interest] qsTr in components
> >
> > Hello all,
> > 
> > I've played around a bit with an approach inspired by http://wiki.qt.io/How_to_do_dynamic_translation_in_QML .
> > 
> 
> If you are following along, the example a few months ago, it works. I'm using it, and in components too.
> 
> You need to add a C++ object, and expose it to QML.
> 
> it has a proeprty: Q_PROPERTY(QString null READ getNull NOTIFY languageChanged )
> signals:
> 	void languageChanged(QString language);
> 
> When you change the language, you emit that signal, that causes the re-evaluation of all string with the langMgr.null added.

EDIT: Not sure why I used C++, it should be possible with QML. I think I used C++ so I could start the download of languages before the QML engine started. (My langmgr manages the languages, including downloads updates)

_______________________________________________
Interest mailing list
Interest at qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TransTest.zip
Type: application/x-zip-compressed
Size: 5881 bytes
Desc: TransTest.zip
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160524/fff6525e/attachment.bin>


More information about the Interest mailing list