File indexing completed on 2024-05-12 05:12:54
0001 /* 0002 SPDX-FileCopyrightText: 2016-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "akregator_export.h" 0010 #include "articleformatter.h" 0011 class QPaintDevice; 0012 namespace Akregator 0013 { 0014 class GrantleeViewFormatter; 0015 class AKREGATOR_EXPORT DefaultNormalViewFormatter : public ArticleFormatter 0016 { 0017 public: 0018 explicit DefaultNormalViewFormatter(const QString &grantleeDirectory, QPaintDevice *device = nullptr); 0019 ~DefaultNormalViewFormatter() override; 0020 0021 [[nodiscard]] QString formatArticles(const QList<Article> &article, IconOption option) const override; 0022 0023 [[nodiscard]] QString formatSummary(TreeNode *node) const override; 0024 0025 private: 0026 DefaultNormalViewFormatter() = delete; 0027 QString m_DefaultThemePath; 0028 class SummaryVisitor; 0029 SummaryVisitor *m_summaryVisitor = nullptr; 0030 GrantleeViewFormatter *mGrantleeViewFormatter = nullptr; 0031 }; 0032 }