KTextAddons

unicodeemoticon.h
1/*
2 SPDX-FileCopyrightText: 2018-2025 Laurent Montel <montel@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.0-or-later
5*/
6
7#pragma once
8
9#include "textemoticonscore_export.h"
10#include <QDebug>
11#include <QString>
12namespace TextEmoticonsCore
13{
14/**
15 * @brief The UnicodeEmoticon class
16 * @author Laurent Montel <montel@kde.org>
17 */
18class TEXTEMOTICONSCORE_EXPORT UnicodeEmoticon
19{
20 Q_GADGET
21public:
22 UnicodeEmoticon();
23
24 [[nodiscard]] QString identifier() const;
25 void setIdentifier(const QString &identifier);
26
27 [[nodiscard]] QString unicode() const;
28 [[nodiscard]] QString unicodeDisplay() const;
29 void setUnicode(const QString &unicode);
30
31 [[nodiscard]] QString category() const;
32 void setCategory(const QString &category);
33
34 [[nodiscard]] QStringList aliases() const;
35 void setAliases(const QStringList &aliases);
36
37 [[nodiscard]] bool hasEmoji(const QString &identifier) const;
38
39 [[nodiscard]] bool isValid() const;
40
41 [[nodiscard]] int order() const;
42 void setOrder(int order);
43
44 [[nodiscard]] QString key() const;
45 void setKey(const QString &key);
46
47 [[nodiscard]] bool operator==(const UnicodeEmoticon &other) const;
48
49 void setDiversityChildren(bool b);
50 [[nodiscard]] bool diversityChildren() const;
51
52private:
53 QStringList mAliases;
54 QString mIdentifier;
55 QString mUnicode;
56 QString mCategory;
57 QString mKey;
58 mutable QString mCachedHtml;
59 int mOrder = -1;
60 bool mHasDiversityChildren = false;
61};
62}
63Q_DECLARE_METATYPE(TextEmoticonsCore::UnicodeEmoticon)
64Q_DECLARE_TYPEINFO(TextEmoticonsCore::UnicodeEmoticon, Q_MOVABLE_TYPE);
65TEXTEMOTICONSCORE_EXPORT QDebug operator<<(QDebug d, const TextEmoticonsCore::UnicodeEmoticon &t);
The UnicodeEmoticon class.
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Feb 21 2025 11:46:43 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.