Salve a tutti,
Provo a postare qui una questione che ho sottoposto già nella lista degli sviluppatori di qgis.
Al plugin a cui sto lavorando ho un pezzo di codice in cui ho una lista di termini in italiano in un table widget con la funzione comboboxdelegate che vorrei si traducessero in inglese quando qgis è settato in inglese. Non ho capito se devo utilizzare le funzione di QCore.QLocale o altro
Il codice esempio è questo:
valuesRS.=[“ciao”, “buongiorno”, "buonasera, “”]
self.delegateRS = ComboBoxDelegate()
self.delegateRS.def_values(valuesRS)
self.delegateRS.def_editable(‘False’)
self.tableWidget_rapporti.setItemDelegateForColumn(0,self.delegateRS)
Grazie in anticipo!
EC
Enzo Cocca PhD
Scienze e Tecnologie per l’Archeologia e i Beni Culturali
Salve.
Il 09/04/2015 06:29, Enzo Cocca ha scritto:
Al plugin a cui sto lavorando ho un pezzo di codice in cui ho una lista
di termini in italiano in un table widget con la funzione
comboboxdelegate che vorrei si traducessero in inglese quando qgis è
settato in inglese. Non ho capito se devo utilizzare le funzione di
QCore.QLocale o altro
Ti conviene guardare come hanno risolto in altri plugin.
Hai pubblicato il tuo plugin?
Saluti.
--
Paolo Cavallini - www.faunalia.eu
QGIS & PostGIS courses: http://www.faunalia.eu/training.html
Grazie giovanni per la risposta veloce.
Qtlinguistic lo uso, solo che in questo caso non funzionerebbe. Cmq provo con il qtranslator.
Grazie ancora per il consiglio
EC
Enzo Cocca PhD
Scienze e Tecnologie per l’Archeologia e i Beni Culturali
Il 09/Apr/2015 07:52, “G. Allegri” <giohappy@gmail.com> ha scritto:
Ciao Enzo,
l’approccio migliore è utilizzare il QTranslator. Dai un occhio ad un qualsiasi plugin multilingua, ad es. guarda l’init di GdalTools.py [1].
Quando hai il translator settaro puoi usare il metodo QObject.tr(…).
Tutte le classi in cui voglio usare il locale io le faccio derivare da QObject, così ho il metodo già a disposizione, altrimenti uno si deve scrivere un proprio metodo per usare esplicitamente il translator.
Molto utile il Qt Linguist (e relativi metodi come pylupdate4) per gestire le traduzioni.
Qua trovi un po’ di indicazioni per usare questi strumenti: http://pyqt.sourceforge.net/Docs/PyQt4/i18n.html
giovanni
[1] https://github.com/qgis/QGIS/blob/master/python/plugins/GdalTools/GdalTools.py
Il 09/apr/2015 06:29 “Enzo Cocca” <enzo.ccc@gmail.com> ha scritto:
Salve a tutti,
Provo a postare qui una questione che ho sottoposto già nella lista degli sviluppatori di qgis.
Al plugin a cui sto lavorando ho un pezzo di codice in cui ho una lista di termini in italiano in un table widget con la funzione comboboxdelegate che vorrei si traducessero in inglese quando qgis è settato in inglese. Non ho capito se devo utilizzare le funzione di QCore.QLocale o altro
Il codice esempio è questo:
valuesRS.=[“ciao”, “buongiorno”, "buonasera, “”]
self.delegateRS = ComboBoxDelegate()
self.delegateRS.def_values(valuesRS)
self.delegateRS.def_editable(‘False’)
self.tableWidget_rapporti.setItemDelegateForColumn(0,self.delegateRS)
Grazie in anticipo!
EC
Enzo Cocca PhD
Scienze e Tecnologie per l’Archeologia e i Beni Culturali
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
750 iscritti al 18.3.2015
Qt Linguistic e QTranslator sono elementi complementari, non alternativi… Comunque se guardi all’esempio di un qualsiasi plugin tradotto vedrai che è molto semplice, specie se nel mezzo ci metti pylupdate 
buona giornata
Il 09/apr/2015 08:08 “Enzo Cocca” <enzo.ccc@gmail.com> ha scritto:
Grazie giovanni per la risposta veloce.
Qtlinguistic lo uso, solo che in questo caso non funzionerebbe. Cmq provo con il qtranslator.
Grazie ancora per il consiglio
EC
Enzo Cocca PhD
Scienze e Tecnologie per l’Archeologia e i Beni Culturali
Il 09/Apr/2015 07:52, “G. Allegri” <giohappy@gmail.com> ha scritto:
Ciao Enzo,
l’approccio migliore è utilizzare il QTranslator. Dai un occhio ad un qualsiasi plugin multilingua, ad es. guarda l’init di GdalTools.py [1].
Quando hai il translator settaro puoi usare il metodo QObject.tr(…).
Tutte le classi in cui voglio usare il locale io le faccio derivare da QObject, così ho il metodo già a disposizione, altrimenti uno si deve scrivere un proprio metodo per usare esplicitamente il translator.
Molto utile il Qt Linguist (e relativi metodi come pylupdate4) per gestire le traduzioni.
Qua trovi un po’ di indicazioni per usare questi strumenti: http://pyqt.sourceforge.net/Docs/PyQt4/i18n.html
giovanni
[1] https://github.com/qgis/QGIS/blob/master/python/plugins/GdalTools/GdalTools.py
Il 09/apr/2015 06:29 “Enzo Cocca” <enzo.ccc@gmail.com> ha scritto:
Salve a tutti,
Provo a postare qui una questione che ho sottoposto già nella lista degli sviluppatori di qgis.
Al plugin a cui sto lavorando ho un pezzo di codice in cui ho una lista di termini in italiano in un table widget con la funzione comboboxdelegate che vorrei si traducessero in inglese quando qgis è settato in inglese. Non ho capito se devo utilizzare le funzione di QCore.QLocale o altro
Il codice esempio è questo:
valuesRS.=[“ciao”, “buongiorno”, "buonasera, “”]
self.delegateRS = ComboBoxDelegate()
self.delegateRS.def_values(valuesRS)
self.delegateRS.def_editable(‘False’)
self.tableWidget_rapporti.setItemDelegateForColumn(0,self.delegateRS)
Grazie in anticipo!
EC
Enzo Cocca PhD
Scienze e Tecnologie per l’Archeologia e i Beni Culturali
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
750 iscritti al 18.3.2015