30 #include <QSharedData>
31 #include <QStringList>
35 class EmoticonsProvider;
36 struct EmoticonsThemeData;
37 struct EmoticonsProviderPrivate;
47 Q_DECLARE_FLAGS(ParseMode, ParseModeFlag)
58 inline Token() : type(Undefined) {}
59 inline Token(
const QString &t) : type(Text), text(t) {}
60 inline Token(
const QString &t,
const QString &p,
const QString &h)
61 : type(Image), text(t), imgPath(p), imgHtmlCode(h) {}
76 QHash<QString, QStringList> emoticonsMap()
const;
77 QStringList emoticonsIndexes()
const;
78 QString themeName()
const;
82 QString parseEmoticons(
const QString &text, ParseMode mode = DefaultParse,
const QStringList &exclude = QStringList());
83 QList<Token> tokenize(
const QString &text, ParseMode mode = DefaultParse);
85 QExplicitlySharedDataPointer<EmoticonsThemeData> p;
96 bool operator < (
const Emoticon &e)
const {
return matchText.length() > e.
matchText.length(); }
104 QHash<QString, QStringList> emoticonsMap()
const;
105 QStringList emoticonsIndexes()
const;
106 QHash<QChar, QList<Emoticon> > emoticonsByChar()
const;
107 virtual QString themeName()
const;
108 virtual bool saveTheme();
110 virtual bool addEmoticon(
const QString &imgPath,
const QStringList &codes);
111 virtual bool removeEmoticon(
const QStringList &codes);
113 void clearEmoticons();
114 void appendEmoticon(
const QString &imgPath,
const QStringList &codes);
115 void removeEmoticon(
const QString &imgPath,
const QStringList &codes);
117 QScopedPointer<EmoticonsProviderPrivate> p;
139 Q_DECLARE_OPERATORS_FOR_FLAGS(qutim_sdk_0_3::EmoticonsTheme::ParseMode)
141 #endif // EMOTICONS_H
TokenType
Definition: emoticons.h:49
QString imgPath
Definition: emoticons.h:64
QString matchText
Definition: emoticons.h:97
#define LIBQUTIM_EXPORT
Definition: libqutim_global.h:45
QString matchTextEscaped
Definition: emoticons.h:98
Definition: abstractsearchrequest.h:33
QString picHTMLCode
Definition: emoticons.h:100
Q_DECL_IMPORT EmoticonsTheme theme()
Token(const QString &t)
Definition: emoticons.h:59
Definition: emoticons.h:51
Definition: emoticons.h:52
QString text
Definition: emoticons.h:63
Definition: emoticons.h:120
QString imgHtmlCode
Definition: emoticons.h:65
Q_DECL_IMPORT QString currentThemeName()
TokenType type
Definition: emoticons.h:62
Definition: emoticons.h:88
Token()
Definition: emoticons.h:58
QString picPath
Definition: emoticons.h:99
Emoticon()
Definition: emoticons.h:94
Definition: emoticons.h:39
Definition: emoticons.h:56
Q_DECL_IMPORT QStringList themeList()
Q_DECL_IMPORT void setTheme(const QString &name)
Definition: emoticons.h:92
ParseModeFlag
Definition: emoticons.h:42
Token(const QString &t, const QString &p, const QString &h)
Definition: emoticons.h:60
Q_DECL_IMPORT EmoticonsTheme theme(const QString &name)