From 2f2c23d398b6a47bd06aaf329a55bb455cf5ddd1 Mon Sep 17 00:00:00 2001 From: andyq Date: Fri, 25 Oct 2002 09:50:52 +0000 Subject: Modified so that you can click on a package in the documents view and the Local IPKGS view is shown and the selected package checked --- diff --git a/noncore/settings/aqpkg/mainwin.cpp b/noncore/settings/aqpkg/mainwin.cpp index 206d11c..9f19dfa 100644 --- a/noncore/settings/aqpkg/mainwin.cpp +++ b/noncore/settings/aqpkg/mainwin.cpp @@ -24,6 +24,7 @@ #include "networkpkgmgr.h" #include "settingsimpl.h" #include "helpwindow.h" +#include "utils.h" #include "global.h" MainWindow :: MainWindow( QWidget *p, char *name ) @@ -65,6 +66,14 @@ MainWindow :: ~MainWindow() delete networkPkgWindow; } +void MainWindow :: setDocument( const QString &doc ) +{ + // Remove path from package + QString package = Utils::getPackageNameFromIpkFilename( doc ); + cout << "Selecting package " << package << endl; + networkPkgWindow->selectLocalPackage( package ); +} + void MainWindow :: displaySettings() { SettingsImpl *dlg = new SettingsImpl( mgr, this, "Settings", true ); diff --git a/noncore/settings/aqpkg/mainwin.h b/noncore/settings/aqpkg/mainwin.h index 2a182fc..a9e290c 100644 --- a/noncore/settings/aqpkg/mainwin.h +++ b/noncore/settings/aqpkg/mainwin.h @@ -40,6 +40,7 @@ private: NetworkPackageManager *networkPkgWindow; public slots: + void setDocument( const QString &doc ); void displayHelp(); void displayAbout(); void displaySettings(); diff --git a/noncore/settings/aqpkg/networkpkgmgr.cpp b/noncore/settings/aqpkg/networkpkgmgr.cpp index 6874ded..a374266 100644 --- a/noncore/settings/aqpkg/networkpkgmgr.cpp +++ b/noncore/settings/aqpkg/networkpkgmgr.cpp @@ -60,8 +60,9 @@ NetworkPackageManager::NetworkPackageManager( DataManager *dataManager, QWidget initGui(); setupConnections(); - progressDlg = 0; - timerId = startTimer( 100 ); + updateData(); +// progressDlg = 0; +// timerId = startTimer( 100 ); } NetworkPackageManager::~NetworkPackageManager() @@ -106,6 +107,32 @@ void NetworkPackageManager :: updateData() serverSelected( 0 ); } +void NetworkPackageManager :: selectLocalPackage( const QString &pkg ) +{ + // First select local server + for ( int i = 0 ; i < serversList->count() ; ++i ) + { + if ( serversList->text( i ) == LOCAL_IPKGS ) + { + serversList->setCurrentItem( i ); + break; + } + } + serverSelected( 0 ); + + // Now set the check box of the selected package + for ( QCheckListItem *item = (QCheckListItem *)packagesList->firstChild(); + item != 0 ; + item = (QCheckListItem *)item->nextSibling() ) + { + if ( item->text().startsWith( pkg ) ) + { + item->setOn( true ); + break; + } + } +} + void NetworkPackageManager :: initGui() { diff --git a/noncore/settings/aqpkg/networkpkgmgr.h b/noncore/settings/aqpkg/networkpkgmgr.h index fba8155..3c437b4 100644 --- a/noncore/settings/aqpkg/networkpkgmgr.h +++ b/noncore/settings/aqpkg/networkpkgmgr.h @@ -38,6 +38,7 @@ public: /** destructor */ ~NetworkPackageManager(); + void selectLocalPackage( const QString &pkg ); void updateData(); private: -- cgit v0.9.0.2