summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/aqpkg/networkpkgmgr.cpp21
1 files changed, 17 insertions, 4 deletions
diff --git a/noncore/settings/aqpkg/networkpkgmgr.cpp b/noncore/settings/aqpkg/networkpkgmgr.cpp
index dee834e..ccce401 100644
--- a/noncore/settings/aqpkg/networkpkgmgr.cpp
+++ b/noncore/settings/aqpkg/networkpkgmgr.cpp
@@ -359,12 +359,13 @@ void NetworkPackageManager :: upgradePackages()
}
}
void NetworkPackageManager :: downloadPackage()
{
+ bool doUpdate = true;
if ( download->text() == "Download" )
{
// First, write out ipkg_conf file so that ipkg can use it
dataMgr->writeOutIpkgConf();
// Display dialog to user asking where to download the files to
@@ -417,12 +418,13 @@ void NetworkPackageManager :: downloadPackage()
ipkg.runIpkg( );
}
}
}
else if ( download->text() == "Remove" )
{
+ doUpdate = false;
for ( QCheckListItem *item = (QCheckListItem *)packagesList->firstChild();
item != 0 ;
item = (QCheckListItem *)item->nextSibling() )
{
if ( item->isOn() )
{
@@ -433,20 +435,31 @@ void NetworkPackageManager :: downloadPackage()
// if (there is a (installed), remove it
pos = name.find( "(installed)" );
if ( pos > 0 )
name.truncate( pos - 1 );
Package *p = dataMgr->getServer( serversList->currentText() )->getPackage( name );
- QFile f( p->getFilename() );
- f.remove();
+
+ QString msgtext;
+ msgtext.sprintf( "Are you sure you wish to delete\n%s?", (const char *)p->getPackageName() );
+ if ( QMessageBox::information( this, "Are you sure?",
+ msgtext, "No", "Yes" ) == 1 )
+ {
+ doUpdate = true;
+ QFile f( p->getFilename() );
+ f.remove();
+ }
}
}
}
- dataMgr->reloadServerData();
- serverSelected( -1 );
+ if ( doUpdate )
+ {
+ dataMgr->reloadServerData();
+ serverSelected( -1 );
+ }
}
void NetworkPackageManager :: applyChanges()
{
stickyOption = "";