1 #ifndef TEXTEMOJIWRAPPER_H 2 #define TEXTEMOJIWRAPPER_H 3 4 #include <QObject> 5 #include <QQuickTextDocument> 6 7 class Emojis; 8 class TextEmojiWrapperPrivate; 9 class TextEmojiWrapper : public QObject 10 { 11 Q_OBJECT 12 Q_PROPERTY(QQuickTextDocument* textDocument READ textDocument WRITE setTextDocument NOTIFY textDocumentChanged) 13 Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged) 14 Q_PROPERTY(Emojis* emojisItem READ emojisItem WRITE setEmojisItem NOTIFY emojisItemChanged) 15 16 public: 17 TextEmojiWrapper(QObject *parent = 0); 18 ~TextEmojiWrapper(); 19 20 void setTextDocument(QQuickTextDocument *doc); 21 QQuickTextDocument *textDocument() const; 22 23 void setEmojisItem(Emojis *emojisItem); 24 Emojis *emojisItem() const; 25 26 void setText(const QString &text); 27 QString text() const; 28 29 public slots: 30 void refresh(); 31 32 signals: 33 void textDocumentChanged(); 34 void textChanged(); 35 void emojisItemChanged(); 36 37 private: 38 TextEmojiWrapperPrivate *p; 39 }; 40 41 #endif // TEXTEMOJIWRAPPER_H 42