Russian Qt Forum

Qt => Интернационализация, локализация => Тема начата: Fregloin от Февраль 26, 2015, 15:31



Название: Qt translator и много DLL
Отправлено: Fregloin от Февраль 26, 2015, 15:31
Привет. Пишется прога, в которой используется множество подгружаемых плагинов. Такой вопрос, как использовать подход Qt перевода, что бы при выборе языка, корректно переводились и плагины которые уже загружены. Хранить перевод в одном файле нереально.


Название: Re: Qt translator и много DLL
Отправлено: kambala от Февраль 26, 2015, 17:51
пнуть каждый плагин чтобы он подгрузил правильный перевод, нет?


Название: Re: Qt translator и много DLL
Отправлено: Fregloin от Февраль 27, 2015, 12:57
каким образом? дело с интернационализацией не имел, но походу придется, так как часть заказчиков хочет ПО на русском, часть на украинском.


Название: Re: Qt translator и много DLL
Отправлено: kambala от Февраль 27, 2015, 13:15
ну к плагинам ты же можешь обратиться из кода? а там просто QTranslator создать и установить, ну и сохранить его полем класса например. документация отлично описывает как загружать переводы.


Название: Re: Qt translator и много DLL
Отправлено: __Heaven__ от Февраль 27, 2015, 15:46
Как я понимаю, за перевод отвечает QApplication, которому мы устанавливаем QTranslator.
Далее QObject::tr("string to translate") обращается к qApp за переводом. Если dll связаны с qApp, то проблем быть не должно по идее.


Название: Re: Qt translator и много DLL
Отправлено: Figaro от Февраль 28, 2015, 17:13
Как я понимаю, за перевод отвечает QApplication, которому мы устанавливаем QTranslator.
Далее QObject::tr("string to translate") обращается к qApp за переводом. Если dll связаны с qApp, то проблем быть не должно по идее.

Правильно только в одном случае: qApp тогда должна сканировать все qm файлы для языка и все их грузить... хм... особенные и незабываемые ощущения получите при запуске с флэшки)))
Я обычно, как выше советовалось - гружу специфичный файл для плагина и
внутри плагина... У меня больше 12 языков...


Название: Re: Qt translator и много DLL
Отправлено: Fregloin от Апрель 27, 2015, 10:00
названия файлов локализаций должны совпадать с названием dll плагина?
можно ли их статически впихнуть в ресурсы. Если пихать в ресурсы, они будут висеть все в памяти или загружать только тот что нужен конкретно?