diff options
| author | Tom Tanner <thosrtanner2@users.sourceforge.net> | 2015-03-19 16:48:21 +0000 |
|---|---|---|
| committer | Tom Tanner <thosrtanner2@users.sourceforge.net> | 2015-03-19 16:48:21 +0000 |
| commit | 771dde7771f39776afae2c9089fe250bd1e8128d (patch) | |
| tree | 686037255a338e7a7c49bc640cc06902b9ba8d50 /src/modinfo.cpp | |
| parent | a1c8e529f763ec664c5efc3d335781a474424a4a (diff) | |
| parent | c6758e47c875ffb0fccdd1a4e478f6a9593dc657 (diff) | |
Merge
Diffstat (limited to 'src/modinfo.cpp')
| -rw-r--r-- | src/modinfo.cpp | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/src/modinfo.cpp b/src/modinfo.cpp index c7d1101d..ce51ecc6 100644 --- a/src/modinfo.cpp +++ b/src/modinfo.cpp @@ -634,13 +634,14 @@ bool ModInfoRegular::downgradeAvailable() const void ModInfoRegular::nxmDescriptionAvailable(int, QVariant, QVariant resultData) { QVariantMap result = resultData.toMap(); - m_NewestVersion.parse(result["version"].toString()); - m_NexusDescription = result["description"].toString(); + setNewestVersion(VersionInfo(result["version"].toString())); + setNexusDescription(result["description"].toString()); + if ((m_EndorsedState != ENDORSED_NEVER) && (result.contains("voted_by_user"))) { - m_EndorsedState = result["voted_by_user"].toBool() ? ENDORSED_TRUE : ENDORSED_FALSE; + setEndorsedState(result["voted_by_user"].toBool() ? ENDORSED_TRUE : ENDORSED_FALSE); } m_LastNexusQuery = QDateTime::currentDateTime(); - m_MetaInfoChanged = true; + //m_MetaInfoChanged = true; saveMeta(); emit modDetailsUpdated(true); } @@ -774,14 +775,26 @@ void ModInfoRegular::setVersion(const VersionInfo &version) void ModInfoRegular::setNewestVersion(const VersionInfo &version) { - m_NewestVersion = version; - m_MetaInfoChanged = true; + if (version != m_NewestVersion) { + m_NewestVersion = version; + m_MetaInfoChanged = true; + } } void ModInfoRegular::setNexusDescription(const QString &description) { - m_NexusDescription = description; - m_MetaInfoChanged = true; + if (qHash(description) != qHash(m_NexusDescription)) { + m_NexusDescription = description; + m_MetaInfoChanged = true; + } +} + +void ModInfoRegular::setEndorsedState(EEndorsedState endorsedState) +{ + if (endorsedState != m_EndorsedState) { + m_EndorsedState = endorsedState; + m_MetaInfoChanged = true; + } } void ModInfoRegular::setInstallationFile(const QString &fileName) |
