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 "article.h" 0010 #include "articleformatter.h" 0011 #include <GrantleeTheme/GenericFormatter> 0012 namespace Akregator 0013 { 0014 class Folder; 0015 class GrantleeViewFormatter : public GrantleeTheme::GenericFormatter 0016 { 0017 public: 0018 explicit GrantleeViewFormatter(const QString &htmlFileName, const QString &themePath, int deviceDpiY); 0019 ~GrantleeViewFormatter(); 0020 0021 [[nodiscard]] QString formatArticles(const QList<Article> &article, ArticleFormatter::IconOption icon); 0022 [[nodiscard]] QString formatFolder(Akregator::Folder *node); 0023 [[nodiscard]] QString formatFeed(Akregator::Feed *feed); 0024 0025 private: 0026 void addStandardObject(QVariantHash &grantleeObject) const; 0027 [[nodiscard]] QString sidebarCss() const; 0028 [[nodiscard]] int pointsToPixel(int pointSize) const; 0029 const QString mHtmlArticleFileName; 0030 const QString mDirectionString; 0031 const QString mGrantleeThemePath; 0032 const int mDeviceDpiY; 0033 }; 0034 }