File indexing completed on 2024-04-21 05:10:33
0001 /* 0002 This file is part of Akregator. 0003 0004 SPDX-FileCopyrightText: 2004 Stanislav Karchebny <Stanislav.Karchebny@kdemail.net> 0005 0006 SPDX-License-Identifier: GPL-2.0-or-later WITH Qt-Commercial-exception-1.0 0007 */ 0008 0009 #pragma once 0010 0011 #include "ui_addfeedwidgetbase.h" 0012 0013 #include <QDialog> 0014 0015 #include <QWidget> 0016 class QPushButton; 0017 namespace Akregator 0018 { 0019 class Feed; 0020 0021 class AddFeedWidget : public QWidget, public Ui::AddFeedWidgetBase 0022 { 0023 Q_OBJECT 0024 public: 0025 explicit AddFeedWidget(QWidget *parent = nullptr); 0026 ~AddFeedWidget() override; 0027 }; 0028 0029 class AddFeedDialog : public QDialog 0030 { 0031 Q_OBJECT 0032 public: 0033 explicit AddFeedDialog(QWidget *parent = nullptr, const QString &name = QString()); 0034 ~AddFeedDialog() override; 0035 0036 [[nodiscard]] QSize sizeHint() const override; 0037 0038 void setUrl(const QString &t); 0039 Feed *feed() const; 0040 0041 public Q_SLOTS: 0042 void accept() override; 0043 0044 void fetchCompleted(Akregator::Feed *); 0045 void fetchDiscovery(Akregator::Feed *); 0046 void fetchError(Akregator::Feed *); 0047 0048 private: 0049 void textChanged(const QString &); 0050 QString mFeedUrl; 0051 AddFeedWidget *widget = nullptr; 0052 Feed *m_feed = nullptr; 0053 QPushButton *mOkButton = nullptr; 0054 }; 0055 } // namespace Akregator