File indexing completed on 2024-12-22 04:45:37

0001 /*
0002    SPDX-FileCopyrightText: 2022-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "libruqolawidgets_private_export.h"
0010 #include <QTreeView>
0011 class RocketChatAccount;
0012 class LIBRUQOLAWIDGETS_TESTS_EXPORT OauthTreeView : public QTreeView
0013 {
0014     Q_OBJECT
0015 public:
0016     explicit OauthTreeView(RocketChatAccount *account, QWidget *parent = nullptr);
0017     ~OauthTreeView() override;
0018 
0019 Q_SIGNALS:
0020     void removeOauth(const QString &identifier);
0021     void oauthAdded(const QJsonObject &replyObject);
0022 
0023 private:
0024     LIBRUQOLAWIDGETS_NO_EXPORT void initialize();
0025     LIBRUQOLAWIDGETS_NO_EXPORT void removeClicked(const QString &identifier);
0026     LIBRUQOLAWIDGETS_NO_EXPORT void slotCustomContextMenuRequested(const QPoint &pos);
0027     LIBRUQOLAWIDGETS_NO_EXPORT void addClicked();
0028     LIBRUQOLAWIDGETS_NO_EXPORT void editClicked(const QModelIndex &index);
0029     RocketChatAccount *const mRocketChatAccount;
0030 };