EmojiPtr FlatTextarea::getSingleEmoji() const { QString text; QTextFragment fragment; getSingleEmojiFragment(text, fragment); if (!text.isEmpty()) { QTextCharFormat format = fragment.charFormat(); return emojiFromUrl(static_cast<const QTextImageFormat*>(&format)->name()); } return 0; }
EmojiPtr FlatTextarea::getSingleEmoji() const { QString text; QTextFragment fragment; getSingleEmojiFragment(text, fragment); if (!text.isEmpty()) { QTextCharFormat format = fragment.charFormat(); QString imageName = static_cast<const QTextImageFormat*>(&format)->name(); return getEmoji(imageName.mid(8).toUInt(0, 16)); } return 0; }
void FlatTextarea::removeSingleEmoji() { QString text; QTextFragment fragment; getSingleEmojiFragment(text, fragment); if (!text.isEmpty()) { QTextCursor t(textCursor()); t.setPosition(fragment.position()); t.setPosition(fragment.position() + fragment.length(), QTextCursor::KeepAnchor); t.removeSelectedText(); setTextCursor(t); } }
EmojiPtr FlatTextarea::getSingleEmoji() const { QString text; QTextFragment fragment; getSingleEmojiFragment(text, fragment); if (!text.isEmpty()) { QTextCharFormat format = fragment.charFormat(); QString imageName = static_cast<QTextImageFormat*>(&format)->name(); if (imageName.startsWith(qstr("emoji://e."))) { return emojiFromUrl(imageName); } } return 0; }