8#include <QtCore/qobject.h>
9#include <QtCore/qbytearray.h>
14#ifndef QT_NO_TRANSLATION
23 explicit QTranslator(QObject *parent =
nullptr);
26 virtual QString translate(
const char *context,
const char *sourceText,
27 const char *disambiguation =
nullptr,
int n = -1)
const;
29 virtual bool isEmpty()
const;
31 QString language()
const;
32 QString filePath()
const;
34 [[nodiscard]]
bool load(
const QString & filename,
35 const QString & directory = QString(),
36 const QString & search_delimiters = QString(),
37 const QString & suffix = QString());
38 [[nodiscard]]
bool load(
const QLocale & locale,
39 const QString & filename,
40 const QString & prefix = QString(),
41 const QString & directory = QString(),
42 const QString & suffix = QString());
43 [[nodiscard]]
bool load(
const uchar *data,
int len,
44 const QString &directory = QString());
47 Q_DISABLE_COPY(QTranslator)
48 Q_DECLARE_PRIVATE(QTranslator)
bool do_load(const QString &filename, const QString &directory)
const uchar * contextArray
bool do_load(const uchar *data, qsizetype len, const QString &directory)
const uchar * messageArray
QString do_translate(const char *context, const char *sourceText, const char *comment, int n) const
const uchar * offsetArray
bool load_translation(const QStringList &languages, const QString &filename, const QString &prefix, const QString &directory, const QString &suffix)
std::unique_ptr< QResource > resource
std::vector< std::unique_ptr< QTranslator > > subTranslators
const uchar * numerusRulesArray
#define qCDebug(category,...)
#define Q_STATIC_LOGGING_CATEGORY(name,...)
#define QStringLiteral(str)
static const int MagicLength
static QString getMessage(const uchar *m, const uchar *end, const char *context, const char *sourceText, const char *comment, uint numerus)
static quint32 read32(const uchar *data)
static void elfHash_continue(const char *name, uint &h)
static bool isValidNumerusRules(const uchar *rules, uint rulesSize)
static QString dotQmLiteral()
static uint elfHash(const char *name)
static bool match(const uchar *found, uint foundLen, const char *target, uint targetLen)
static uint numerusHelper(int n, const uchar *rules, uint rulesSize)
static quint8 read8(const uchar *data)
static quint16 read16(const uchar *data)
static const uchar magic[MagicLength]
static void elfHash_finish(uint &h)