subsurface/gettextfromc.cpp
Dirk Hohndel 962e71d495 Make the cache cache things
That fancy cache is kinda pointless if we never fill it...
2015-01-29 13:37:11 -08:00

27 lines
610 B
C++

#include <QCoreApplication>
#include <QString>
#include <gettextfromc.h>
const char *gettextFromC::trGettext(const char *text)
{
QByteArray &result = translationCache[QByteArray(text)];
if (result.isEmpty())
result = translationCache[QByteArray(text)] = trUtf8(text).toUtf8();
return result.constData();
}
void gettextFromC::reset(void)
{
translationCache.clear();
}
gettextFromC *gettextFromC::instance()
{
static QScopedPointer<gettextFromC> self(new gettextFromC());
return self.data();
}
extern "C" const char *trGettext(const char *text)
{
return gettextFromC::instance()->trGettext(text);
}