File indexing completed on 2024-12-22 04:13:04
0001 /* 0002 * SPDX-FileCopyrightText: 2019 Anna Medonosova <anna.medonosova@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 0008 #ifndef KISMANUALUPDATER_H 0009 #define KISMANUALUPDATER_H 0010 0011 #include <QScopedPointer> 0012 0013 #include <KisUpdaterBase.h> 0014 #include <KisMultiFeedRSSModel.h> 0015 #include "kritaui_export.h" 0016 0017 0018 class KRITAUI_EXPORT KisManualUpdater : public KisUpdaterBase 0019 { 0020 Q_OBJECT 0021 0022 public: 0023 KisManualUpdater(); 0024 /** 0025 * @brief KisManualUpdater - constructor for testing 0026 * @param rssModel 0027 * @param currentVersion 0028 */ 0029 explicit KisManualUpdater(MultiFeedRssModel* rssModel, QString& currentVersion); 0030 0031 void checkForUpdate() override; 0032 0033 // this updater can only check for updates 0034 /** 0035 * @brief the manual updater can only check for available versions 0036 * @return false 0037 */ 0038 inline bool hasUpdateCapability() override { return false; } 0039 inline void doUpdate() override { return; } 0040 0041 public Q_SLOTS: 0042 void rssDataChanged(); 0043 0044 private: 0045 bool availableVersionIsHigher(QString currentVersion, QString availableVersion); 0046 0047 QScopedPointer<MultiFeedRssModel> m_rssModel; 0048 QString m_currentVersion; 0049 0050 friend class KisManualUpdaterTest; 0051 }; 0052 0053 #endif // KISMANUALUPDATER_H