File indexing completed on 2025-03-09 04:54:36
0001 /* 0002 SPDX-FileCopyrightText: 2015-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "messageviewer/headerstyleplugin.h" 0010 0011 #include <QVariant> 0012 0013 namespace MessageViewer 0014 { 0015 class GrantleeHeaderStyle; 0016 class DefaultGrantleeHeaderStylePlugin : public MessageViewer::HeaderStylePlugin 0017 { 0018 Q_OBJECT 0019 public: 0020 explicit DefaultGrantleeHeaderStylePlugin(QObject *parent = nullptr, const QList<QVariant> & = QList<QVariant>()); 0021 ~DefaultGrantleeHeaderStylePlugin() override; 0022 0023 [[nodiscard]] HeaderStyle *headerStyle() const override; 0024 [[nodiscard]] HeaderStrategy *headerStrategy() const override; 0025 [[nodiscard]] HeaderStyleInterface *createView(KActionMenu *menu, QActionGroup *actionGroup, KActionCollection *ac, QObject *parent = nullptr) override; 0026 [[nodiscard]] QString name() const override; 0027 0028 private: 0029 void initializePlugin(); 0030 GrantleeHeaderStyle *const mHeaderStyle; 0031 HeaderStrategy *const mHeaderStrategy; 0032 }; 0033 }