KTextAddons

emojimodelmanager.h
1/*
2 SPDX-FileCopyrightText: 2021-2024 Laurent Montel <montel@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.0-or-later
5*/
6#pragma once
7
8#include "textemoticonscore_export.h"
9#include <QObject>
10#include <memory>
11namespace TextEmoticonsCore
12{
13class EmojiModel;
14class CustomEmojiIconManager;
15/**
16 * @brief The EmojiModelManager class
17 * @author Laurent Montel <montel@kde.org>
18 */
19class TEXTEMOTICONSCORE_EXPORT EmojiModelManager : public QObject
20{
21 Q_OBJECT
22
23 Q_PROPERTY(TextEmoticonsCore::EmojiModel *emojiModel READ emojiModel CONSTANT)
24
25public:
26 explicit EmojiModelManager(QObject *parent = nullptr);
27 ~EmojiModelManager() override;
28
29 static EmojiModelManager *self();
30 [[nodiscard]] TextEmoticonsCore::EmojiModel *emojiModel() const;
31
32 [[nodiscard]] const QStringList &recentIdentifier() const;
33 void setRecentIdentifier(const QStringList &newRecentIdentifier);
34 void addIdentifier(const QString &identifier);
35
36 [[nodiscard]] TextEmoticonsCore::CustomEmojiIconManager *customEmojiIconManager() const;
37 void setCustomEmojiIconManager(TextEmoticonsCore::CustomEmojiIconManager *newCustomEmojiIconManager);
38
39 [[nodiscard]] QStringList excludeEmoticons() const;
40 void setExcludeEmoticons(const QStringList &emoticons);
41
42Q_SIGNALS:
43 void usedIdentifierChanged(const QStringList &lst);
44 void excludeEmoticonsChanged();
45
46private:
47 class EmojiModelManagerPrivate;
48 std::unique_ptr<EmojiModelManagerPrivate> const d;
49};
50}
The EmojiModelManager class.
The EmojiModel class.
Definition emojimodel.h:21
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 4 2024 16:29:59 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.