24 files changed, 552 insertions, 234 deletions
diff --git a/noncore/unsupported/oipkg/TODO b/noncore/unsupported/oipkg/TODO index 790766c..fc2e8a4 100644 --- a/noncore/unsupported/oipkg/TODO +++ b/noncore/unsupported/oipkg/TODO @@ -9 +9,6 @@ * dependency checking +* create dest if it does not exist +* allow reinstalling +* handle different versions +* different types of filters and searches + i.e. name, desc, files etc
\ No newline at end of file diff --git a/noncore/unsupported/oipkg/debug.h b/noncore/unsupported/oipkg/debug.h index 206dea5..d20a5eb 100644 --- a/noncore/unsupported/oipkg/debug.h +++ b/noncore/unsupported/oipkg/debug.h @@ -8,3 +8,3 @@ extern int debugLevel; #define HACK - +#define PACKAGELISTLOCAL #define NEWLAYOUT diff --git a/noncore/unsupported/oipkg/mainwindow.cpp b/noncore/unsupported/oipkg/mainwindow.cpp index ca1e5e8..06828e0 100644 --- a/noncore/unsupported/oipkg/mainwindow.cpp +++ b/noncore/unsupported/oipkg/mainwindow.cpp @@ -25,2 +25,3 @@ #include <qmessagebox.h> +#include <qpushbutton.h> #include <qlayout.h> @@ -44,3 +45,5 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags f = 0 ) : ipkg = new PmIpkg( settings, this ); +// settings->setIpkg( ipkg ); packageList.setSettings( settings ); + packageListSearch.setSettings( settings ); packageList.update(); @@ -56,2 +59,10 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags f = 0 ) : connect( subsection, SIGNAL(activated(int)), SLOT(subSectionChanged()) ); + + connect( settings->removeLinksButton, SIGNAL( clicked()), + SLOT(removeLinks()) ); + connect( settings->createLinksButton, SIGNAL( clicked()), + SLOT(createLinks()) ); + +// rootLocal = new QCheckListItem(listViewPackages,tr("local")); +// rootSearch = new QCheckListItem(listViewPackages,tr("ipkgfind")); displayList(); @@ -99,10 +110,2 @@ void MainWindow::makeMenu() -// could we use for find -// detailsAction = new QAction( tr( "Find" ), -// Resource::loadIconSet( "find" ), -// QString::null, 0, this, 0 ); -// connect( detailsAction, SIGNAL( activated() ), -// this , SLOT( showFind() ) ); -// detailsAction->addTo( toolBar ); - QAction *cfgact; @@ -128,2 +131,3 @@ void MainWindow::makeMenu() + // SECTIONS sectionBar = new QPEToolBar( this ); @@ -141,6 +145,4 @@ void MainWindow::makeMenu() a->addTo( sectionBar ); - setSections(); setSubSections(); - sectionAction = new QAction( tr( "Sections" ), QString::null, 0, this, 0 ); @@ -150,4 +152,5 @@ void MainWindow::makeMenu() + //FIND findBar = new QPEToolBar(this); - addToolBar( findBar, "Search", QMainWindow::Top, TRUE ); + addToolBar( findBar, "Filter", QMainWindow::Top, TRUE ); label = new QLabel( tr("Filter: "), findBar ); @@ -159,3 +162,2 @@ void MainWindow::makeMenu() this, SLOT( displayList() ) ); - a = new QAction( tr( "Clear Find" ), Resource::loadPixmap( "back" ), QString::null, 0, this, 0 ); @@ -166,3 +168,3 @@ void MainWindow::makeMenu() a->addTo( findBar ); - findAction = new QAction( tr( "Find" ), QString::null, 0, this, 0 ); + findAction = new QAction( tr( "Filter" ), QString::null, 0, this, 0 ); connect( findAction, SIGNAL( toggled(bool) ), this, SLOT( findShow(bool) ) ); @@ -171,2 +173,27 @@ void MainWindow::makeMenu() + //SEARCH + searchBar = new QPEToolBar(this); + addToolBar( searchBar, "Search", QMainWindow::Top, TRUE ); + label = new QLabel( tr("ipkgfind: "), searchBar ); + label->setBackgroundColor( searchBar->backgroundColor() ); + searchBar->setHorizontalStretchable( TRUE ); + searchEdit = new QLineEdit( searchBar, "seachEdit" ); + searchBar->setStretchableWidget( searchEdit ); +// connect( searchEdit, SIGNAL( textChanged( const QString & ) ), +// this, SLOT( displayList() ) ); + a = new QAction( tr( "Clear Search" ), Resource::loadPixmap( "back" ), QString::null, 0, this, 0 ); + connect( a, SIGNAL( activated() ), searchEdit, SLOT( clear() ) ); + a->addTo( searchBar ); + searchCommit = new QAction( tr( "Do Search" ), Resource::loadPixmap( "find" ), QString::null, 0, this, 0 ); + connect( searchCommit, SIGNAL( activated() ), SLOT( remotePackageQuery() ) ); + searchCommit->addTo( searchBar ); + a = new QAction( tr( "Close Find" ), Resource::loadPixmap( "close" ), QString::null, 0, this, 0 ); + connect( a, SIGNAL( activated() ), this, SLOT( searchClose() ) ); + a->addTo( searchBar ); + searchAction = new QAction( tr( "Search" ), QString::null, 0, this, 0 ); + connect( searchAction, SIGNAL( toggled(bool) ), this, SLOT( searchShow(bool) ) ); + searchAction->setToggleAction( true ); + searchAction->addTo( viewMenu ); + + //DEST destBar = new QPEToolBar(this); @@ -179,4 +206,4 @@ void MainWindow::makeMenu() setComboName(destination,settings->getDestinationName()); -// connect( destination, SIGNAL(activated(int)), -// SLOT(activeDestinationChange(int)) ); + connect( destination, SIGNAL(activated(int)), + settings, SLOT(activeDestinationChange(int)) ); spacer = new QLabel( " ", destBar ); @@ -186,4 +213,4 @@ void MainWindow::makeMenu() CheckBoxLink->setChecked( settings->createLinks() ); -// connect( CheckBoxLink, SIGNAL(toggled(bool)), -// settings, SLOT(linkEnabled(bool)) ); + connect( CheckBoxLink, SIGNAL(toggled(bool)), + settings, SLOT(linkEnabled(bool)) ); destAction = new QAction( tr( "Destinations" ), QString::null, 0, this, 0 ); @@ -202,2 +229,3 @@ void MainWindow::makeMenu() findShow( cfg.readBoolEntry( "findBar", true ) ); + searchShow( cfg.readBoolEntry( "searchBar", true ) ); sectionShow( cfg.readBoolEntry( "sectionBar", true ) ); @@ -211,2 +239,3 @@ MainWindow::~MainWindow() cfg.writeEntry( "findBar", !findBar->isHidden() ); + cfg.writeEntry( "searchBar", !searchBar->isHidden() ); cfg.writeEntry( "sectionBar", !sectionBar->isHidden() ); @@ -219,2 +248,3 @@ void MainWindow::runIpkg() packageList.allPackages(); + ipkg->loadList( packageListSearch ); ipkg->commit( packageList ); @@ -256,8 +286,17 @@ void MainWindow::displayList() Package *pack = packageList.first(); + PackageListItem *item; + + QCheckListItem *rootLocal = new QCheckListItem(listViewPackages,tr("local")); + QCheckListItem *rootSearch = new QCheckListItem(listViewPackages,tr("ipkgfind")); while( pack ) { - if ( pack && (pack->name() != "") ) - listViewPackages->insertItem( new PackageListItem( listViewPackages, pack, settings ) ); + item = new PackageListItem( rootLocal, pack, settings ); pack = packageList.next(); } + pack = packageListSearch.first(); + while( pack ) + { + item = new PackageListItem( rootSearch, pack, settings ); + pack = packageListSearch.next(); + } } @@ -347,2 +386,15 @@ void MainWindow::findClose() +void MainWindow::searchShow(bool b) +{ + if (b) searchBar->show(); + else searchBar->hide(); + searchAction->setOn( b ); +} + +void MainWindow::searchClose() +{ + searchAction->setOn( false ); +} + + void MainWindow::destShow(bool b) @@ -422 +474,20 @@ void MainWindow::receive(const QCString &msg, const QByteArray &arg) } + + +void MainWindow::createLinks() +{ + pvDebug(2,"creating links..."); + ipkg->createLinks( settings->destinationurl->text() ); +} + +void MainWindow::removeLinks() +{ + pvDebug(2,"removing links..."); + ipkg->removeLinks( settings->destinationurl->text() ); +} + +void MainWindow::remotePackageQuery() +{ + packageListSearch.query( searchEdit->text() ); + displayList(); +} diff --git a/noncore/unsupported/oipkg/mainwindow.h b/noncore/unsupported/oipkg/mainwindow.h index 7615b09..4a73b78 100644 --- a/noncore/unsupported/oipkg/mainwindow.h +++ b/noncore/unsupported/oipkg/mainwindow.h @@ -9,2 +9,4 @@ #include "packagelist.h" +#include "packagelistremote.h" +#include "packagelistlocal.h" #include "pmipkg.h" @@ -48,2 +50,4 @@ public slots: void findShow(bool); + void searchClose(); + void searchShow(bool); void destClose(); @@ -51,4 +55,7 @@ public slots: void filterList(); + void createLinks(); + void removeLinks(); void receive (const QCString &, const QByteArray &); void setDocument (const QString &); + void remotePackageQuery(); @@ -63,3 +70,7 @@ private: PackageManagerSettings *settings; - PackageList packageList; + PackageListLocal packageList; + PackageListRemote packageListSearch; + PackageListView *listViewPackages; +// QCheckListItem* rootSearch; +// QCheckListItem* rootLocal; QAction *runAction; @@ -67,7 +78,9 @@ private: QAction *findAction; - QAction *sectionAction; - QAction *destAction; - PackageListView *listViewPackages; QPEToolBar *findBar; QLineEdit *findEdit; + QAction *searchAction; + QAction *searchCommit; + QPEToolBar *searchBar; + QLineEdit *searchEdit; + QAction *sectionAction; QPEToolBar *sectionBar; @@ -75,2 +88,3 @@ private: QComboBox *subsection; + QAction *destAction; QPEToolBar *destBar; diff --git a/noncore/unsupported/oipkg/oipkg.pro b/noncore/unsupported/oipkg/oipkg.pro index c5d3b3d..98f92c8 100644 --- a/noncore/unsupported/oipkg/oipkg.pro +++ b/noncore/unsupported/oipkg/oipkg.pro @@ -9,3 +9,5 @@ HEADERS = mainwindow.h \ packagelistitem.h \ + packagelistremote.h \ packagelist.h \ + packagelistlocal.h \ packagelistview.h \ @@ -16,2 +18,4 @@ SOURCES = main.cpp \ packagelistview.cpp \ + packagelistremote.cpp \ + packagelistlocal.cpp \ pksettings.cpp \ diff --git a/noncore/unsupported/oipkg/package.cpp b/noncore/unsupported/oipkg/package.cpp index 0499e19..6bb53a9 100644 --- a/noncore/unsupported/oipkg/package.cpp +++ b/noncore/unsupported/oipkg/package.cpp @@ -30,2 +30,3 @@ void Package::init( PackageManagerSettings *s ) _toProcess = false; + _useFileName = false; _status = ""; @@ -50,3 +51,4 @@ Package::Package( QString n, PackageManagerSettings *s ) _toProcess = true; - _packageName = QString( n ); + _useFileName = true; + _fileName = QString( n ); } @@ -92,3 +94,3 @@ void Package::setValue( QString n, QString t ) { - + _fileName = t; }else if ( n == "Size") @@ -120,2 +122,9 @@ QString Package::name() + +QString Package::installName() +{ + if (_useFileName) return _fileName; + else return _name; +} + bool Package::installed() @@ -333,6 +342,11 @@ void Package::parseIpkgFile( QString file) -QString Package::getPackageName() +//QString Package::getPackageName() +//{ +// if ( _packageName.isEmpty() ) return _name; +// else return _packageName; +//} + +void Package::instalFromFile(bool iff) { - if ( _packageName.isEmpty() ) return _name; - else return _packageName; + _useFileName = iff; } diff --git a/noncore/unsupported/oipkg/package.h b/noncore/unsupported/oipkg/package.h index 49bb3bf..4618c3a 100644 --- a/noncore/unsupported/oipkg/package.h +++ b/noncore/unsupported/oipkg/package.h @@ -26,2 +26,3 @@ class Package //: public QObject QString name() ; + QString installName() ; bool installed(); @@ -46,5 +47,6 @@ class Package //: public QObject void setLink(bool); - void parseIpkgFile( QString );; + void parseIpkgFile( QString ); + void instalFromFile(bool iff=true); public slots: - QString getPackageName(); +// QString getPackageName(); void toggleProcess(); @@ -53,4 +55,5 @@ private: PackageManagerSettings *settings; - QString _packageName; +// QString _packageName; QString _name; + QString _fileName; bool _toProcess; @@ -64,2 +67,3 @@ private: QString _dest; + bool _useFileName; void parsePackage( QStringList ); diff --git a/noncore/unsupported/oipkg/packagelist.cpp b/noncore/unsupported/oipkg/packagelist.cpp index 035ec81..b892b30 100644 --- a/noncore/unsupported/oipkg/packagelist.cpp +++ b/noncore/unsupported/oipkg/packagelist.cpp @@ -6,3 +6,2 @@ #include <qtextstream.h> -#include <qpe/config.h> @@ -14,15 +13,2 @@ PackageList::PackageList() empty=true; - { - Config cfg( "oipkg", Config::User ); - cfg.setGroup( "Common" ); - statusDir = cfg.readEntry( "statusDir", "" ); - listsDir = cfg.readEntry( "listsDir", "" ); - if ( statusDir=="" || ! QFileInfo(statusDir+"/status").isFile() ) - { - statusDir="/usr/lib/ipkg/"; - listsDir="/usr/lib/ipkg/lists/"; - cfg.writeEntry( "statusDir", statusDir ); - cfg.writeEntry( "listsDir", listsDir ); - } - } sections << "All"; @@ -147,30 +133,5 @@ void PackageList::updateSections( Package* pack ) - -/** No descriptions */ -void PackageList::parseStatus() -{ - QStringList dests = settings->getDestinationUrls(); - QStringList destnames = settings->getDestinationNames(); - QStringList::Iterator name = destnames.begin(); - for ( QStringList::Iterator dir = dests.begin(); dir != dests.end(); ++dir ) - { - pvDebug( 2,"Status: "+*dir+statusDir+"/status"); - readFileEntries( *dir+statusDir+"/status", *name ); - ++name; - }; -} - -void PackageList::parseList() -{ - QStringList srvs = settings->getActiveServers(); - - for ( QStringList::Iterator it = srvs.begin(); it != srvs.end(); ++it ) - { - pvDebug( 2, "List: "+listsDir+"/"+*it); - readFileEntries( listsDir+"/"+*it, "" ); - } -} - void PackageList::readFileEntries( QString filename, QString dest ) { + pvDebug(5,"PackageList::readFileEntries "+filename+" dest "+dest); QStringList packEntry; @@ -180,20 +141,20 @@ void PackageList::readFileEntries( QString filename, QString dest ) while ( !statusStream ->eof() ) - { - QString line = statusStream->readLine(); - if ( line.find(QRegExp("[\n\t ]*")) || line == "" ) - { - //end of package - if ( ! packEntry.isEmpty() ) - { - Package *p = new Package( packEntry, settings ); - p->setDest( dest ); - if ( p ) - { - insertPackage( p ); - packEntry.clear(); - } - } - }else{ - packEntry << line; - }; + { + QString line = statusStream->readLine(); + if ( line.find(QRegExp("[\n\t ]*")) || line == "" ) + { + //end of package + if ( ! packEntry.isEmpty() ) + { + Package *p = new Package( packEntry, settings ); + p->setDest( dest ); + if ( p ) + { + insertPackage( p ); + packEntry.clear(); + } + } + }else{ + packEntry << line; + }; } @@ -202,12 +163,2 @@ void PackageList::readFileEntries( QString filename, QString dest ) - -void PackageList::update() -{ - pvDebug( 2, "parseStatus"); - parseStatus(); - pvDebug( 2, "parseList"); - parseList(); - pvDebug( 2, "finished parsing"); -} - void PackageList::setSettings( PackageManagerSettings *s ) diff --git a/noncore/unsupported/oipkg/packagelist.h b/noncore/unsupported/oipkg/packagelist.h index 7c326ca..acea3b9 100644 --- a/noncore/unsupported/oipkg/packagelist.h +++ b/noncore/unsupported/oipkg/packagelist.h @@ -8,8 +8,2 @@ -#define HACK -#ifdef HACK - static QString listsDir="/usr/lib/ipkg/"; - static QString statusDir="/usr/lib/ipkg/"; -#endif - class PackageList //:QObject @@ -22,3 +16,3 @@ public: PackageList( PackageManagerSettings* ); - ~PackageList(); + virtual ~PackageList(); void insertPackage( Package* ); @@ -39,5 +33,5 @@ public slots: void setSubSection(QString); - void update(); + // virtual void update(); -private: +protected: int currentPackage; @@ -51,6 +45,2 @@ private: bool empty; -#ifndef HACK - QString listsDir; - QString statusDir; -#endif QString aktSection; @@ -63,5 +53,3 @@ private: void updateSections( Package* ); - void parseStatus(); - void parseList(); - void readFileEntries( QString file, QString dest ); + void readFileEntries( QString file, QString dest="" ); }; diff --git a/noncore/unsupported/oipkg/packagelistitem.cpp b/noncore/unsupported/oipkg/packagelistitem.cpp index 0c7c928..b7af9a6 100644 --- a/noncore/unsupported/oipkg/packagelistitem.cpp +++ b/noncore/unsupported/oipkg/packagelistitem.cpp @@ -15,2 +15,13 @@ PackageListItem::PackageListItem(QListView* lv, Package *pi, PackageManagerSetti { + init(pi,s); +} + +PackageListItem::PackageListItem(QListViewItem *lvi, Package *pi, PackageManagerSettings *s) + : QCheckListItem(lvi,pi->name(),CheckBox) +{ + init(pi,s); +} + +void PackageListItem::init( Package *pi, PackageManagerSettings *s) +{ package = pi; diff --git a/noncore/unsupported/oipkg/packagelistitem.h b/noncore/unsupported/oipkg/packagelistitem.h index 54d9f9e..b128f0d 100644 --- a/noncore/unsupported/oipkg/packagelistitem.h +++ b/noncore/unsupported/oipkg/packagelistitem.h @@ -17,2 +17,3 @@ class PackageListItem public: + PackageListItem(QListViewItem*, Package*, PackageManagerSettings*); PackageListItem(QListView*, Package*, PackageManagerSettings*); @@ -29,2 +30,3 @@ public: private: + void init(Package*, PackageManagerSettings*); QCheckListItem *nameItem; diff --git a/noncore/unsupported/oipkg/packagelistlocal.cpp b/noncore/unsupported/oipkg/packagelistlocal.cpp new file mode 100644 index 0000000..6d931c8 --- a/dev/null +++ b/noncore/unsupported/oipkg/packagelistlocal.cpp @@ -0,0 +1,66 @@ +#include <qpe/config.h> +#include <qfile.h> +#include <qfileinfo.h> +#include <qtextstream.h> +#include <qstringlist.h> +#include "packagelistlocal.h" + +PackageListLocal::PackageListLocal() + : PackageList() +{ + Config cfg( "oipkg", Config::User ); + cfg.setGroup( "Common" ); + statusDir = cfg.readEntry( "statusDir", "" ); + listsDir = cfg.readEntry( "listsDir", "" ); + if ( statusDir=="" || ! QFileInfo(statusDir+"/status").isFile() ) + { + statusDir="/usr/lib/ipkg/"; + listsDir="/usr/lib/ipkg/lists/"; + cfg.writeEntry( "statusDir", statusDir ); + cfg.writeEntry( "listsDir", listsDir ); + } +} + +PackageListLocal::PackageListLocal(PackageManagerSettings* s) + : PackageList(s) +{ + PackageListLocal(); +} + +PackageListLocal::~PackageListLocal() +{ +} + +void PackageListLocal::parseStatus() +{ + QStringList dests = settings->getDestinationUrls(); + QStringList destnames = settings->getDestinationNames(); + QStringList::Iterator name = destnames.begin(); + for ( QStringList::Iterator dir = dests.begin(); dir != dests.end(); ++dir ) + { + pvDebug( 2,"Status: "+*dir+statusDir+"/status"); + readFileEntries( *dir+statusDir+"/status", *name ); + ++name; + }; +} + +void PackageListLocal::parseList() +{ + QStringList srvs = settings->getActiveServers(); + + for ( QStringList::Iterator it = srvs.begin(); it != srvs.end(); ++it ) + { + pvDebug( 2, "List: "+listsDir+"/"+*it); + readFileEntries( listsDir+"/"+*it ); + } +} + + +void PackageListLocal::update() +{ + pvDebug( 2, "parseStatus"); + parseStatus(); + pvDebug( 2, "parseList"); + parseList(); + pvDebug( 2, "finished parsing"); +} diff --git a/noncore/unsupported/oipkg/packagelistlocal.h b/noncore/unsupported/oipkg/packagelistlocal.h new file mode 100644 index 0000000..887126b --- a/dev/null +++ b/noncore/unsupported/oipkg/packagelistlocal.h @@ -0,0 +1,30 @@ +#ifndef PACKAGELISTLOCAL_H +#define PACKAGELISTLOCAL_H + +#include "packagelist.h" + + +#define HACK +#ifdef HACK + static QString listsDir="/usr/lib/ipkg/"; + static QString statusDir="/usr/lib/ipkg/"; +#endif + +class PackageListLocal : public PackageList { +public: + PackageListLocal(); + PackageListLocal( PackageManagerSettings* ); + virtual ~PackageListLocal(); + +public slots: + void update(); +private: +#ifndef HACK + QString listsDir; + QString statusDir; +#endif + void parseStatus(); + void parseList(); +}; + +#endif diff --git a/noncore/unsupported/oipkg/packagelistremote.cpp b/noncore/unsupported/oipkg/packagelistremote.cpp new file mode 100644 index 0000000..721d4a6 --- a/dev/null +++ b/noncore/unsupported/oipkg/packagelistremote.cpp @@ -0,0 +1,47 @@ + +#include "packagelistremote.h" + +#include <qstring.h> +#include <stdlib.h> +#include <unistd.h> + +PackageListRemote::PackageListRemote(PackageManagerSettings* s) + : PackageList(s) +{ + PackageListRemote(); +} + +PackageListRemote::PackageListRemote() + : PackageList() +{ +} + +PackageListRemote::~PackageListRemote() +{ +} + +void PackageListRemote::query(QString s) +{ + int r=0; + QString cmd = "wget"; + QString redirect = "/tmp/oipkg.query"; + + // use file for output + cmd += " --output-document="+redirect; +//http://ipkgfind.handhelds.org/packages.phtml?format=pda&query=ipkg&searchtype=package§ion= + QString server="http://ipkgfind.handhelds.org/"; + cmd += " \""+server+"/packages.phtml"; + cmd += "?format=pda&searchtype=package§ion="; + cmd += "&query="+s; + cmd += "\""; + + pvDebug(2,"search :"+cmd); + r = system(cmd.latin1()); + readFileEntries( redirect ); + +} + +void PackageListRemote::update() +{ + pvDebug(2,"PackageListRemote::update\ndoing nothing "); +} diff --git a/noncore/unsupported/oipkg/packagelistremote.h b/noncore/unsupported/oipkg/packagelistremote.h new file mode 100644 index 0000000..147da1e --- a/dev/null +++ b/noncore/unsupported/oipkg/packagelistremote.h @@ -0,0 +1,19 @@ +#ifndef PACKAGELISTREMOTE_H +#define PACKAGELISTREMOTE_H + +#include "packagelist.h" +#include "package.h" +#include "pksettings.h" +#include "debug.h" + +class PackageListRemote : public PackageList { +public: + PackageListRemote(); + PackageListRemote( PackageManagerSettings* s); + virtual ~PackageListRemote(); + void query(QString); +public slots: + void update(); +}; + +#endif diff --git a/noncore/unsupported/oipkg/packagelistview.cpp b/noncore/unsupported/oipkg/packagelistview.cpp index 2915ac6..610a0e1 100644 --- a/noncore/unsupported/oipkg/packagelistview.cpp +++ b/noncore/unsupported/oipkg/packagelistview.cpp @@ -1,18 +1 @@ -/*************************************************************************** - packagelistview.cpp - description - ------------------- - begin : Sat Apr 27 2002 - copyright : (C) 2002 by tille - email : tille@handhelds.org - ***************************************************************************/ - -/*************************************************************************** - * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - ***************************************************************************/ - #include "packagelistview.h" diff --git a/noncore/unsupported/oipkg/packagelistview.h b/noncore/unsupported/oipkg/packagelistview.h index a3db0d0..d371a34 100644 --- a/noncore/unsupported/oipkg/packagelistview.h +++ b/noncore/unsupported/oipkg/packagelistview.h @@ -50,3 +50,2 @@ public slots: void stopTimer( QListViewItem* ); - /** No descriptions */ void toggleProcess(); diff --git a/noncore/unsupported/oipkg/pkfind.ui b/noncore/unsupported/oipkg/pkfind.ui deleted file mode 100644 index 7a24c00..0000000 --- a/noncore/unsupported/oipkg/pkfind.ui +++ b/dev/null @@ -1,51 +0,0 @@ -<!DOCTYPE UI><UI> -<class>Search</class> -<widget> - <class>QDialog</class> - <property stdset="1"> - <name>name</name> - <cstring>Form5</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>0</x> - <y>0</y> - <width>196</width> - <height>55</height> - </rect> - </property> - <property stdset="1"> - <name>caption</name> - <string>Search Packages</string> - </property> - <hbox> - <property stdset="1"> - <name>margin</name> - <number>11</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>TextLabel4</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Find:</string> - </property> - </widget> - <widget> - <class>QLineEdit</class> - <property stdset="1"> - <name>name</name> - <cstring>pattern</cstring> - </property> - </widget> - </hbox> -</widget> -</UI> diff --git a/noncore/unsupported/oipkg/pksettings.cpp b/noncore/unsupported/oipkg/pksettings.cpp index 6c8dc2a..7e2ef10 100644 --- a/noncore/unsupported/oipkg/pksettings.cpp +++ b/noncore/unsupported/oipkg/pksettings.cpp @@ -136,2 +136,4 @@ void PackageManagerSettings::editDestination(int i) destinationurl->setEnabled(TRUE); + createLinksButton->setEnabled(TRUE); + removeLinksButton->setEnabled(TRUE); } @@ -530,2 +532,3 @@ void PackageManagerSettings::linkEnabled( bool b ) { + pvDebug(2,"PackageManagerSettings::linkEnabled "+QString(b?"yes":"no")); activeLinkDestination->setEnabled( b ); @@ -542 +545,20 @@ QComboBox* PackageManagerSettings::getDestCombo() } + +void PackageManagerSettings::createLinksToDest() +{ + pvDebug(2,"creating links..."); +// emit doCreateLinks( destinationurl->text() ); +// ipkg->createLinks( destinationurl ); +} + +void PackageManagerSettings::removeLinksToDest() +{ + pvDebug(2,"removing links..."); +// emit doRemoveLinks( destinationurl->text() ); +// ipkg->removeLinks( destinationurl ); +} + +//void PackageManagerSettings::setIpkg( PmIpkg* i ) +//{ +// ipkg = i; +//} diff --git a/noncore/unsupported/oipkg/pksettings.h b/noncore/unsupported/oipkg/pksettings.h index fbb3b99..1632d4a 100644 --- a/noncore/unsupported/oipkg/pksettings.h +++ b/noncore/unsupported/oipkg/pksettings.h @@ -4,6 +4,8 @@ #include "pksettingsbase.h" +//#include "pmipkg.h" #include <qintdict.h> +#include <qobject.h> -class PackageManagerSettings : private PackageManagerSettingsBase +class PackageManagerSettings : public PackageManagerSettingsBase { @@ -24,19 +26,4 @@ public: QString getDestinationUrlByName(QString); - /** No descriptions */ QComboBox* getDestCombo(); - -private: - QIntDict<QString> serverurlDic; - QIntDict<QString> destinationurlDic; - int ipkg_old; - int editedserver; - int editeddestination; - int currentSetting; - int installationSettingsCount; - bool changed; - - bool readIpkgConfig(const QString&); - void writeIpkgConfig(const QString&); - void writeSettings(); - void readSettings(); +// void setIpkg( PmIpkg* ); @@ -48,3 +35,4 @@ public slots: void installationSettingSetName(const QString &); - + void removeLinksToDest(); + void createLinksToDest(); void newServer(); @@ -65,2 +53,20 @@ public slots: void activeServerChanged(); +signals: +// void doCreateLinks( QString dest ); +// void doRemoveLinks( QString dest ); + +private: + QIntDict<QString> serverurlDic; + QIntDict<QString> destinationurlDic; + int ipkg_old; + int editedserver; + int editeddestination; + int currentSetting; + int installationSettingsCount; + bool changed; + + bool readIpkgConfig(const QString&); + void writeIpkgConfig(const QString&); + void writeSettings(); + void readSettings(); }; diff --git a/noncore/unsupported/oipkg/pksettingsbase.ui b/noncore/unsupported/oipkg/pksettingsbase.ui index fd6d208..5b83248 100644 --- a/noncore/unsupported/oipkg/pksettingsbase.ui +++ b/noncore/unsupported/oipkg/pksettingsbase.ui @@ -13,3 +13,3 @@ <y>0</y> - <width>345</width> + <width>337</width> <height>454</height> @@ -534,3 +534,3 @@ <name>margin</name> - <number>3</number> + <number>2</number> </property> @@ -538,3 +538,3 @@ <name>spacing</name> - <number>3</number> + <number>2</number> </property> @@ -714,2 +714,117 @@ </widget> + <widget row="4" column="0" > + <class>QLayoutWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>Layout11</cstring> + </property> + <hbox> + <property stdset="1"> + <name>margin</name> + <number>0</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget> + <class>QPushButton</class> + <property stdset="1"> + <name>name</name> + <cstring>createLinksButton</cstring> + </property> + <property stdset="1"> + <name>enabled</name> + <bool>false</bool> + </property> + <property stdset="1"> + <name>text</name> + <string>link to /</string> + </property> + </widget> + <widget> + <class>QPushButton</class> + <property stdset="1"> + <name>name</name> + <cstring>removeLinksButton</cstring> + </property> + <property stdset="1"> + <name>enabled</name> + <bool>false</bool> + </property> + <property stdset="1"> + <name>text</name> + <string>Remove links</string> + </property> + </widget> + </hbox> + </widget> + <widget row="5" column="0" > + <class>QGroupBox</class> + <property stdset="1"> + <name>name</name> + <cstring>GroupBox1</cstring> + </property> + <property stdset="1"> + <name>title</name> + <string></string> + </property> + <grid> + <property stdset="1"> + <name>margin</name> + <number>11</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget row="0" column="0" > + <class>QLayoutWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>Layout12</cstring> + </property> + <hbox> + <property stdset="1"> + <name>margin</name> + <number>0</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget> + <class>QCheckBox</class> + <property stdset="1"> + <name>name</name> + <cstring>CheckBoxvolatile</cstring> + </property> + <property stdset="1"> + <name>enabled</name> + <bool>false</bool> + </property> + <property stdset="1"> + <name>text</name> + <string>volatile</string> + </property> + </widget> + <widget> + <class>QCheckBox</class> + <property stdset="1"> + <name>name</name> + <cstring>removeable</cstring> + </property> + <property stdset="1"> + <name>enabled</name> + <bool>false</bool> + </property> + <property stdset="1"> + <name>text</name> + <string>removeable</string> + </property> + </widget> + </hbox> + </widget> + </grid> + </widget> </grid> @@ -738,2 +853,16 @@ </connection> + <connection> + <sender>createLinksButton</sender> + <signal>clicked()</signal> + <receiver>Form4</receiver> + <slot>createLinksToDest()</slot> + </connection> + <connection> + <sender>removeLinksButton</sender> + <signal>clicked()</signal> + <receiver>Form4</receiver> + <slot>removeLinksToDest()</slot> + </connection> + <slot access="public">activeServerChanged()</slot> + <slot access="public">createLinksToDest()</slot> <slot access="public">destNameChanged(const QString&)</slot> @@ -748,5 +877,5 @@ <slot access="public">newServer()</slot> - <slot access="public">activeServerChanged()</slot> <slot access="public">removeDestination()</slot> <slot access="public">removeInstallationSetting()</slot> + <slot access="public">removeLinksToDest()</slot> <slot access="public">removeServer()</slot> diff --git a/noncore/unsupported/oipkg/pmipkg.cpp b/noncore/unsupported/oipkg/pmipkg.cpp index 9f6429a..fe200f5 100644 --- a/noncore/unsupported/oipkg/pmipkg.cpp +++ b/noncore/unsupported/oipkg/pmipkg.cpp @@ -212,30 +212,27 @@ void PmIpkg::processLinkDir( QString file, QString dest ) -void PmIpkg::commit( PackageList pl ) +void PmIpkg::loadList( PackageList pl ) { - int sizecount = 0; - to_install.clear(); - to_remove.clear(); - QString rem="<b>"+tr("To remove:")+"</b><br>\n"; - QString inst="<b>"+tr("To install:")+"</b><br>\n"; for( Package *pack = pl.first();pack ; (pack = pl.next()) ) - { - if ( pack && (pack->name() != "") && pack) - { - if ( pack->toInstall() ) - { + { + if ( pack && (pack->name() != "") && pack) + { + if ( pack->toInstall() ) to_install.append( pack ); - sizecount += pack->size().toInt(); - inst += pack->name()+"\t("+tr("on ")+pack->dest()+")<br>"; - } - if ( pack->toRemove() ) - { + if ( pack->toRemove() ) to_remove.append( pack ); - sizecount += 1; - rem += pack->name()+"<br>"; - } - } - } + } + } +} +void PmIpkg::commit( PackageList pl ) +{ + sizecount = 0; + QString rem="<b>"+tr("To remove:")+"</b><br>\n"; + QString inst="<b>"+tr("To install:")+"</b><br>\n"; + loadList(pl); + for (uint i=0; i < to_remove.count(); i++) + sizecount += 1; + for (uint i=0; i < to_install.count(); i++) + sizecount += to_install.at(i)->size().toInt(); startDialog(); - } @@ -268,3 +265,3 @@ void PmIpkg::startDialog() QGroupBox *GroupBox1 = new QGroupBox( installDialog, "Ipkg" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)3, (QSizePolicy::SizeType)3, GroupBox1->sizePolicy().hasHeightForWidth() ) ); + GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)3, (QSizePolicy::SizeType)3, GroupBox1->sizePolicy().mayShrinkVertically() ) ); GroupBox1->setTitle( tr( "Ipkg options" ) ); @@ -277,3 +274,2 @@ void PmIpkg::startDialog() GroupBox1Layout->setMargin( 3 ); - _force_depends = new QCheckBox( GroupBox1, "_force_depends" ); @@ -281,2 +277,3 @@ void PmIpkg::startDialog() _force_depends->setAutoResize( TRUE ); + _force_depends->setChecked(true); GroupBox1Layout->addWidget( _force_depends, 0, 0 ); @@ -321,4 +318,4 @@ void PmIpkg::remove() QStringList *fileList; - for (Package *it=to_remove.first(); it != 0; it=to_remove.next() ) - { + for (Package *it=to_remove.first(); it != 0; it=to_remove.next() ) + { if ( it->link() )fileList = getList( it->name(), it->dest() ); @@ -335,2 +332,3 @@ void PmIpkg::remove() it->processed(); + out("<br><hr>"); @@ -353,3 +351,3 @@ void PmIpkg::install() - if ( runIpkg("install " + it->getPackageName(), it->dest() ) == 0 ) + if ( runIpkg("install " + it->installName(), it->dest() ) == 0 ) { diff --git a/noncore/unsupported/oipkg/pmipkg.h b/noncore/unsupported/oipkg/pmipkg.h index 0625032..2b89023 100644 --- a/noncore/unsupported/oipkg/pmipkg.h +++ b/noncore/unsupported/oipkg/pmipkg.h @@ -25,2 +25,3 @@ public: int linkOpp; + void loadList( PackageList ); void commit( PackageList ); @@ -41,2 +42,3 @@ public slots: private: + int sizecount; PackageManagerSettings* settings; diff --git a/noncore/unsupported/oipkg/settings.h b/noncore/unsupported/oipkg/settings.h index e2072f1..3be4334 100644 --- a/noncore/unsupported/oipkg/settings.h +++ b/noncore/unsupported/oipkg/settings.h @@ -63 +63,5 @@ private: #endif + /** No descriptions */ + void createLinks(); + /** No descriptions */ + void removeLinks(); |