From 9163bfcc25b78477a75a153f2a75be30ad297c6a Mon Sep 17 00:00:00 2001 From: drw Date: Sun, 20 Apr 2003 23:58:21 +0000 Subject: Finally fixed it so that packages are not incorrectly marked as having an update available --- (limited to 'noncore/settings') diff --git a/noncore/settings/aqpkg/mainwin.cpp b/noncore/settings/aqpkg/mainwin.cpp index 6ea619c..fb40d52 100644 --- a/noncore/settings/aqpkg/mainwin.cpp +++ b/noncore/settings/aqpkg/mainwin.cpp @@ -639,8 +639,7 @@ void MainWindow :: serverSelected( int, bool raiseProgress ) // Apply show only new installed packages filter if ( showUpgradedPkgs ) { - if ( !package->isInstalled() || - compareVersions( package->getInstalledVersion(), package->getVersion() ) != 1 ) + if ( !package->isInstalled() || !package->getNewVersionAvailable() ) continue; } @@ -663,8 +662,7 @@ void MainWindow :: serverSelected( int, bool raiseProgress ) { // If a different version of package is available, show update available icon // Otherwise, show installed icon - if ( package->getVersion() != package->getInstalledVersion() && - compareVersions( package->getInstalledVersion(), package->getVersion() ) == 1) + if ( package->getNewVersionAvailable()) { item->setPixmap( 0, updatedIcon ); diff --git a/noncore/settings/aqpkg/package.cpp b/noncore/settings/aqpkg/package.cpp index 83e0706..3395870 100644 --- a/noncore/settings/aqpkg/package.cpp +++ b/noncore/settings/aqpkg/package.cpp @@ -50,6 +50,7 @@ Package::Package( char *name ) installedToRoot = false; installed = false; installedTo = 0; + differentVersionAvailable = false; } Package::~Package() @@ -89,7 +90,7 @@ void Package :: setLocalPackage( Package *p ) localPackage = p; if ( localPackage ) - if ( localPackage->getVersion() != getVersion() ) + if ( localPackage->getVersion() < getVersion() && !installed ) differentVersionAvailable = true; else differentVersionAvailable = false; @@ -100,7 +101,7 @@ void Package :: setVersion( const QString &v ) version = v; if ( localPackage ) - if ( localPackage->getVersion() != getVersion() ) + if ( localPackage->getVersion() < getVersion() && !installed ) differentVersionAvailable = true; else differentVersionAvailable = false; diff --git a/noncore/settings/aqpkg/package.h b/noncore/settings/aqpkg/package.h index f5a132f..110ae91 100644 --- a/noncore/settings/aqpkg/package.h +++ b/noncore/settings/aqpkg/package.h @@ -47,15 +47,16 @@ public: void setPackageSize( const QString &size ) { packageSize = size; } void setSection( const QString §) { section = sect; } - Package *getLocalPackage() { return localPackage; } - QString getPackageName() { return packageName; } - QString getVersion() { return version; } - QString getStatus() { return status; } - QString getDescription() { return description; } - QString getFilename() { return filename; } - QString getDependancies() { return dependancies; } - QString getPackageSize() { return packageSize; } - QString getSection() { return section; } + Package *getLocalPackage() { return localPackage; } + QString getPackageName() { return packageName; } + QString getVersion() { return version; } + QString getStatus() { return status; } + QString getDescription() { return description; } + QString getFilename() { return filename; } + QString getDependancies() { return dependancies; } + QString getPackageSize() { return packageSize; } + QString getSection() { return section; } + bool getNewVersionAvailable() { return differentVersionAvailable; } bool isInstalled(); bool isPackageStoredLocally() { return packageStoredLocally; } diff --git a/noncore/settings/aqpkg/server.cpp b/noncore/settings/aqpkg/server.cpp index 9a239a5..e2b8096 100644 --- a/noncore/settings/aqpkg/server.cpp +++ b/noncore/settings/aqpkg/server.cpp @@ -184,7 +184,7 @@ void Server :: readPackageFile( Server *local, bool clearAll, bool installingToR } else { - if (currPackage->getStatus().find( "deinstall" ) != -1 ) + if ( currPackage->isInstalled() ) currPackage->setInstalledTo( dest ); } } -- cgit v0.9.0.2