File indexing completed on 2024-05-12 05:12:55
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 "frame.h" 0010 0011 namespace Akregator 0012 { 0013 class ArticleViewerWidget; 0014 class AKREGATOR_EXPORT MainFrame : public Frame 0015 { 0016 Q_OBJECT 0017 0018 public: 0019 explicit MainFrame(QWidget *parent, QWidget *widget); 0020 ~MainFrame() override; 0021 0022 [[nodiscard]] QUrl url() const override; 0023 0024 [[nodiscard]] bool openUrl(const OpenUrlRequest &) override 0025 { 0026 return false; 0027 } 0028 0029 void setArticleViewer(Akregator::ArticleViewerWidget *articleViewer); 0030 0031 [[nodiscard]] qreal zoomFactor() const override; 0032 0033 public Q_SLOTS: 0034 void slotCopyLinkAsInFrame(int frameId); 0035 void slotSaveLinkAsInFrame(int frameId); 0036 void slotZoomChangeInFrame(int frameId, qreal value); 0037 void slotCopyInFrame(int frameId); 0038 void slotPrintInFrame(int frameId); 0039 void slotPrintPreviewInFrame(int frameId); 0040 void slotTextToSpeechInFrame(int frameId); 0041 void slotFindTextInFrame(int frameId); 0042 void slotCopyImageLocationInFrame(int frameId); 0043 void slotSaveImageOnDiskInFrame(int frameId); 0044 void slotMute(int frameId, bool mute); 0045 0046 private: 0047 Akregator::ArticleViewerWidget *mArticleViewer = nullptr; 0048 }; 0049 } // namespace Akregator