0.7.1
[fapman] / package.h
index fa0eafb..1e0c108 100644 (file)
--- a/package.h
+++ b/package.h
@@ -34,8 +34,9 @@ public:
        // the order must match status filter strings
        enum packageStatus { PkgStatUnknown, PkgStatNotInstalled, PkgStatUpgradeable, PkgStatInstalled };
 
-       Package(QByteArray name_, AAptInterface* apt_);
-       ~Package();
+       explicit Package(QByteArray name_, AAptInterface* apt_);
+       virtual ~Package();
+
        inline void setName(QByteArray n_) { iName=n_; }
        inline void setMaemoDisplayName(QByteArray n_) { iMaemoDisplayName=n_; }
        inline void setInstalled(bool i_) { iIsInstalled=i_; }
@@ -61,49 +62,55 @@ public:
        inline void appendRecommends(QByteArray line_) { iRecommends << line_.split(','); }
        inline void appendSuggests(QByteArray line_) { iSuggests << line_.split(','); }
        inline void appendUpgradeDescription(QByteArray d_) { iUpgradeDescription.append(d_); }
+       inline void setPinned(bool p_) { iPinned=p_; }
+       inline void setMaintainer(QByteArray m_) { iMaintainer = m_; }
 
        void convertIcon();
 
-       inline QString name() { return iName; }
-       inline QString maemoDisplayName() { return QString::fromUtf8(iMaemoDisplayName); }
-       QString displayName();
-       inline bool isInstalled() { return iIsInstalled; }
-       inline bool isMarkedForOperation() { return iMarkedForOperation; }
-       inline operation markedOperation() { return iMarkedOperation; }
-       inline QString version() { return iVersion; }
-       inline QString descShort() { return QString::fromUtf8(iDescriptionShort); }
-       inline QString descLong() { return QString::fromUtf8(iDescriptionLong); }
-       inline QString section() { return iSection; }
-       inline int size() { return iSize; }
-       inline int installedSize() { return iInstalledSize; }
-       inline QPixmap* icon() { return iIcon; }
-       bool hasIconData();
-       bool isUpgradeable();
-       QString upgradeableVersion();
-       Package* availablePackage();
+       inline QString name() const { return iName; }
+       inline QString maemoDisplayName() const { return QString::fromUtf8(iMaemoDisplayName); }
+       QString displayName() const;
+       inline bool isInstalled() const { return iIsInstalled; }
+       inline bool isMarkedForOperation() const { return iMarkedForOperation; }
+       inline operation markedOperation() const { return iMarkedOperation; }
+       inline QString version() const { return iVersion; }
+       inline QString descShort() const { return QString::fromUtf8(iDescriptionShort); }
+       inline QString descLong() const { return QString::fromUtf8(iDescriptionLong); }
+       inline QString section() const { return iSection; }
+       inline int size() const { return iSize; }
+       inline int installedSize() const { return iInstalledSize; }
+       inline QPixmap* icon() const { return iIcon; }
+       bool hasIconData() const;
+       bool isUpgradeable() const;
+       QString upgradeableVersion() const;
+       Package* availablePackage() const;
        packageStatus status();
-       QString fileName();
-       inline QStringList fullFileNames() { return iFullFileNames; }
-       inline QDateTime date() { return iDate; }
-       inline QList<Repository*> repositories() { return iRepositories; }
-       inline BlacklistSelect::blackList blacklisted() { return iBlacklist; }
-       inline bool isBlacklisted() { if(iBlacklist==BlacklistSelect::BlacklistNone) return false; else return true; }
-       inline QString upgradeDescription() { return QString::fromUtf8(iUpgradeDescription); }
-       inline QList<QByteArray> depends() { return iDepends; }
-       inline QList<QByteArray> conflicts() { return iConflicts; }
-       inline QList<QByteArray> preDepends() { return iPreDepends; }
-       inline QList<QByteArray> provides() { return iProvides; }
-       inline QList<QByteArray> replaces() { return iReplaces; }
-       inline QList<QByteArray> breaks() { return iBreaks; }
-       inline QList<QByteArray> recommends() { return iRecommends; }
-       inline QList<QByteArray> suggests() { return iSuggests; }
-
-       QStringList checkConflicts_RichText();
+       QString fileName() const;
+       inline QStringList fullFileNames() const { return iFullFileNames; }
+       inline QDateTime date() const { return iDate; }
+       inline QList<const Repository*> repositories() const { return iRepositories; }
+       inline BlacklistSelect::blackList blacklisted() const { return iBlacklist; }
+       inline bool isBlacklisted() const { if(iBlacklist==BlacklistSelect::BlacklistNone) return false; else return true; }
+       inline QString upgradeDescription() const { return QString::fromUtf8(iUpgradeDescription); }
+       inline QList<QByteArray> depends() const { return iDepends; }
+       inline QList<QByteArray> conflicts() const { return iConflicts; }
+       inline QList<QByteArray> preDepends() const { return iPreDepends; }
+       inline QList<QByteArray> provides() const { return iProvides; }
+       inline QList<QByteArray> replaces() const { return iReplaces; }
+       inline QList<QByteArray> breaks() const { return iBreaks; }
+       inline QList<QByteArray> recommends() const { return iRecommends; }
+       inline QList<QByteArray> suggests() const { return iSuggests; }
+       inline bool isPinned() const { return iPinned; }
+       QString maintainerRichText() const;
+
+       QStringList checkConflicts_RichText() const;
 
        static bool versionCompare(QString isNewer, QString compare);
        static QStringList toTrimmedRichTextList(QList<QByteArray> list_in);
 
 private:
+       Package(const Package& old);
+       Package operator= (const Package& old);
 
        static bool versionConflicts(QString conflictVer, QString operVer);
 
@@ -123,9 +130,10 @@ private:
        operation iMarkedOperation;
        QStringList iFullFileNames;
        QDateTime iDate;
-       QList<Repository*> iRepositories;
+       QList<const Repository*> iRepositories;
        BlacklistSelect::blackList iBlacklist;
        QByteArray iUpgradeDescription;
+       QByteArray iMaintainer;
 
        QByteArray iIconData;
        QPixmap* iIcon;
@@ -138,6 +146,8 @@ private:
        QList<QByteArray> iBreaks;
        QList<QByteArray> iRecommends;
        QList<QByteArray> iSuggests;
+
+       bool iPinned;
 };
 
 #endif // PACKAGE_H