Refactorr.
This commit is contained in:
parent
97f8863a0a
commit
a3c5bc0548
9 changed files with 41 additions and 15 deletions
|
@ -27,10 +27,9 @@
|
|||
#include <QTimer>
|
||||
|
||||
|
||||
FeedsProxyModel::FeedsProxyModel(QObject *parent)
|
||||
: QSortFilterProxyModel(parent), m_selectedItem(nullptr), m_showUnreadOnly(false), m_hiddenIndices(QList<QPair<int,QModelIndex> >()) {
|
||||
m_sourceModel = new FeedsModel(this);
|
||||
|
||||
FeedsProxyModel::FeedsProxyModel(FeedsModel *source_model, QObject *parent)
|
||||
: QSortFilterProxyModel(parent), m_sourceModel(source_model), m_selectedItem(nullptr),
|
||||
m_showUnreadOnly(false), m_hiddenIndices(QList<QPair<int,QModelIndex> >()) {
|
||||
setObjectName(QSL("FeedsProxyModel"));
|
||||
setSortRole(Qt::EditRole);
|
||||
setSortCaseSensitivity(Qt::CaseInsensitive);
|
||||
|
|
|
@ -29,7 +29,7 @@ class FeedsProxyModel : public QSortFilterProxyModel {
|
|||
|
||||
public:
|
||||
// Constructors and destructors.
|
||||
explicit FeedsProxyModel(QObject *parent = 0);
|
||||
explicit FeedsProxyModel(FeedsModel *source_model, QObject *parent = 0);
|
||||
virtual ~FeedsProxyModel();
|
||||
|
||||
// Access to the source model.
|
||||
|
|
|
@ -20,9 +20,8 @@
|
|||
#include "core/messagesmodel.h"
|
||||
|
||||
|
||||
MessagesProxyModel::MessagesProxyModel(QObject *parent)
|
||||
: QSortFilterProxyModel(parent) {
|
||||
m_sourceModel = new MessagesModel(this);
|
||||
MessagesProxyModel::MessagesProxyModel(MessagesModel *source_model, QObject *parent)
|
||||
: QSortFilterProxyModel(parent), m_sourceModel(source_model) {
|
||||
|
||||
setObjectName(QSL("MessagesProxyModel"));
|
||||
setSortRole(Qt::EditRole);
|
||||
|
|
|
@ -28,7 +28,7 @@ class MessagesProxyModel : public QSortFilterProxyModel {
|
|||
|
||||
public:
|
||||
// Constructors and destructors.
|
||||
explicit MessagesProxyModel(QObject *parent = 0);
|
||||
explicit MessagesProxyModel(MessagesModel *source_model, QObject *parent = 0);
|
||||
virtual ~MessagesProxyModel();
|
||||
|
||||
// Source model getter.
|
||||
|
|
|
@ -50,8 +50,8 @@ FeedsView::FeedsView(QWidget *parent)
|
|||
setObjectName(QSL("FeedsView"));
|
||||
|
||||
// Allocate models.
|
||||
m_proxyModel = new FeedsProxyModel(this);
|
||||
m_sourceModel = m_proxyModel->sourceModel();
|
||||
m_sourceModel = new FeedsModel(this);
|
||||
m_proxyModel = new FeedsProxyModel(m_sourceModel, this);
|
||||
|
||||
// Connections.
|
||||
connect(m_sourceModel, SIGNAL(requireItemValidationAfterDragDrop(QModelIndex)), this, SLOT(validateItemAfterDragDrop(QModelIndex)));
|
||||
|
|
|
@ -38,8 +38,8 @@ MessagesView::MessagesView(QWidget *parent)
|
|||
m_contextMenu(nullptr),
|
||||
m_columnsAdjusted(false),
|
||||
m_batchUnreadSwitch(false) {
|
||||
m_proxyModel = new MessagesProxyModel(this);
|
||||
m_sourceModel = m_proxyModel->sourceModel();
|
||||
m_sourceModel = new MessagesModel(this);
|
||||
m_proxyModel = new MessagesProxyModel(m_sourceModel, this);
|
||||
|
||||
// Forward count changes to the view.
|
||||
createConnections();
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include "miscellaneous/databasefactory.h"
|
||||
#include "miscellaneous/debugging.h"
|
||||
#include "miscellaneous/iconfactory.h"
|
||||
#include "miscellaneous/feedreader.h"
|
||||
#include "dynamic-shortcuts/dynamicshortcuts.h"
|
||||
#include "gui/dialogs/formmain.h"
|
||||
#include "gui/feedmessageviewer.h"
|
||||
|
@ -48,7 +49,8 @@ int main(int argc, char *argv[]) {
|
|||
qDebug("Usage: rssguard [OPTIONS]\n\n"
|
||||
"Option\t\tGNU long option\t\tMeaning\n"
|
||||
"-h\t\t--help\t\t\tDisplays this help.\n"
|
||||
"-c\t\t--cron\t\t\tStarts the application without GUI and will regularly update configured feeds.");
|
||||
"-c\t\t--cron\t\t\tStarts the application without GUI and will regularly update configured feeds. **\n\n"
|
||||
"** ");
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
@ -74,6 +76,8 @@ int main(int argc, char *argv[]) {
|
|||
Application application(APP_LOW_NAME, run_minimal_without_gui, argc, argv);
|
||||
qDebug("Instantiated Application class.");
|
||||
|
||||
application.feedReader()->start();
|
||||
|
||||
// Check if another instance is running.
|
||||
if (application.sendMessage((QStringList() << APP_IS_RUNNING << application.arguments().mid(1)).join(ARGUMENTS_LIST_SEPARATOR))) {
|
||||
qWarning("Another instance of the application is already running. Notifying it.");
|
||||
|
|
|
@ -21,6 +21,12 @@
|
|||
#include "services/owncloud/owncloudserviceentrypoint.h"
|
||||
#include "services/tt-rss/ttrssserviceentrypoint.h"
|
||||
|
||||
#include "core/feedsmodel.h"
|
||||
#include "core/feedsproxymodel.h"
|
||||
#include "core/messagesmodel.h"
|
||||
#include "core/messagesproxymodel.h"
|
||||
#include "core/feeddownloader.h"
|
||||
|
||||
|
||||
FeedReader::FeedReader(QObject *parent) : QObject(parent), m_feedServices(QList<ServiceEntryPoint*>()) {
|
||||
}
|
||||
|
@ -54,9 +60,21 @@ MessagesModel *FeedReader::messagesModel() const {
|
|||
}
|
||||
|
||||
void FeedReader::start() {
|
||||
|
||||
m_feedDownloader = new FeedDownloader(this);
|
||||
m_feedsModel = new FeedsModel(this);
|
||||
m_feedProxyModel = new FeedsProxyModel(m_feedsModel, this);
|
||||
m_messagesModel = new MessagesModel(this);
|
||||
m_messagesProxyModel = new MessagesProxyModel(m_messagesModel, this);
|
||||
}
|
||||
|
||||
void FeedReader::stop() {
|
||||
|
||||
}
|
||||
|
||||
MessagesProxyModel *FeedReader::messagesProxyModel() const {
|
||||
return m_messagesProxyModel;
|
||||
}
|
||||
|
||||
FeedsProxyModel *FeedReader::feedProxyModel() const {
|
||||
return m_feedProxyModel;
|
||||
}
|
||||
|
|
|
@ -24,6 +24,8 @@
|
|||
class FeedDownloader;
|
||||
class FeedsModel;
|
||||
class MessagesModel;
|
||||
class MessagesProxyModel;
|
||||
class FeedsProxyModel;
|
||||
class ServiceEntryPoint;
|
||||
|
||||
class FeedReader : public QObject {
|
||||
|
@ -40,6 +42,8 @@ class FeedReader : public QObject {
|
|||
FeedDownloader *feedDownloader() const;
|
||||
FeedsModel *feedsModel() const;
|
||||
MessagesModel *messagesModel() const;
|
||||
FeedsProxyModel *feedProxyModel() const;
|
||||
MessagesProxyModel *messagesProxyModel() const;
|
||||
|
||||
public slots:
|
||||
void start();
|
||||
|
@ -50,7 +54,9 @@ class FeedReader : public QObject {
|
|||
|
||||
FeedDownloader *m_feedDownloader;
|
||||
FeedsModel *m_feedsModel;
|
||||
FeedsProxyModel *m_feedProxyModel;
|
||||
MessagesModel *m_messagesModel;
|
||||
MessagesProxyModel *m_messagesProxyModel;
|
||||
};
|
||||
|
||||
#endif // FEEDREADER_H
|
||||
|
|
Loading…
Add table
Reference in a new issue