Ejemplo n.º 1
0
void TxtReader::createLanguageMenu()
{
	languageMenu = new QMenu(this);
	languageMenu->setIcon(QIcon(":/images/lang.png"));

    languageActionGroup = new QActionGroup(this);
    connect(languageActionGroup, SIGNAL(triggered(QAction *)),
            this, SLOT(switchLanguage(QAction *)));

    QDir qmDir(":/i18n/");
    QStringList fileNames =
            qmDir.entryList(QStringList("txtreader_*.qm")); 

    for (int i = 0; i < fileNames.size(); ++i) {
    	QString locale = fileNames[i];
        locale.remove(0, locale.indexOf('_') + 1);
        locale.chop(3);
        
        QAction *action = new QAction(tr("&%1 %2")
                                      .arg(i + 1).arg(locale), this);
        action->setCheckable(true);
        action->setData(locale);

        languageMenu->addAction(action);
        languageActionGroup->addAction(action);

        if (locale == uilang)
            action->setChecked(true);
    }
}
Ejemplo n.º 2
0
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    if (argc < 3) {
      std::cerr << "Usage: translateme QM_DIR LOCALE" << std::endl;
     return 1;
    }

    QString qmDir(argv[1]);
    QString locale(argv[2]);
    QString fileName = QString("helloqt_") + locale;

    QTranslator translator;
    translator.load(fileName, qmDir);
    app.installTranslator(&translator);

    QString hello = QApplication::tr("Hello world!");
    std::cout << hello.toUtf8().data();

    return 0;
}