Автор: Гость_Дмитрий_* 29.8.2011, 21:08
Имеется приложение. Везде стоят tr(). Все переводится средствами Linguist.
После запуска подключается к приложению плагин, в котором реализован диалог. В плагине также используются tr(). Имеется файл перевода. Можно ли подключить этот файл перевода в момент подключения плагина? И как это сделать?
Автор: Litkevich Yuriy 30.8.2011, 5:45
загружай его в самом плагине
Автор: Гость_Дмитрий_* 30.8.2011, 22:43
Цитата(Litkevich Yuriy @ 30.8.2011, 5:45)
загружай его в самом плагине
А как именно его надо загрузить и чего с ним делать?
Основное приложение переводится по классической, описанной в любой книжке схеме:
int main(int argc, char*argv[])
{
initStaticMembers();
QApplication app(argc, argv);
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF8"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF8"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF8"));
QTranslator translator;
translator.load("CM_ru.qm","./tr/");
app.installTranslator(&translator);
CMMainWindow win;
win.init();
return app.exec();
}
В плагине имеется функция интерфейса типа createObject(), которая возвращает указатель на создаваемый объект. У которого в свою очередь есть функция show() для вывода виджета.
Его то и хотелось бы перевести.
А чего делать с файлом перевода плагина? В плагине же не создается объект QApplication? К тому же я где-то читал, что может быть загружен только один файл перевода?
Автор: Litkevich Yuriy 31.8.2011, 10:02
Цитата(Гость_Гость_Дмитрий_*_* @ 31.8.2011, 1:43)
А чего делать с файлом перевода плагина?
тоже, что ты делаешь в функции
main.
Цитата(Гость_Гость_Дмитрий_*_* @ 31.8.2011, 1:43)
В плагине же не создается объект QApplication?
но он уже существует
Цитата(Гость_Гость_Дмитрий_*_* @ 31.8.2011, 1:43)
К тому же я где-то читал, что может быть загружен только один файл перевода?
для одного переводчика (QTranslator) - да, но кол-во переводчиков не ограничено.
посмотри, например, функцию
void setupTranslations() в файле
%QTDIR%\tools\assistant\tools\assistant\main.cpp