This repository has been archived on 2026-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
powersync-core/libnymea/translator.h
2019-04-08 16:49:45 +02:00

34 lines
692 B
C++

#ifndef TRANSLATOR_H
#define TRANSLATOR_H
#include "typeutils.h"
#include "types/deviceclass.h"
#include <QTranslator>
class DevicePlugin;
class DeviceManager;
class Translator
{
public:
Translator(DeviceManager *deviceManager);
~Translator();
QString translate(const PluginId &pluginId, const QString &string, const QLocale &locale);
private:
void loadTranslator(DevicePlugin *plugin, const QLocale &locale);
private:
DeviceManager *m_deviceManager = nullptr;
struct TranslatorContext {
PluginId pluginId;
QHash<QString, QTranslator*> translators;
};
QHash<PluginId, TranslatorContext> m_translatorContexts;
};
#endif // TRANSLATOR_H