KTextAddons

emojiproxymodel.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 <QSortFilterProxyModel>
10#include <memory>
11namespace TextEmoticonsCore
12{
13/**
14 * @brief The EmojiProxyModel class
15 * @author Laurent Montel <montel@kde.org>
16 */
17class TEXTEMOTICONSCORE_EXPORT EmojiProxyModel : public QSortFilterProxyModel
18{
19 Q_OBJECT
20public:
21 explicit EmojiProxyModel(QObject *parent = nullptr);
22 ~EmojiProxyModel() override;
23 [[nodiscard]] QString category() const;
24 void setCategory(const QString &newCategories);
25
26 [[nodiscard]] QStringList recentEmoticons() const;
27 void setRecentEmoticons(const QStringList &newRecentEmoticons);
28
29 [[nodiscard]] QString searchIdentifier() const;
30 void setSearchIdentifier(const QString &newSearchIdentifier);
31
32protected:
33 [[nodiscard]] bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override;
34 [[nodiscard]] bool lessThan(const QModelIndex &left, const QModelIndex &right) const override;
35
36private:
37 class EmojiProxyModelPrivate;
38 std::unique_ptr<EmojiProxyModelPrivate> const d;
39};
40}
The EmojiProxyModel class.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Jul 26 2024 11:51:28 by doxygen 1.11.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.