File indexing completed on 2024-05-05 05:13:11

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 "crashwidget/crashwidget.h"
0010 #include <QStackedWidget>
0011 namespace Akregator
0012 {
0013 class MainWidget;
0014 class AkregatorCentralWidget : public QStackedWidget
0015 {
0016     Q_OBJECT
0017 public:
0018     explicit AkregatorCentralWidget(QWidget *parent = nullptr);
0019     ~AkregatorCentralWidget() override;
0020 
0021     void needToRestoreCrashedSession();
0022 
0023     void setMainWidget(Akregator::MainWidget *mainWidget);
0024     [[nodiscard]] bool previousSessionCrashed() const;
0025 
0026 Q_SIGNALS:
0027     void restoreSession(Akregator::CrashWidget::CrashAction type);
0028 
0029 private:
0030     void slotRestoreSession(Akregator::CrashWidget::CrashAction type);
0031 
0032     Akregator::CrashWidget *const mCrashWidget;
0033     Akregator::MainWidget *mMainWidget = nullptr;
0034 };
0035 }