summaryrefslogtreecommitdiff
path: root/noncore/unsupported/oipkg
authortille <tille>2002-04-26 00:50:30 (UTC)
committer tille <tille>2002-04-26 00:50:30 (UTC)
commita111f57eedcf27623e9bff2816c83d3287272aff (patch) (unidiff)
treeb43ac41ffbdc741f731cf3f91aab064ba94ab0f3 /noncore/unsupported/oipkg
parent5198d98daeaa1e8eb8568ccd3c516ab70fbed512 (diff)
downloadopie-a111f57eedcf27623e9bff2816c83d3287272aff.zip
opie-a111f57eedcf27623e9bff2816c83d3287272aff.tar.gz
opie-a111f57eedcf27623e9bff2816c83d3287272aff.tar.bz2
added support for scipt ipkg (again;)
Diffstat (limited to 'noncore/unsupported/oipkg') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/unsupported/oipkg/mainwindow.cpp23
-rw-r--r--noncore/unsupported/oipkg/mainwindow.h4
-rw-r--r--noncore/unsupported/oipkg/pksettings.h1
-rw-r--r--noncore/unsupported/oipkg/pmipkg.cpp75
-rw-r--r--noncore/unsupported/oipkg/pmipkg.h11
-rw-r--r--noncore/unsupported/oipkg/settings.h5
6 files changed, 98 insertions, 21 deletions
diff --git a/noncore/unsupported/oipkg/mainwindow.cpp b/noncore/unsupported/oipkg/mainwindow.cpp
index 54ee115..c803ca0 100644
--- a/noncore/unsupported/oipkg/mainwindow.cpp
+++ b/noncore/unsupported/oipkg/mainwindow.cpp
@@ -69,49 +69,49 @@ void MainWindow::makeMenu()
69 69
70 QPEToolBar *toolBar = new QPEToolBar( this ); 70 QPEToolBar *toolBar = new QPEToolBar( this );
71 QPEMenuBar *menuBar = new QPEMenuBar( toolBar ); 71 QPEMenuBar *menuBar = new QPEMenuBar( toolBar );
72 QPopupMenu *srvMenu = new QPopupMenu( menuBar ); 72 QPopupMenu *srvMenu = new QPopupMenu( menuBar );
73 QPopupMenu *viewMenu = new QPopupMenu( menuBar ); 73 QPopupMenu *viewMenu = new QPopupMenu( menuBar );
74 QPopupMenu *cfgMenu = new QPopupMenu( menuBar ); 74 QPopupMenu *cfgMenu = new QPopupMenu( menuBar );
75 // QPopupMenu *sectMenu = new QPopupMenu( menuBar ); 75 // QPopupMenu *sectMenu = new QPopupMenu( menuBar );
76 76
77 popupMenu = new QPopupMenu( this ); 77 popupMenu = new QPopupMenu( this );
78 78
79 contextMenu = new QPopupMenu( this ); 79 contextMenu = new QPopupMenu( this );
80 80
81 setToolBarsMovable( false ); 81 setToolBarsMovable( false );
82 toolBar->setHorizontalStretchable( true ); 82 toolBar->setHorizontalStretchable( true );
83 menuBar->insertItem( tr( "Package" ), srvMenu ); 83 menuBar->insertItem( tr( "Package" ), srvMenu );
84 menuBar->insertItem( tr( "View" ), viewMenu ); 84 menuBar->insertItem( tr( "View" ), viewMenu );
85 menuBar->insertItem( tr( "Settings" ), cfgMenu ); 85 menuBar->insertItem( tr( "Settings" ), cfgMenu );
86 // menuBar->insertItem( tr( "Sections" ), sectMenu ); 86 // menuBar->insertItem( tr( "Sections" ), sectMenu );
87 87
88 QLabel *spacer = new QLabel( "", toolBar ); 88 QLabel *spacer = new QLabel( "", toolBar );
89 spacer->setBackgroundColor( toolBar->backgroundColor() ); 89 spacer->setBackgroundColor( toolBar->backgroundColor() );
90 toolBar->setStretchableWidget( spacer ); 90 toolBar->setStretchableWidget( spacer );
91 91
92 92
93 runAction = new QAction( tr( "Commit" ), 93 runAction = new QAction( tr( "Apply" ),
94 Resource::loadPixmap( "oipkg/install" ), 94 Resource::loadPixmap( "oipkg/install" ),
95 QString::null, 0, this, 0 ); 95 QString::null, 0, this, 0 );
96 connect( runAction, SIGNAL( activated() ), 96 connect( runAction, SIGNAL( activated() ),
97 this, SLOT( runIpkg() ) ); 97 this, SLOT( runIpkg() ) );
98 runAction->addTo( toolBar ); 98 runAction->addTo( toolBar );
99 runAction->addTo( srvMenu ); 99 runAction->addTo( srvMenu );
100 100
101 srvMenu->insertSeparator (); 101 srvMenu->insertSeparator ();
102 102
103 updateAction = new QAction( tr( "Update" ), 103 updateAction = new QAction( tr( "Update" ),
104 Resource::loadIconSet( "oipkg/update" ), 104 Resource::loadIconSet( "oipkg/update" ),
105 QString::null, 0, this, 0 ); 105 QString::null, 0, this, 0 );
106 connect( updateAction, SIGNAL( activated() ), 106 connect( updateAction, SIGNAL( activated() ),
107 this , SLOT( updateList() ) ); 107 this , SLOT( updateList() ) );
108 updateAction->addTo( toolBar ); 108 updateAction->addTo( toolBar );
109 updateAction->addTo( srvMenu ); 109 updateAction->addTo( srvMenu );
110 110
111 detailsAction = new QAction( tr( "Details" ), 111 detailsAction = new QAction( tr( "Details" ),
112 Resource::loadIconSet( "find" ), 112 Resource::loadIconSet( "find" ),
113 QString::null, 0, this, 0 ); 113 QString::null, 0, this, 0 );
114 connect( detailsAction, SIGNAL( activated() ), 114 connect( detailsAction, SIGNAL( activated() ),
115 this , SLOT( showDetails() ) ); 115 this , SLOT( showDetails() ) );
116 detailsAction->addTo( toolBar ); 116 detailsAction->addTo( toolBar );
117 detailsAction->addTo( srvMenu ); 117 detailsAction->addTo( srvMenu );
@@ -150,78 +150,78 @@ void MainWindow::makeMenu()
150// section->setBackgroundMode( PaletteBackground ); 150// section->setBackgroundMode( PaletteBackground );
151 label = new QLabel( " / ", sectionBar ); 151 label = new QLabel( " / ", sectionBar );
152 label->setBackgroundColor( sectionBar->backgroundColor() ); 152 label->setBackgroundColor( sectionBar->backgroundColor() );
153 subsection = new QComboBox( false, sectionBar ); 153 subsection = new QComboBox( false, sectionBar );
154 154
155 a = new QAction( tr( "Close Section" ), Resource::loadPixmap( "close" ), QString::null, 0, this, 0 ); 155 a = new QAction( tr( "Close Section" ), Resource::loadPixmap( "close" ), QString::null, 0, this, 0 );
156 connect( a, SIGNAL( activated() ), this, SLOT( sectionClose() ) ); 156 connect( a, SIGNAL( activated() ), this, SLOT( sectionClose() ) );
157 a->addTo( sectionBar ); 157 a->addTo( sectionBar );
158 158
159 sectionAction = new QAction( tr( "Sections" ), QString::null, 0, this, 0 ); 159 sectionAction = new QAction( tr( "Sections" ), QString::null, 0, this, 0 );
160 connect( sectionAction, SIGNAL( toggled(bool) ), this, SLOT( sectionShow(bool) ) ); 160 connect( sectionAction, SIGNAL( toggled(bool) ), this, SLOT( sectionShow(bool) ) );
161 sectionAction->setToggleAction( true ); 161 sectionAction->setToggleAction( true );
162 sectionAction->setOn( true ); 162 sectionAction->setOn( true );
163 sectionAction->addTo( viewMenu ); 163 sectionAction->addTo( viewMenu );
164 164
165 findBar = new QPEToolBar(this); 165 findBar = new QPEToolBar(this);
166 addToolBar( findBar, "Search", QMainWindow::Top, TRUE ); 166 addToolBar( findBar, "Search", QMainWindow::Top, TRUE );
167 label = new QLabel( tr("Filter: "), findBar ); 167 label = new QLabel( tr("Filter: "), findBar );
168 label->setBackgroundColor( findBar->backgroundColor() ); 168 label->setBackgroundColor( findBar->backgroundColor() );
169 findBar->setHorizontalStretchable( TRUE ); 169 findBar->setHorizontalStretchable( TRUE );
170 findEdit = new QLineEdit( findBar, "findEdit" ); 170 findEdit = new QLineEdit( findBar, "findEdit" );
171 findBar->setStretchableWidget( findEdit ); 171 findBar->setStretchableWidget( findEdit );
172 connect( findEdit, SIGNAL( textChanged( const QString & ) ), 172 connect( findEdit, SIGNAL( textChanged( const QString & ) ),
173 this, SLOT( displayList() ) ); 173 this, SLOT( displayList() ) );
174 //a = new QAction( tr( "Filter" ), Resource::loadPixmap( "next" ), QString::null, 0, this, 0 ); 174
175// connect( a, SIGNAL( activated() ), this, SLOT( filterList() ) );
176// a->addTo( findBar );
177// a->addTo( edit );
178 a = new QAction( tr( "Close Find" ), Resource::loadPixmap( "close" ), QString::null, 0, this, 0 ); 175 a = new QAction( tr( "Close Find" ), Resource::loadPixmap( "close" ), QString::null, 0, this, 0 );
179 connect( a, SIGNAL( activated() ), this, SLOT( findClose() ) ); 176 connect( a, SIGNAL( activated() ), this, SLOT( findClose() ) );
180 a->addTo( findBar ); 177 a->addTo( findBar );
181 findAction = new QAction( tr( "Find" ), QString::null, 0, this, 0 ); 178 findAction = new QAction( tr( "Find" ), QString::null, 0, this, 0 );
182 connect( findAction, SIGNAL( toggled(bool) ), this, SLOT( findShow(bool) ) ); 179 connect( findAction, SIGNAL( toggled(bool) ), this, SLOT( findShow(bool) ) );
183 findAction->setToggleAction( true ); 180 findAction->setToggleAction( true );
184 findAction->setOn( true ); 181 findAction->setOn( true );
185 findAction->addTo( viewMenu ); 182 findAction->addTo( viewMenu );
186
187} 183}
188 184
189MainWindow::~MainWindow() 185MainWindow::~MainWindow()
190{ 186{
191} 187}
192 188
193void MainWindow::runIpkg() 189void MainWindow::runIpkg()
194{ 190{
195 ipkg->commit( packageList ); 191 ipkg->commit( packageList );
196 updateList(); //to remove 192// updateList(); //to remove
197} 193}
198 194
199void MainWindow::updateList() 195void MainWindow::updateList()
200{ 196{
197 QTimer *t = new QTimer( this );
198 connect( t, SIGNAL(timeout()), SLOT( rotateUpdateIcon() ) );
199 t->start( 0, false );
201 packageList.clear(); 200 packageList.clear();
202 ipkg->update(); 201 ipkg->update();
203 getList(); 202 getList();
203 t->stop();
204} 204}
205 205
206void MainWindow::getList() 206void MainWindow::getList()
207{ 207{
208 packageList.update(); 208 packageList.update();
209 displayList(); 209 displayList();
210} 210}
211 211
212void MainWindow::filterList() 212void MainWindow::filterList()
213{ 213{
214 QString f = ""; 214 QString f = "";
215 if ( findAction->isOn() ) f = findEdit->text(); 215 if ( findAction->isOn() ) f = findEdit->text();
216 packageList.filterPackages( f ); 216 packageList.filterPackages( f );
217} 217}
218 218
219void MainWindow::displayList() 219void MainWindow::displayList()
220{ 220{
221 filterList(); 221 filterList();
222 listViewPackages->clear(); 222 listViewPackages->clear();
223 Package *pack = packageList.first(); 223 Package *pack = packageList.first();
224 while( pack ) 224 while( pack )
225 { 225 {
226 if ( pack && (pack->name() != "") ) 226 if ( pack && (pack->name() != "") )
227 listViewPackages->insertItem( new PackageListItem( listViewPackages, pack ) ); 227 listViewPackages->insertItem( new PackageListItem( listViewPackages, pack ) );
@@ -325,24 +325,33 @@ void MainWindow::setCurrent( QListViewItem* p )
325void MainWindow::sectionShow(bool b) 325void MainWindow::sectionShow(bool b)
326{ 326{
327 if (b) sectionBar->show(); 327 if (b) sectionBar->show();
328 else sectionBar->hide(); 328 else sectionBar->hide();
329 sectionAction->setOn( b ); 329 sectionAction->setOn( b );
330} 330}
331 331
332void MainWindow::sectionClose() 332void MainWindow::sectionClose()
333{ 333{
334 sectionAction->setOn( false ); 334 sectionAction->setOn( false );
335} 335}
336 336
337void MainWindow::findShow(bool b) 337void MainWindow::findShow(bool b)
338{ 338{
339 if (b) findBar->show(); 339 if (b) findBar->show();
340 else findBar->hide(); 340 else findBar->hide();
341 findAction->setOn( b ); 341 findAction->setOn( b );
342} 342}
343 343
344void MainWindow::findClose() 344void MainWindow::findClose()
345{ 345{
346 findAction->setOn( false ); 346 findAction->setOn( false );
347} 347}
348 348
349void MainWindow::rotateUpdateIcon()
350{
351 pvDebug(2, "MainWindow::rotateUpdateIcon");
352 if ( updateIcon )
353 updateAction->setIconSet( Resource::loadIconSet( "oipkg/update" ) );
354 else
355 updateAction->setIconSet( Resource::loadIconSet( "oipkg/update2" ) );
356 updateIcon = !updateIcon;
357}
diff --git a/noncore/unsupported/oipkg/mainwindow.h b/noncore/unsupported/oipkg/mainwindow.h
index 0c1e474..892d5e8 100644
--- a/noncore/unsupported/oipkg/mainwindow.h
+++ b/noncore/unsupported/oipkg/mainwindow.h
@@ -1,29 +1,30 @@
1#ifndef MAINWINDOW_H 1#ifndef MAINWINDOW_H
2#define MAINWINDOW_H 2#define MAINWINDOW_H
3 3
4#include <qmainwindow.h> 4#include <qmainwindow.h>
5#include <qaction.h> 5#include <qaction.h>
6#include <qtimer.h>
6#include <qpopupmenu.h> 7#include <qpopupmenu.h>
7 8
8#include "packagelist.h" 9#include "packagelist.h"
9#include "pmipkg.h" 10#include "pmipkg.h"
10#include "pksettings.h" 11#include "pksettings.h"
11#include "pkdesc.h" 12#include "pkdesc.h"
12 13
13class QComboBox; 14class QComboBox;
14class QPEToolBar; 15class QPEToolBar;
15class QLineEdit; 16class QLineEdit;
16class QListView; 17class QListView;
17 18
18 19
19class MainWindow : public QMainWindow 20class MainWindow : public QMainWindow
20{ 21{
21 Q_OBJECT 22 Q_OBJECT
22 23
23 24
24public: 25public:
25 MainWindow( QWidget *parent = 0, const char *name = 0, WFlags f = 0 ); 26 MainWindow( QWidget *parent = 0, const char *name = 0, WFlags f = 0 );
26 ~MainWindow(); 27 ~MainWindow();
27 28
28protected slots: 29protected slots:
29 void runIpkg(); 30 void runIpkg();
@@ -48,27 +49,30 @@ public slots:
48 49
49private: 50private:
50 void makeMenu(); 51 void makeMenu();
51 void setSections(); 52 void setSections();
52 void setSubSections(); 53 void setSubSections();
53 54
54 PmIpkg* ipkg; 55 PmIpkg* ipkg;
55 PackageManagerSettings *settings; 56 PackageManagerSettings *settings;
56 PackageDetails* details; 57 PackageDetails* details;
57 PackageList packageList; 58 PackageList packageList;
58 Package *activePackage; 59 Package *activePackage;
59 QAction *runAction; 60 QAction *runAction;
60 QAction *detailsAction; 61 QAction *detailsAction;
61 QAction *updateAction; 62 QAction *updateAction;
62 QAction *findAction; 63 QAction *findAction;
63 QAction *sectionAction; 64 QAction *sectionAction;
64 QListView *listViewPackages; 65 QListView *listViewPackages;
65 QPopupMenu *contextMenu; 66 QPopupMenu *contextMenu;
66 QPEToolBar *findBar; 67 QPEToolBar *findBar;
67 QLineEdit *findEdit; 68 QLineEdit *findEdit;
68 QPEToolBar *sectionBar; 69 QPEToolBar *sectionBar;
69 QComboBox *section; 70 QComboBox *section;
70 QComboBox *subsection; 71 QComboBox *subsection;
71 QPopupMenu *popupMenu; 72 QPopupMenu *popupMenu;
73 bool updateIcon;
74private slots:
75 void rotateUpdateIcon();
72}; 76};
73 77
74#endif 78#endif
diff --git a/noncore/unsupported/oipkg/pksettings.h b/noncore/unsupported/oipkg/pksettings.h
index cda352a..2982f1c 100644
--- a/noncore/unsupported/oipkg/pksettings.h
+++ b/noncore/unsupported/oipkg/pksettings.h
@@ -1,46 +1,45 @@
1#ifndef PACKAGEMANAGERSETTINGS_H 1#ifndef PACKAGEMANAGERSETTINGS_H
2#define PACKAGEMANAGERSETTINGS_H 2#define PACKAGEMANAGERSETTINGS_H
3 3
4#include "pksettingsbase.h" 4#include "pksettingsbase.h"
5#include <qintdict.h> 5#include <qintdict.h>
6 6
7 7
8class PackageManagerSettings : private PackageManagerSettingsBase 8class PackageManagerSettings : private PackageManagerSettingsBase
9{ 9{
10 // Q_OBJECT 10 // Q_OBJECT
11public: 11public:
12 PackageManagerSettings( QWidget* , const char* , WFlags ); 12 PackageManagerSettings( QWidget* , const char* , WFlags );
13 ~PackageManagerSettings(); 13 ~PackageManagerSettings();
14 14
15 bool showDialog( int ) ; 15 bool showDialog( int ) ;
16 QString getDestinationUrl(); 16 QString getDestinationUrl();
17 QString getDestinationName(); 17 QString getDestinationName();
18 QString getLinkDestinationName(); 18 QString getLinkDestinationName();
19 bool createLinks(); 19 bool createLinks();
20 QStringList getActiveServers(); 20 QStringList getActiveServers();
21 QStringList getDestinationUrls(); 21 QStringList getDestinationUrls();
22
23private: 22private:
24 QIntDict<QString> serverurlDic; 23 QIntDict<QString> serverurlDic;
25 QIntDict<QString> destinationurlDic; 24 QIntDict<QString> destinationurlDic;
26 int ipkg_old; 25 int ipkg_old;
27 int editedserver; 26 int editedserver;
28 int editeddestination; 27 int editeddestination;
29 int currentSetting; 28 int currentSetting;
30 int installationSettingsCount; 29 int installationSettingsCount;
31 bool changed; 30 bool changed;
32 31
33 bool readIpkgConfig(const QString&); 32 bool readIpkgConfig(const QString&);
34 void writeIpkgConfig(const QString&); 33 void writeIpkgConfig(const QString&);
35 void writeSettings(); 34 void writeSettings();
36 void readSettings(); 35 void readSettings();
37 36
38public slots: 37public slots:
39 void writeInstallationSettings(); 38 void writeInstallationSettings();
40 void readInstallationSettings(); 39 void readInstallationSettings();
41 void writeCurrentInstallationSetting(); 40 void writeCurrentInstallationSetting();
42 void readInstallationSetting(int); 41 void readInstallationSetting(int);
43 void installationSettingSetName(const QString &); 42 void installationSettingSetName(const QString &);
44 43
45 void newServer(); 44 void newServer();
46 void editServer(int); 45 void editServer(int);
diff --git a/noncore/unsupported/oipkg/pmipkg.cpp b/noncore/unsupported/oipkg/pmipkg.cpp
index b23b9ea..eae73ad 100644
--- a/noncore/unsupported/oipkg/pmipkg.cpp
+++ b/noncore/unsupported/oipkg/pmipkg.cpp
@@ -22,48 +22,56 @@
22 22
23#include <stdlib.h> 23#include <stdlib.h>
24#include <unistd.h> 24#include <unistd.h>
25 25
26#include "mainwindow.h" 26#include "mainwindow.h"
27 27
28 28
29PmIpkg::PmIpkg( PackageManagerSettings* s, QWidget* p, const char * name, WFlags f ) 29PmIpkg::PmIpkg( PackageManagerSettings* s, QWidget* p, const char * name, WFlags f )
30 : QObject ( p ) 30 : QObject ( p )
31{ 31{
32 settings = s; 32 settings = s;
33 runwindowopen = false; 33 runwindowopen = false;
34 runwindow = new RunWindow( p, name, true, f ); 34 runwindow = new RunWindow( p, name, true, f );
35} 35}
36 36
37PmIpkg::~PmIpkg() 37PmIpkg::~PmIpkg()
38{ 38{
39} 39}
40 40
41//#define PROC 41//#define PROC
42#define SYSTEM 42#define SYSTEM
43int PmIpkg::runIpkg(const QString& args) 43int PmIpkg::runIpkg(const QString& args)
44{ 44{
45 pvDebug(2,"PmIpkg::runIpkg "+args); 45 pvDebug(2,"PmIpkg::runIpkg "+args);
46
47 //to make script ipkg happy
48 pvDebug(2, "cd "+settings->getDestinationUrl()+"/tmp/ipkg");
49 if (!QDir::setCurrent(settings->getDestinationUrl()+"/tmp/ipkg"))
50 {
51 QDir instDir = QDir(settings->getDestinationUrl()+"/tmp/ipkg");
52 instDir.mkdir(settings->getDestinationUrl()+"/tmp/ipkg");
53 }
46#ifdef PROC 54#ifdef PROC
47 QStringList cmd = "/usr/bin/ipkg "; 55 QStringList cmd = "/usr/bin/ipkg ";
48#endif 56#endif
49#ifdef SYSTEM 57#ifdef SYSTEM
50 QString cmd = "/usr/bin/ipkg "; 58 QString cmd = "/usr/bin/ipkg ";
51#endif 59#endif
52 cmd += " -dest "+settings->getDestinationName(); 60 cmd += " -dest "+settings->getDestinationName();
53 cmd += " -force-defaults "; 61 cmd += " -force-defaults ";
54 62
55 out( "<hr><br>Starting to "+ args+"<br>\n"); 63 out( "<hr><br>Starting to "+ args+"<br>\n");
56 cmd += args; 64 cmd += args;
57 out( "running:<br>\n"+cmd+"<br>\n" ); 65 out( "running:<br>\n"+cmd+"<br>\n" );
58 int r = 0; 66 int r = 0;
59#ifdef PROC 67#ifdef PROC
60 QString o = "start"; 68 QString o = "start";
61 Process ipkg( cmd ); 69 Process ipkg( cmd );
62 QString description; 70 QString description;
63 ipkg.exec("",o); 71 ipkg.exec("",o);
64 out( o ); 72 out( o );
65#endif 73#endif
66#ifdef SYSTEM 74#ifdef SYSTEM
67 QString redirect = "/tmp/oipkg.pipe"; 75 QString redirect = "/tmp/oipkg.pipe";
68 cmd += " | tee "+redirect+" 2>&1"; 76 cmd += " | tee "+redirect+" 2>&1";
69 pvDebug(2, "running >"+cmd+"<"); 77 pvDebug(2, "running >"+cmd+"<");
@@ -132,131 +140,178 @@ void PmIpkg::processLinkDir( QString file, QString dest )
132 QFileInfo *fi; 140 QFileInfo *fi;
133 while ( (fi=it.current()) ) 141 while ( (fi=it.current()) )
134 { 142 {
135 // out( "<b>"+fi->absFilePath()+"</b>" ); 143 // out( "<b>"+fi->absFilePath()+"</b>" );
136 processLinkDir( fi->absFilePath(), dest ); 144 processLinkDir( fi->absFilePath(), dest );
137 ++it; 145 ++it;
138 } 146 }
139 } else 147 } else
140 if ( fileInfo.isFile() ) 148 if ( fileInfo.isFile() )
141 { 149 {
142 const char *instFile = strdup( (file).ascii() ); 150 const char *instFile = strdup( (file).ascii() );
143 const char *linkFile = strdup( (destFile).ascii()); 151 const char *linkFile = strdup( (destFile).ascii());
144// out( "linking: "+file+" -> "+destFile ); 152// out( "linking: "+file+" -> "+destFile );
145 qDebug( "linking: %s -> %s", instFile, linkFile ); 153 qDebug( "linking: %s -> %s", instFile, linkFile );
146 symlink( instFile, linkFile ); 154 symlink( instFile, linkFile );
147 } 155 }
148} 156}
149 157
150void PmIpkg::commit( PackageList pl ) 158void PmIpkg::commit( PackageList pl )
151 { 159 {
152 show( false ); 160 show( false );
153 runwindow->outPut->setText(""); 161 runwindow->outPut->setText("");
154 out( "<h1>"+tr("Todo")+"</h1>\n"); 162 out( "<h1>"+tr("Todo")+"</h1>\n");
155 163
164 to_install.clear();
165 to_remove.clear();
166 int sizecount = 0;
156 QString rem="<b>To remove:</b><br>\n"; 167 QString rem="<b>To remove:</b><br>\n";
157 QString inst="<b>To install:</b><br>\n";; 168 QString inst="<b>To install:</b><br>\n";;
158 for( Package *pack = pl.first();pack ; (pack = pl.next()) ) 169 for( Package *pack = pl.first();pack ; (pack = pl.next()) )
159 { 170 {
160 if ( pack && (pack->name() != "") && pack) 171 if ( pack && (pack->name() != "") && pack)
161 { 172 {
162 if ( pack->toInstall() ) 173 if ( pack->toInstall() )
163 { 174 {
175 #ifndef NEWLIST
164 to_install.append( pack->name() ); 176 to_install.append( pack->name() );
177 #endif
178 #ifdef NEWLIST
179 to_install.append( pack );
180 sizecount += pack->size().toInt();
181 #endif
165 inst += pack->name()+"<br>"; 182 inst += pack->name()+"<br>";
166 } 183 }
167 if ( pack->toRemove() ) 184 if ( pack->toRemove() )
168 { 185 {
186 #ifndef NEWLIST
169 to_remove.append( pack->name() ); 187 to_remove.append( pack->name() );
188 #endif
189 #ifdef NEWLIST
190 to_remove.append( pack );
191 sizecount += 1;
192 #endif
170 rem += pack->name()+"<br>"; 193 rem += pack->name()+"<br>";
171 } 194 }
172 } 195 }
173 } 196 }
174 197
175 out("<p>"+inst+"</p>"+"<p>"+rem+"</p><hl>"); 198 out("<p>"+inst+"</p>"+"<p>"+rem+"</p><hl>");
176 199
177 qDebug("to remove=%i; to install=%i",to_remove.count(),to_install.count()); 200 qDebug("to remove=%i; to install=%i",to_remove.count(),to_install.count());
178 201
202 runwindow->progress->setTotalSteps( sizecount );
203
179 connect( runwindow->doItButton, SIGNAL( clicked() ), 204 connect( runwindow->doItButton, SIGNAL( clicked() ),
180 SLOT( doIt() ) ); 205 SLOT( doIt() ) );
181 connect( runwindow->installButton, SIGNAL( clicked() ), 206 connect( runwindow->installButton, SIGNAL( clicked() ),
182 this, SLOT( install() ) ); 207 this, SLOT( install() ) );
183 connect( runwindow->removeButton, SIGNAL( clicked() ), 208 connect( runwindow->removeButton, SIGNAL( clicked() ),
184 this, SLOT( remove() ) ); 209 this, SLOT( remove() ) );
185 connect( runwindow->cancelButton, SIGNAL( clicked() ), 210 connect( runwindow->cancelButton, SIGNAL( clicked() ),
186 runwindow, SLOT( close() ) ); 211 runwindow, SLOT( close() ) );
187 212
188 runwindow->exec(); 213 runwindow->exec();
189 // ##### If we looked in the list of files, we could send out accurate 214 // ##### If we looked in the list of files, we could send out accurate
190 // ##### messages. But we don't bother yet, and just do an "all". 215 // ##### messages. But we don't bother yet, and just do an "all".
191 QCopEnvelope e("QPE/System", "linkChanged(QString)"); 216 QCopEnvelope e("QPE/System", "linkChanged(QString)");
192 QString lf = QString::null; 217 QString lf = QString::null;
193 e << lf; 218 e << lf;
194 return; 219 return;
195} 220}
196 221
197void PmIpkg::doIt() 222void PmIpkg::doIt()
198{ 223{
199 remove(); 224 remove();
200 install(); 225 install();
201} 226}
202 227
203 228
204void PmIpkg::remove() 229void PmIpkg::remove()
205{ 230{
206 if ( to_remove.count() == 0 ) return; 231 if ( to_remove.count() == 0 ) return;
207 show( true ); 232 show( true );
208 233
209 out("<hr><hr><b>"+tr("Removing")+"<br>"+tr("please wait")+"</b><br>"); 234 out("<hr><hr><b>"+tr("Removing")+"<br>"+tr("please wait")+"</b><br>");
210 for (QStringList::ConstIterator it=to_remove.begin(); it!=to_remove.end(); ++it) 235
211 { 236 #ifndef NEWLIST
237 for (QStringList::ConstIterator it=to_remove.begin(); it!=to_remove.end(); ++it)
238 {
212 if ( runIpkg("remove " + *it) == 0) 239 if ( runIpkg("remove " + *it) == 0)
213 { 240 {
214 241
215 }else{ 242 }else{
216 out("<b>"+tr("Error while removing")+"</b>"+*it); 243 out("<b>"+tr("Error while removing")+"</b>"+*it);
217 } 244 }
218 } 245 }
246#endif
247 #ifdef NEWLIST
248 for (Package *it=to_remove.first(); it != 0; it=to_remove.next() )
249 {
250 if ( runIpkg("remove " + it->name()) == 0)
251 {
252 runwindow->progress->setProgress( it->size().toInt() + runwindow->progress->progress());
253 it->processed();
254 runwindow->progress->setProgress( 1 );
255 }else{
256 out("<b>"+tr("Error while removing")+"</b>"+it->name());
257 }
258 }
259#endif
219} 260}
220 261
221 262
222void PmIpkg::install() 263void PmIpkg::install()
223{ 264{
224 if ( to_install.count() == 0 ) return; 265 if ( to_install.count() == 0 ) return;
225 show( true ); 266 show( true );
226 out("<hr><hr><b>"+tr("Installing")+"<br>"+tr("please wait")+"<b><br>"); 267 out("<hr><hr><b>"+tr("Installing")+"<br>"+tr("please wait")+"</b><br>");
227 if ( to_install.count() ) 268 #ifndef NEWLIST
228 for (QStringList::ConstIterator it=to_install.begin(); it!=to_install.end(); ++it) 269 for (QStringList::ConstIterator it=to_install.begin(); it!=to_install.end(); ++it)
229 { 270 {
230 if ( runIpkg("install " + *it) == 0 ) 271 if ( runIpkg("install " + *it) == 0 )
231 { 272 {
232 if ( settings->createLinks() ) 273 if ( settings->createLinks() )
233 makeLinks( *it ); 274 makeLinks( *it );
234 }else{ 275 }else{
235 out("<b>"+tr("Error while installing")+"</b>"+*it); 276 out("<b>"+tr("Error while installing")+"</b>"+*it);
236 } 277 }
237 } 278 }
238 279#endif
280 #ifdef NEWLIST
281 for (Package *it=to_install.first(); it != 0; it=to_install.next() )
282 {
283 if ( runIpkg("install " + it->name()) == 0 )
284 {
285 runwindow->progress->setProgress( it->size().toInt() + runwindow->progress->progress());
286 if ( settings->createLinks() )
287 makeLinks( it->name() );
288 it->processed();
289 }else{
290 out("<b>"+tr("Error while installing")+"</b>"+it->name());
291 }
292 }
293#endif
239} 294}
240 295
241void PmIpkg::linkDestination( const QString msg, const QByteArray dest ) 296void PmIpkg::linkDestination( const QString msg, const QByteArray dest )
242// add 3rd package parameter 297// add 3rd package parameter
243{ 298{
244 qDebug("msg="+msg+" -- "+QString(dest) ); 299 qDebug("msg="+msg+" -- "+QString(dest) );
245// QDir d( src ); 300// QDir d( src );
246// d.setFilter( QDir::Files | QDir::Hidden | QDir::NoSymLinks ); 301// d.setFilter( QDir::Files | QDir::Hidden | QDir::NoSymLinks );
247//// if (! d.exists() ) return; 302//// if (! d.exists() ) return;
248// const QFileInfoList *list = d.entryInfoList(); 303// const QFileInfoList *list = d.entryInfoList();
249// QFileInfoListIterator it( *list ); 304// QFileInfoListIterator it( *list );
250// QFileInfo *fi; 305// QFileInfo *fi;
251// while ( (fi=it.current()) ) { 306// while ( (fi=it.current()) ) {
252 // processLinkDir( fi->absFilePath(), dest ); 307 // processLinkDir( fi->absFilePath(), dest );
253// ++it; 308// ++it;
254// } 309// }
255} 310}
256 311
257void PmIpkg::update() 312void PmIpkg::update()
258{ 313{
259 show( false ); 314 show( false );
260 runIpkg( "update" ); 315 runIpkg( "update" );
261 runwindow->close(); 316 runwindow->close();
262} 317}
@@ -269,29 +324,29 @@ void PmIpkg::out( QString o )
269 324
270 325
271void PmIpkg::showButtons(bool b) 326void PmIpkg::showButtons(bool b)
272{ 327{
273 if ( b ) 328 if ( b )
274 { 329 {
275 runwindow->cancelButton->hide(); 330 runwindow->cancelButton->hide();
276 runwindow->doItButton->hide(); 331 runwindow->doItButton->hide();
277 runwindow->removeButton->hide(); 332 runwindow->removeButton->hide();
278 runwindow->installButton->hide(); 333 runwindow->installButton->hide();
279 }else{ 334 }else{
280 runwindow->cancelButton->show(); 335 runwindow->cancelButton->show();
281 runwindow->doItButton->show(); 336 runwindow->doItButton->show();
282 runwindow->removeButton->show(); 337 runwindow->removeButton->show();
283 runwindow->installButton->show(); 338 runwindow->installButton->show();
284 339
285 } 340 }
286} 341}
287 342
288void PmIpkg::show(bool b) 343void PmIpkg::show(bool b)
289{ 344{
290 if (!runwindow->isVisible()) 345 if (!runwindow->isVisible())
291 runwindow->showMaximized(); 346 runwindow->showMaximized();
292 showButtons(b); 347 showButtons(b);
293 if ( b ) 348 //if ( b )
294 runwindow->progress->show(); 349 runwindow->progress->hide();
295 else 350// else
296 runwindow->progress->show(); 351 // runwindow->progress->show();
297} 352}
diff --git a/noncore/unsupported/oipkg/pmipkg.h b/noncore/unsupported/oipkg/pmipkg.h
index 8718f49..2692017 100644
--- a/noncore/unsupported/oipkg/pmipkg.h
+++ b/noncore/unsupported/oipkg/pmipkg.h
@@ -1,48 +1,55 @@
1#ifndef PMIPKG_H 1#ifndef PMIPKG_H
2#define PMIPKG_H 2#define PMIPKG_H
3 3
4 4
5#include <qobject.h> 5#include <qobject.h>
6#include <qlist.h>
6#include <qstring.h> 7#include <qstring.h>
7#include <qwidget.h> 8#include <qwidget.h>
8#include "pksettings.h" 9#include "pksettings.h"
9#include "runwindow.h" 10#include "runwindow.h"
10#include "packagelist.h" 11#include "packagelist.h"
11#include "debug.h" 12#include "debug.h"
12 13
13 14//#define NEWLIST
14 15class Package;
15class PmIpkg : public QObject 16class PmIpkg : public QObject
16{ 17{
17 Q_OBJECT 18 Q_OBJECT
18public: 19public:
19 PmIpkg( PackageManagerSettings* , QWidget* p=0, const char * name=0, WFlags f=0 ); 20 PmIpkg( PackageManagerSettings* , QWidget* p=0, const char * name=0, WFlags f=0 );
20 ~PmIpkg(); 21 ~PmIpkg();
21 22
22 void commit( PackageList ); 23 void commit( PackageList );
23 void update(); 24 void update();
24 PackageList* getPackageList(); 25 PackageList* getPackageList();
25 void showButtons(bool b=true); 26 void showButtons(bool b=true);
26 void show( bool buttons=true ); 27 void show( bool buttons=true );
27 28
28private: 29private:
29 PackageManagerSettings* settings; 30 PackageManagerSettings* settings;
30 RunWindow *runwindow; 31 RunWindow *runwindow;
32#ifndef NEWLIST
31 QStringList to_remove; 33 QStringList to_remove;
32 QStringList to_install; 34 QStringList to_install;
35#endif
36#ifdef NEWLIST
37 QList<Package> to_remove;
38 QList<Package> to_install;
39#endif
33 bool runwindowopen; 40 bool runwindowopen;
34 41
35 void makeLinks(QString); 42 void makeLinks(QString);
36 void processLinkDir( QString, QString ); 43 void processLinkDir( QString, QString );
37 44
38 int runIpkg(const QString& args); 45 int runIpkg(const QString& args);
39 void out( QString ); 46 void out( QString );
40 47
41public slots: 48public slots:
42 void doIt(); 49 void doIt();
43 void install(); 50 void install();
44 void remove(); 51 void remove();
45 void linkDestination( const QString, const QByteArray ); 52 void linkDestination( const QString, const QByteArray );
46}; 53};
47 54
48#endif 55#endif
diff --git a/noncore/unsupported/oipkg/settings.h b/noncore/unsupported/oipkg/settings.h
index d4b1072..5df522b 100644
--- a/noncore/unsupported/oipkg/settings.h
+++ b/noncore/unsupported/oipkg/settings.h
@@ -1,45 +1,48 @@
1#ifndef PACKAGEMANAGERSETTINGS_H 1#ifndef PACKAGEMANAGERSETTINGS_H
2#define PACKAGEMANAGERSETTINGS_H 2#define PACKAGEMANAGERSETTINGS_H
3 3
4#include "pksettingsbase.h" 4#include "pksettingsbase.h"
5#include <qintdict.h> 5#include <qintdict.h>
6 6
7 7
8class PackageManagerSettings : private PackageManagerSettingsBase 8class PackageManagerSettings : public PackageManagerSettingsBase
9//class PackageManagerSettings : private PackageManagerSettingsBase
9{ 10{
10 // Q_OBJECT 11 // Q_OBJECT
11public: 12public:
12 PackageManagerSettings( QWidget* , const char* , WFlags ); 13 PackageManagerSettings( QWidget* , const char* , WFlags );
13 ~PackageManagerSettings(); 14 ~PackageManagerSettings();
14 15
15 bool showDialog( int ) ; 16 bool showDialog( int ) ;
16 QString getDestinationUrl(); 17 QString getDestinationUrl();
17 QString getDestinationName(); 18 QString getDestinationName();
18 QString getLinkDestinationName(); 19 QString getLinkDestinationName();
19 bool createLinks(); 20 bool createLinks();
20 QStringList getActiveServers(); 21 QStringList getActiveServers();
21 QStringList getDestinationUrls(); 22 QStringList getDestinationUrls();
23 /** No descriptions */
24 QComboBox getActiveDestinationCombo();
22 25
23private: 26private:
24 QIntDict<QString> serverurlDic; 27 QIntDict<QString> serverurlDic;
25 QIntDict<QString> destinationurlDic; 28 QIntDict<QString> destinationurlDic;
26 int ipkg_old; 29 int ipkg_old;
27 int editedserver; 30 int editedserver;
28 int editeddestination; 31 int editeddestination;
29 int currentSetting; 32 int currentSetting;
30 int installationSettingsCount; 33 int installationSettingsCount;
31 bool changed; 34 bool changed;
32 35
33 bool readIpkgConfig(const QString&); 36 bool readIpkgConfig(const QString&);
34 void writeIpkgConfig(const QString&); 37 void writeIpkgConfig(const QString&);
35 void writeSettings(); 38 void writeSettings();
36 void readSettings(); 39 void readSettings();
37 40
38public slots: 41public slots:
39 void writeInstallationSettings(); 42 void writeInstallationSettings();
40 void readInstallationSettings(); 43 void readInstallationSettings();
41 void writeCurrentInstallationSetting(); 44 void writeCurrentInstallationSetting();
42 void readInstallationSetting(int); 45 void readInstallationSetting(int);
43 void installationSettingSetName(const QString &); 46 void installationSettingSetName(const QString &);
44 47
45 void newServer(); 48 void newServer();