summaryrefslogtreecommitdiff
authorandyq <andyq>2002-10-22 18:00:55 (UTC)
committer andyq <andyq>2002-10-22 18:00:55 (UTC)
commitd7cca919f20d602bd755b7690c25e31f6e9520b1 (patch) (side-by-side diff)
treeb5ffe24d905ace7563c21be0eea06b39402430aa
parent6843a1bd8f8e679c220431f8377abcd2ffd2019b (diff)
downloadopie-d7cca919f20d602bd755b7690c25e31f6e9520b1.zip
opie-d7cca919f20d602bd755b7690c25e31f6e9520b1.tar.gz
opie-d7cca919f20d602bd755b7690c25e31f6e9520b1.tar.bz2
Changed so that refreshing server packages shows status dialog
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/aqpkg/installdlgimpl.cpp58
-rw-r--r--noncore/settings/aqpkg/installdlgimpl.h4
-rw-r--r--noncore/settings/aqpkg/ipkg.cpp5
-rw-r--r--noncore/settings/aqpkg/networkpkgmgr.cpp23
4 files changed, 46 insertions, 44 deletions
diff --git a/noncore/settings/aqpkg/installdlgimpl.cpp b/noncore/settings/aqpkg/installdlgimpl.cpp
index e122064..a924daf 100644
--- a/noncore/settings/aqpkg/installdlgimpl.cpp
+++ b/noncore/settings/aqpkg/installdlgimpl.cpp
@@ -97,16 +97,13 @@ InstallDlgImpl::InstallDlgImpl( vector<InstallData> &packageList, DataManager *d
}
output->setText( remove + install + upgrade );
-
- connect( &ipkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &)));
}
-InstallDlgImpl::InstallDlgImpl( QWidget *parent, const char *name, bool modal, WFlags fl )
+InstallDlgImpl::InstallDlgImpl( Ipkg *ipkg, QString initialText, QWidget *parent, const char *name, bool modal, WFlags fl )
: InstallDlg( parent, name, modal, fl )
{
- upgradePackages = true;
- output->setText( "Upgrading installed packages" );
- connect( &ipkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &)));
+ pIpkg = ipkg;
+ output->setText( initialText );
}
@@ -155,14 +152,12 @@ void InstallDlgImpl :: installSelected()
btnInstall->setEnabled( false );
- if ( upgradePackages )
+ if ( pIpkg )
{
output->setText( "" );
- Ipkg ipkg;
- connect( &ipkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &)));
- ipkg.setOption( "upgrade" );
- ipkg.runIpkg();
+ connect( pIpkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &)));
+ pIpkg->runIpkg();
}
else
{
@@ -181,47 +176,52 @@ void InstallDlgImpl :: installSelected()
cfg.writeEntry( "dest", dest );
#endif
+ pIpkg = new Ipkg;
+ connect( pIpkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &)));
+
// First run through the remove list, then the install list then the upgrade list
vector<InstallData>::iterator it;
- ipkg.setOption( "remove" );
+ pIpkg->setOption( "remove" );
for ( it = removeList.begin() ; it != removeList.end() ; ++it )
{
- ipkg.setDestination( it->destination->getDestinationName() );
- ipkg.setDestinationDir( it->destination->getDestinationPath() );
- ipkg.setPackage( it->packageName );
+ pIpkg->setDestination( it->destination->getDestinationName() );
+ pIpkg->setDestinationDir( it->destination->getDestinationPath() );
+ pIpkg->setPackage( it->packageName );
int tmpFlags = flags;
if ( it->destination->linkToRoot() )
tmpFlags |= MAKE_LINKS;
- ipkg.setFlags( tmpFlags );
- ipkg.runIpkg();
+ pIpkg->setFlags( tmpFlags );
+ pIpkg->runIpkg();
}
- ipkg.setOption( "install" );
- ipkg.setDestination( dest );
- ipkg.setDestinationDir( destDir );
- ipkg.setFlags( instFlags );
+ pIpkg->setOption( "install" );
+ pIpkg->setDestination( dest );
+ pIpkg->setDestinationDir( destDir );
+ pIpkg->setFlags( instFlags );
for ( it = installList.begin() ; it != installList.end() ; ++it )
{
- ipkg.setPackage( it->packageName );
- ipkg.runIpkg();
+ pIpkg->setPackage( it->packageName );
+ pIpkg->runIpkg();
}
flags |= FORCE_REINSTALL;
- ipkg.setOption( "reinstall" );
+ pIpkg->setOption( "reinstall" );
for ( it = updateList.begin() ; it != updateList.end() ; ++it )
{
- ipkg.setDestination( it->destination->getDestinationName() );
- ipkg.setDestinationDir( it->destination->getDestinationPath() );
- ipkg.setPackage( it->packageName );
+ pIpkg->setDestination( it->destination->getDestinationName() );
+ pIpkg->setDestinationDir( it->destination->getDestinationPath() );
+ pIpkg->setPackage( it->packageName );
int tmpFlags = flags;
if ( it->destination->linkToRoot() && it->recreateLinks )
tmpFlags |= MAKE_LINKS;
- ipkg.setFlags( tmpFlags );
- ipkg.runIpkg();
+ pIpkg->setFlags( tmpFlags );
+ pIpkg->runIpkg();
}
+
+ delete pIpkg;
}
btnInstall->setEnabled( true );
diff --git a/noncore/settings/aqpkg/installdlgimpl.h b/noncore/settings/aqpkg/installdlgimpl.h
index 3a5d8b8..6716ced 100644
--- a/noncore/settings/aqpkg/installdlgimpl.h
+++ b/noncore/settings/aqpkg/installdlgimpl.h
@@ -38,7 +38,7 @@ class InstallDlgImpl : public InstallDlg
{
public:
InstallDlgImpl( vector<InstallData> &packageList, DataManager *dataManager, QWidget * parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
- InstallDlgImpl( QWidget * parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
+ InstallDlgImpl( Ipkg *ipkg, QString initialText, QWidget * parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
~InstallDlgImpl();
bool showDlg();
@@ -52,7 +52,7 @@ private:
vector<InstallData> removeList;
vector<InstallData> updateList;
int flags;
- Ipkg ipkg;
+ Ipkg *pIpkg;
bool upgradePackages;
bool runIpkg( QString &option, const QString& package, const QString& dest, int flags );
diff --git a/noncore/settings/aqpkg/ipkg.cpp b/noncore/settings/aqpkg/ipkg.cpp
index 02d4258..eacef76 100644
--- a/noncore/settings/aqpkg/ipkg.cpp
+++ b/noncore/settings/aqpkg/ipkg.cpp
@@ -105,8 +105,9 @@ bool Ipkg :: runIpkg( )
cmd += " " + package;
cmd += " 2>&1";
-
- emit outputText( QString( "Dealing with package " ) + package );
+
+ if ( package != "" )
+ emit outputText( QString( "Dealing with package " ) + package );
qApp->processEvents();
diff --git a/noncore/settings/aqpkg/networkpkgmgr.cpp b/noncore/settings/aqpkg/networkpkgmgr.cpp
index 52d95a8..6874ded 100644
--- a/noncore/settings/aqpkg/networkpkgmgr.cpp
+++ b/noncore/settings/aqpkg/networkpkgmgr.cpp
@@ -268,28 +268,26 @@ void NetworkPackageManager :: updateServer()
// Update the current server
// Display dialog
- ProgressDlg *dlg = new ProgressDlg( this );
- QString status = "Updating package lists...";
- dlg->show();
- dlg->setText( status );
+// ProgressDlg *progDlg = new ProgressDlg( this );
+// QString status = "Updating package lists...";
+// progDlg->show();
+// progDlg->setText( status );
// Disable buttons to stop silly people clicking lots on them :)
// First, write out ipkg_conf file so that ipkg can use it
dataMgr->writeOutIpkgConf();
- QString option = "update";
- QString dummy = "";
Ipkg ipkg;
- connect( &ipkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &)));
- ipkg.setOption( option );
+ ipkg.setOption( "update" );
- ipkg.runIpkg( );
+ InstallDlgImpl dlg( &ipkg, "Refreshing server package lists", this, "Upgrade", true );
+ dlg.showDlg();
// Reload data
dataMgr->reloadServerData( serversList->currentText() );
serverSelected(-1);
- delete dlg;
+// delete progDlg;
}
void NetworkPackageManager :: upgradePackages()
@@ -309,7 +307,10 @@ void NetworkPackageManager :: upgradePackages()
dataMgr->writeOutIpkgConf();
// Now run upgrade
- InstallDlgImpl dlg( this, "Upgrade", true );
+ Ipkg ipkg;
+ ipkg.setOption( "upgrade" );
+
+ InstallDlgImpl dlg( &ipkg, "Upgrading installed packages", this, "Upgrade", true );
dlg.showDlg();
// Reload data