You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

29 lines
665 B

#pragma once
#include <QString>
#include <QVector>
#include <QHash>
enum class EmojiType { Unicode, Image, Animation };
struct EmojiData {
EmojiType type = EmojiType::Unicode;
QString unicode;
QString shortcode;
QString imagePath;
QString animPath;
static EmojiData unicodeEmoji(const QString &u, const QString &s);
static EmojiData animatedEmoji(const QString &u, const QString &s, const QString &animPath);
};
struct EmojiCategory {
QString name;
QVector<EmojiData> items;
};
QVector<EmojiCategory> builtinEmojiSet();
extern QHash<QString, QString> g_animatedEmojiMap;
int detectEmojiOnly(const QString &text);