File indexing completed on 2024-05-12 16:58:59
0001 /* 0002 * SPDX-FileCopyrightText: 2011 Jonathan Thomas <echidnaman@kubuntu.org> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 #pragma once 0008 0009 // Qt includes 0010 #include "discovercommon_export.h" 0011 #include "resources/AbstractBackendUpdater.h" 0012 #include <QSet> 0013 #include <QString> 0014 0015 #include <QIcon> 0016 0017 class AbstractResource; 0018 class DISCOVERCOMMON_EXPORT UpdateItem 0019 { 0020 public: 0021 explicit UpdateItem(AbstractResource *app); 0022 0023 ~UpdateItem(); 0024 0025 void setProgress(qreal progress); 0026 qreal progress() const; 0027 0028 AbstractBackendUpdater::State state() const 0029 { 0030 return m_state; 0031 } 0032 void setState(AbstractBackendUpdater::State state) 0033 { 0034 m_state = state; 0035 } 0036 0037 QString changelog() const; 0038 void setChangelog(const QString &changelog); 0039 0040 AbstractResource *app() const; 0041 QString name() const; 0042 QVariant icon() const; 0043 qint64 size() const; 0044 Qt::CheckState checked() const; 0045 0046 void setExtended(bool extended) 0047 { 0048 m_isExtended = extended; 0049 } 0050 AbstractResource *resource() const 0051 { 0052 return m_app; 0053 } 0054 bool isVisible() const 0055 { 0056 return m_visible; 0057 } 0058 bool isExtended() const 0059 { 0060 return m_isExtended; 0061 } 0062 void setVisible(bool visible) 0063 { 0064 m_visible = visible; 0065 } 0066 0067 private: 0068 AbstractResource *const m_app; 0069 0070 const QString m_categoryName; 0071 const QIcon m_categoryIcon; 0072 qreal m_progress = 0.; 0073 bool m_visible = true; 0074 AbstractBackendUpdater::State m_state = AbstractBackendUpdater::None; 0075 QString m_changelog; 0076 bool m_isExtended = false; 0077 };