#ifndef EMOJIS_H #define EMOJIS_H #include "concurrentmap.h" #include "lazyloadedimage.h" #include #include #include #include class Emojis { public: static void parseEmojis( std::vector> &vector, const QString &text); static void loadEmojis(); static QString replaceShortCodes(const QString &text); struct EmojiData { QString value; QString code; }; private: static QRegularExpression findShortCodesRegex; static QMap shortCodeToEmoji; static QMap emojiToShortCode; static QMap> firstEmojiChars; static ConcurrentMap imageCache; Emojis() { } }; #endif // EMOJIS_H