ich habe in meiner Library einen Message Parser, der jeder Message ein enum-Wert zuteilt. Die Lib und der Client werden übersetzt. Der Server wirft im Prinzip nur einen Message Code und gegebenfalls Parameter, welche auf dem Client eingesetzt werden. Jetzt bin ich leider an den Punkt gekommen, bei dem die Parameter auch übersetzt werden müssen.
Ich habe versucht die einzelnen Worte in einem Phrasebook zu übersetzten und das ganze mittels tr() zu übersetzen. Doch leider funktioniert das nicht wie erhofft.
Code: Alles auswählen
QString MessageParser::setArgs(QString s, QStringList sl)
{
QString result(s);
foreach(QString str, sl)
{
std::string newstr = std::string(str.toAscii().data());
const char * data = newstr.c_str();
result = result.arg(parseString(tr(data))); // << hier soll übersetzt werden
}
return result;
}