#ifndef PLATFORM_H #define PLATFORM_H #include #include #include #include struct CharsetInfo{ int codepage; QByteArray name; QString language; bool enabled; explicit CharsetInfo(int codepage, const QByteArray& name, const QString& language, bool enabled); }; using PCharsetInfo = std::shared_ptr; class CharsetInfoManager: public QObject { Q_OBJECT public: explicit CharsetInfoManager(); QByteArray getDefaultSystemEncoding(); PCharsetInfo findCharsetByCodepage(int codepage); QStringList languageNames(); QList findCharsetsByLanguageName(const QString& languageName); private: QList mCodePages; }; using PCharsetInfoManager = std::shared_ptr; extern CharsetInfoManager* pCharsetInfoManager; #endif // PLATFORM_H