summaryrefslogtreecommitdiff
path: root/noncore
Unidiff
Diffstat (limited to 'noncore') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/unsupported/oipkg/mainwindow.cpp10
-rw-r--r--noncore/unsupported/oipkg/oipkg.pro3
-rw-r--r--noncore/unsupported/oipkg/package.cpp10
-rw-r--r--noncore/unsupported/oipkg/package.h2
-rw-r--r--noncore/unsupported/oipkg/pksettingsbase.ui10
-rw-r--r--noncore/unsupported/oipkg/pmipkg.cpp142
-rw-r--r--noncore/unsupported/oipkg/pmipkg.h14
-rw-r--r--noncore/unsupported/oipkg/runwindow.ui112
8 files changed, 233 insertions, 70 deletions
diff --git a/noncore/unsupported/oipkg/mainwindow.cpp b/noncore/unsupported/oipkg/mainwindow.cpp
index 997f449..54ee115 100644
--- a/noncore/unsupported/oipkg/mainwindow.cpp
+++ b/noncore/unsupported/oipkg/mainwindow.cpp
@@ -102,5 +102,5 @@ void MainWindow::makeMenu()
102 102
103 updateAction = new QAction( tr( "Update" ), 103 updateAction = new QAction( tr( "Update" ),
104 Resource::loadIconSet( "oipkg/repeat" ), 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() ),
@@ -146,4 +146,5 @@ void MainWindow::makeMenu()
146 QLabel *label = new QLabel( tr("Section: "), sectionBar ); 146 QLabel *label = new QLabel( tr("Section: "), sectionBar );
147 label->setBackgroundColor( sectionBar->backgroundColor() ); 147 label->setBackgroundColor( sectionBar->backgroundColor() );
148 sectionBar->setStretchableWidget( label );
148 section = new QComboBox( false, sectionBar ); 149 section = new QComboBox( false, sectionBar );
149// section->setBackgroundMode( PaletteBackground ); 150// section->setBackgroundMode( PaletteBackground );
@@ -151,5 +152,4 @@ void MainWindow::makeMenu()
151 label->setBackgroundColor( sectionBar->backgroundColor() ); 152 label->setBackgroundColor( sectionBar->backgroundColor() );
152 subsection = new QComboBox( false, sectionBar ); 153 subsection = new QComboBox( false, sectionBar );
153 sectionBar->setStretchableWidget( label );
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 );
@@ -276,15 +276,15 @@ void MainWindow::showSettings()
276{ 276{
277 if ( settings->showDialog( 0 ) ) 277 if ( settings->showDialog( 0 ) )
278 getList(); 278 updateList();
279} 279}
280void MainWindow::showSettingsSrv() 280void MainWindow::showSettingsSrv()
281{ 281{
282 if ( settings->showDialog( 1 ) ) 282 if ( settings->showDialog( 1 ) )
283 getList(); 283 updateList();
284} 284}
285void MainWindow::showSettingsDst() 285void MainWindow::showSettingsDst()
286{ 286{
287 if ( settings->showDialog( 2 ) ) 287 if ( settings->showDialog( 2 ) )
288 getList(); 288 updateList();
289} 289}
290 290
diff --git a/noncore/unsupported/oipkg/oipkg.pro b/noncore/unsupported/oipkg/oipkg.pro
index c16cc73..955c7f3 100644
--- a/noncore/unsupported/oipkg/oipkg.pro
+++ b/noncore/unsupported/oipkg/oipkg.pro
@@ -17,8 +17,7 @@ SOURCES = main.cpp \
17 package.cpp 17 package.cpp
18INCLUDEPATH += $(OPIEDIR)/include 18INCLUDEPATH += $(OPIEDIR)/include
19 DEPENDPATH+= $(OPIEDIR)/include 19 DEPENDPATH+= $(OPIEDIR)/ioclude
20LIBS += -lqpe 20LIBS += -lqpe
21 INTERFACES= pkdesc.ui \ 21 INTERFACES= pkdesc.ui \
22 pkfind.ui \
23 runwindow.ui \ 22 runwindow.ui \
24 pksettingsbase.ui 23 pksettingsbase.ui
diff --git a/noncore/unsupported/oipkg/package.cpp b/noncore/unsupported/oipkg/package.cpp
index e317308..1705f78 100644
--- a/noncore/unsupported/oipkg/package.cpp
+++ b/noncore/unsupported/oipkg/package.cpp
@@ -18,5 +18,5 @@ Package::Package()
18 _desc = ""; 18 _desc = "";
19 _name = ""; 19 _name = "";
20 _toProcess = true; 20 _toProcess = false;
21 _status = ""; 21 _status = "";
22} 22}
@@ -254,2 +254,10 @@ QString Package::details()
254} 254}
255 255
256/** No descriptions */
257void Package::processed()
258{
259 _toProcess = false;
260 //hack, but we're mot writing status anyway...
261 if ( installed() ) _status = "install";
262 else _status = "installed";
263}
diff --git a/noncore/unsupported/oipkg/package.h b/noncore/unsupported/oipkg/package.h
index 08d0c57..cf2af75 100644
--- a/noncore/unsupported/oipkg/package.h
+++ b/noncore/unsupported/oipkg/package.h
@@ -36,4 +36,6 @@ class Package //: public QObject
36 bool toInstall(); 36 bool toInstall();
37 bool toRemove(); 37 bool toRemove();
38 /** No descriptions */
39 void processed();
38public slots: 40public slots:
39 void toggleProcess(); 41 void toggleProcess();
diff --git a/noncore/unsupported/oipkg/pksettingsbase.ui b/noncore/unsupported/oipkg/pksettingsbase.ui
index ea507a8..196a89f 100644
--- a/noncore/unsupported/oipkg/pksettingsbase.ui
+++ b/noncore/unsupported/oipkg/pksettingsbase.ui
@@ -12,5 +12,5 @@
12 <x>0</x> 12 <x>0</x>
13 <y>0</y> 13 <y>0</y>
14 <width>353</width> 14 <width>349</width>
15 <height>454</height> 15 <height>454</height>
16 </rect> 16 </rect>
@@ -177,5 +177,5 @@
177 <property stdset="1"> 177 <property stdset="1">
178 <name>text</name> 178 <name>text</name>
179 <string>Link Destination:</string> 179 <string>Link Destination: root</string>
180 </property> 180 </property>
181 </widget> 181 </widget>
@@ -719,10 +719,4 @@
719</widget> 719</widget>
720<connections> 720<connections>
721 <connection>
722 <sender>CheckBoxLink</sender>
723 <signal>toggled(bool)</signal>
724 <receiver>Form4</receiver>
725 <slot>linkEnabled(bool)</slot>
726 </connection>
727 <slot access="public">destNameChanged(const QString&amp;)</slot> 721 <slot access="public">destNameChanged(const QString&amp;)</slot>
728 <slot access="public">destUrlChanged(const QString&amp;)</slot> 722 <slot access="public">destUrlChanged(const QString&amp;)</slot>
diff --git a/noncore/unsupported/oipkg/pmipkg.cpp b/noncore/unsupported/oipkg/pmipkg.cpp
index b2ddf95..b23b9ea 100644
--- a/noncore/unsupported/oipkg/pmipkg.cpp
+++ b/noncore/unsupported/oipkg/pmipkg.cpp
@@ -1,5 +1,4 @@
1#include "pmipkg.h" 1#include "pmipkg.h"
2#include "pkdesc.h" 2#include "pkdesc.h"
3#include "pkfind.h"
4#include "pksettings.h" 3#include "pksettings.h"
5#include "package.h" 4#include "package.h"
@@ -18,23 +17,20 @@
18#include <qtextview.h> 17#include <qtextview.h>
19 18
19#include <qprogressbar.h>
20#include <qpushbutton.h>
21#include <qlayout.h>
22
20#include <stdlib.h> 23#include <stdlib.h>
21#include <unistd.h> 24#include <unistd.h>
22 25
23#include "mainwindow.h" 26#include "mainwindow.h"
24#include "runwindow.h"
25
26 27
27#define PARSE_FILELIST
28// #define IPKG_FILELIST
29 28
30PmIpkg::PmIpkg( PackageManagerSettings* s, QWidget* p, const char * name, WFlags f ) 29PmIpkg::PmIpkg( PackageManagerSettings* s, QWidget* p, const char * name, WFlags f )
31// : RunWindow ( p, name, f )
32 : QObject ( p ) 30 : QObject ( p )
33{ 31{
34 settings = s; 32 settings = s;
35 runwindow = new RunWindow ( p, name, f ); 33 runwindowopen = false;
36 linkDest = new QCopChannel( "QPE/oipkg", this ); 34 runwindow = new RunWindow( p, name, true, f );
37 connect( linkDest, SIGNAL(received(const QCString &, const QByteArray &)),
38 this, SLOT(linkDestination( const QString &, const QByteArray&)) );
39} 35}
40 36
@@ -74,12 +70,15 @@ int PmIpkg::runIpkg(const QString& args)
74 r = system(cmd.latin1()); 70 r = system(cmd.latin1());
75 QFile f( redirect ); 71 QFile f( redirect );
72 QString line;
73 QString oldLine;
76 while ( ! f.open(IO_ReadOnly) ) {}; 74 while ( ! f.open(IO_ReadOnly) ) {};
77 // if ( f.open(IO_ReadOnly) ) {};
78 { 75 {
79 QTextStream t( &f ); 76 QTextStream t( &f );
80 QString fp; 77 // QString fp;
81 while ( !t.eof() ) 78 while ( !t.eof() )
82 { 79 {
83 out( t.readLine() +"<br>" ); 80 line = t.readLine();
81 if ( line != oldLine ) out( line +"<br>" );
82 oldLine = line;
84 } 83 }
85 } 84 }
@@ -97,10 +96,4 @@ void PmIpkg::makeLinks(QString pack)
97 QString dest = settings->getDestinationUrl(); 96 QString dest = settings->getDestinationUrl();
98 out("for package "+pack+" in "+dest+"<br>"); 97 out("for package "+pack+" in "+dest+"<br>");
99#ifdef IPKG_FILELIST
100 system(("ipkg -d "+dest+" files "+pack+"> /tmp/oipkg.pipe 2>&1").latin1());
101 QFile f( "/tmp/oipkg.pipe" );
102 while ( ! f.open(IO_ReadOnly) ) {};
103#endif
104#ifdef PARSE_FILELIST
105 { 98 {
106 Config cfg( "oipkg", Config::User ); 99 Config cfg( "oipkg", Config::User );
@@ -114,5 +107,4 @@ void PmIpkg::makeLinks(QString pack)
114 out( "<b>Panik!</b> Could not open:<br>"+fn ); 107 out( "<b>Panik!</b> Could not open:<br>"+fn );
115 }; 108 };
116#endif
117 QTextStream t( &f ); 109 QTextStream t( &f );
118 QString fp; 110 QString fp;
@@ -127,12 +119,6 @@ void PmIpkg::makeLinks(QString pack)
127void PmIpkg::processLinkDir( QString file, QString dest ) 119void PmIpkg::processLinkDir( QString file, QString dest )
128{ 120{
129
130#ifdef PARSE_FILELIST
131 QString destFile = file; 121 QString destFile = file;
132 file = dest+"/"+file; 122 file = dest+"/"+file;
133#endif
134#ifdef IPKG_FILELIST
135 QString destFile = file.right( file.length() - dest.length() );
136#endif
137 QFileInfo fileInfo( file ); 123 QFileInfo fileInfo( file );
138 if ( fileInfo.isDir() ) 124 if ( fileInfo.isDir() )
@@ -147,5 +133,5 @@ void PmIpkg::processLinkDir( QString file, QString dest )
147 while ( (fi=it.current()) ) 133 while ( (fi=it.current()) )
148 { 134 {
149 out( "<b>"+fi->absFilePath()+"</b>" ); 135 // out( "<b>"+fi->absFilePath()+"</b>" );
150 processLinkDir( fi->absFilePath(), dest ); 136 processLinkDir( fi->absFilePath(), dest );
151 ++it; 137 ++it;
@@ -156,5 +142,5 @@ void PmIpkg::processLinkDir( QString file, QString dest )
156 const char *instFile = strdup( (file).ascii() ); 142 const char *instFile = strdup( (file).ascii() );
157 const char *linkFile = strdup( (destFile).ascii()); 143 const char *linkFile = strdup( (destFile).ascii());
158 out( "linking: "+file+" -> "+destFile ); 144// out( "linking: "+file+" -> "+destFile );
159 qDebug( "linking: %s -> %s", instFile, linkFile ); 145 qDebug( "linking: %s -> %s", instFile, linkFile );
160 symlink( instFile, linkFile ); 146 symlink( instFile, linkFile );
@@ -164,9 +150,7 @@ void PmIpkg::processLinkDir( QString file, QString dest )
164void PmIpkg::commit( PackageList pl ) 150void PmIpkg::commit( PackageList pl )
165 { 151 {
166 runwindow->showMaximized(); 152 show( false );
167// exec();
168 runwindow->outPut->setText(""); 153 runwindow->outPut->setText("");
169 out( "<h1>Starting...</h1><br>\n"); 154 out( "<h1>"+tr("Todo")+"</h1>\n");
170 QStringList to_remove, to_install;
171 155
172 QString rem="<b>To remove:</b><br>\n"; 156 QString rem="<b>To remove:</b><br>\n";
@@ -189,15 +173,56 @@ void PmIpkg::commit( PackageList pl )
189 } 173 }
190 174
191 out("<p>"+inst+"</p>"+"<p>"+rem+"</p>"); 175 out("<p>"+inst+"</p>"+"<p>"+rem+"</p><hl>");
192 bool ok=TRUE;
193 176
194 qDebug("to remove=%i; to install=%i",to_remove.count(),to_install.count()); 177 qDebug("to remove=%i; to install=%i",to_remove.count(),to_install.count());
195 178
196 int jobs = to_remove.count()+to_install.count(); 179 connect( runwindow->doItButton, SIGNAL( clicked() ),
197 if ( jobs < 1 ) return; 180 SLOT( doIt() ) );
181 connect( runwindow->installButton, SIGNAL( clicked() ),
182 this, SLOT( install() ) );
183 connect( runwindow->removeButton, SIGNAL( clicked() ),
184 this, SLOT( remove() ) );
185 connect( runwindow->cancelButton, SIGNAL( clicked() ),
186 runwindow, SLOT( close() ) );
187
188 runwindow->exec();
189 // ##### 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".
191 QCopEnvelope e("QPE/System", "linkChanged(QString)");
192 QString lf = QString::null;
193 e << lf;
194 return;
195}
196
197void PmIpkg::doIt()
198{
199 remove();
200 install();
201}
202
198 203
199 if ( to_remove.count() ) 204void PmIpkg::remove()
205{
206 if ( to_remove.count() == 0 ) return;
207 show( true );
208
209 out("<hr><hr><b>"+tr("Removing")+"<br>"+tr("please wait")+"</b><br>");
200 for (QStringList::ConstIterator it=to_remove.begin(); it!=to_remove.end(); ++it) 210 for (QStringList::ConstIterator it=to_remove.begin(); it!=to_remove.end(); ++it)
201 if ( runIpkg("remove " + *it) != 0 ) ok = false; 211 {
212 if ( runIpkg("remove " + *it) == 0)
213 {
214
215 }else{
216 out("<b>"+tr("Error while removing")+"</b>"+*it);
217 }
218 }
219}
220
221
222void PmIpkg::install()
223{
224 if ( to_install.count() == 0 ) return;
225 show( true );
226 out("<hr><hr><b>"+tr("Installing")+"<br>"+tr("please wait")+"<b><br>");
202 if ( to_install.count() ) 227 if ( to_install.count() )
203 for (QStringList::ConstIterator it=to_install.begin(); it!=to_install.end(); ++it) 228 for (QStringList::ConstIterator it=to_install.begin(); it!=to_install.end(); ++it)
@@ -208,13 +233,8 @@ void PmIpkg::commit( PackageList pl )
208 makeLinks( *it ); 233 makeLinks( *it );
209 }else{ 234 }else{
210 ok = false; 235 out("<b>"+tr("Error while installing")+"</b>"+*it);
211 } 236 }
212 } 237 }
213 238
214 // ##### If we looked in the list of files, we could send out accurate
215 // ##### messages. But we don't bother yet, and just do an "all".
216 QCopEnvelope e("QPE/System", "linkChanged(QString)");
217 QString lf = QString::null;
218 e << lf;
219} 239}
220 240
@@ -237,6 +257,7 @@ void PmIpkg::linkDestination( const QString msg, const QByteArray dest )
237void PmIpkg::update() 257void PmIpkg::update()
238{ 258{
239 runwindow->showMaximized(); 259 show( false );
240 runIpkg( "update" ); 260 runIpkg( "update" );
261 runwindow->close();
241} 262}
242 263
@@ -244,4 +265,33 @@ void PmIpkg::out( QString o )
244{ 265{
245 runwindow->outPut->setText( runwindow->outPut->text()+o ); 266 runwindow->outPut->setText( runwindow->outPut->text()+o );
246 runwindow->outPut->setContentsPos(0,runwindow->outPut->contentsHeight()); 267 runwindow->outPut->setContentsPos(0, runwindow->outPut->contentsHeight());
268}
269
270
271void PmIpkg::showButtons(bool b)
272{
273 if ( b )
274 {
275 runwindow->cancelButton->hide();
276 runwindow->doItButton->hide();
277 runwindow->removeButton->hide();
278 runwindow->installButton->hide();
279 }else{
280 runwindow->cancelButton->show();
281 runwindow->doItButton->show();
282 runwindow->removeButton->show();
283 runwindow->installButton->show();
284
285 }
286}
287
288void PmIpkg::show(bool b)
289{
290 if (!runwindow->isVisible())
291 runwindow->showMaximized();
292 showButtons(b);
293 if ( b )
294 runwindow->progress->show();
295 else
296 runwindow->progress->show();
247} 297}
diff --git a/noncore/unsupported/oipkg/pmipkg.h b/noncore/unsupported/oipkg/pmipkg.h
index e6486ff..8718f49 100644
--- a/noncore/unsupported/oipkg/pmipkg.h
+++ b/noncore/unsupported/oipkg/pmipkg.h
@@ -11,10 +11,6 @@
11#include "debug.h" 11#include "debug.h"
12 12
13//#define DIA
14 13
15#include <qpe/qcopenvelope_qws.h>
16 14
17
18//class PmIpkg : public RunWindow
19class PmIpkg : public QObject 15class PmIpkg : public QObject
20{ 16{
@@ -22,5 +18,4 @@ class PmIpkg : public QObject
22public: 18public:
23 PmIpkg( PackageManagerSettings* , QWidget* p=0, const char * name=0, WFlags f=0 ); 19 PmIpkg( PackageManagerSettings* , QWidget* p=0, const char * name=0, WFlags f=0 );
24 //PmIpkg( QObject*, PackageManagerSettings* );
25 ~PmIpkg(); 20 ~PmIpkg();
26 21
@@ -28,9 +23,13 @@ public:
28 void update(); 23 void update();
29 PackageList* getPackageList(); 24 PackageList* getPackageList();
25 void showButtons(bool b=true);
26 void show( bool buttons=true );
30 27
31private: 28private:
32 PackageManagerSettings* settings; 29 PackageManagerSettings* settings;
33 RunWindow *runwindow; 30 RunWindow *runwindow;
34 QCopChannel *linkDest; 31 QStringList to_remove;
32 QStringList to_install;
33 bool runwindowopen;
35 34
36 void makeLinks(QString); 35 void makeLinks(QString);
@@ -41,4 +40,7 @@ private:
41 40
42public slots: 41public slots:
42 void doIt();
43 void install();
44 void remove();
43 void linkDestination( const QString, const QByteArray ); 45 void linkDestination( const QString, const QByteArray );
44}; 46};
diff --git a/noncore/unsupported/oipkg/runwindow.ui b/noncore/unsupported/oipkg/runwindow.ui
index 9113f2d..5359fe2 100644
--- a/noncore/unsupported/oipkg/runwindow.ui
+++ b/noncore/unsupported/oipkg/runwindow.ui
@@ -12,5 +12,5 @@
12 <x>0</x> 12 <x>0</x>
13 <y>0</y> 13 <y>0</y>
14 <width>197</width> 14 <width>344</width>
15 <height>291</height> 15 <height>291</height>
16 </rect> 16 </rect>
@@ -29,5 +29,5 @@
29 <property stdset="1"> 29 <property stdset="1">
30 <name>margin</name> 30 <name>margin</name>
31 <number>5</number> 31 <number>2</number>
32 </property> 32 </property>
33 <property stdset="1"> 33 <property stdset="1">
@@ -59,4 +59,112 @@
59 </property> 59 </property>
60 </widget> 60 </widget>
61 <widget row="2" column="0" >
62 <class>QLayoutWidget</class>
63 <property stdset="1">
64 <name>name</name>
65 <cstring>buttons</cstring>
66 </property>
67 <hbox>
68 <property stdset="1">
69 <name>margin</name>
70 <number>0</number>
71 </property>
72 <property stdset="1">
73 <name>spacing</name>
74 <number>6</number>
75 </property>
76 <widget>
77 <class>QPushButton</class>
78 <property stdset="1">
79 <name>name</name>
80 <cstring>doItButton</cstring>
81 </property>
82 <property stdset="1">
83 <name>sizePolicy</name>
84 <sizepolicy>
85 <hsizetype>0</hsizetype>
86 <vsizetype>0</vsizetype>
87 </sizepolicy>
88 </property>
89 <property stdset="1">
90 <name>font</name>
91 <font>
92 <pointsize>8</pointsize>
93 </font>
94 </property>
95 <property stdset="1">
96 <name>text</name>
97 <string>Do all </string>
98 </property>
99 <property stdset="1">
100 <name>autoResize</name>
101 <bool>true</bool>
102 </property>
103 </widget>
104 <widget>
105 <class>QPushButton</class>
106 <property stdset="1">
107 <name>name</name>
108 <cstring>installButton</cstring>
109 </property>
110 <property stdset="1">
111 <name>font</name>
112 <font>
113 <pointsize>8</pointsize>
114 </font>
115 </property>
116 <property stdset="1">
117 <name>text</name>
118 <string>Install</string>
119 </property>
120 <property stdset="1">
121 <name>autoResize</name>
122 <bool>true</bool>
123 </property>
124 </widget>
125 <widget>
126 <class>QPushButton</class>
127 <property stdset="1">
128 <name>name</name>
129 <cstring>removeButton</cstring>
130 </property>
131 <property stdset="1">
132 <name>font</name>
133 <font>
134 <pointsize>7</pointsize>
135 </font>
136 </property>
137 <property stdset="1">
138 <name>text</name>
139 <string>Remove</string>
140 </property>
141 <property stdset="1">
142 <name>autoResize</name>
143 <bool>true</bool>
144 </property>
145 </widget>
146 <widget>
147 <class>QPushButton</class>
148 <property stdset="1">
149 <name>name</name>
150 <cstring>cancelButton</cstring>
151 </property>
152 <property stdset="1">
153 <name>font</name>
154 <font>
155 <pointsize>8</pointsize>
156 </font>
157 </property>
158 <property stdset="1">
159 <name>text</name>
160 <string>Cancel</string>
161 </property>
162 <property stdset="1">
163 <name>autoResize</name>
164 <bool>true</bool>
165 </property>
166 </widget>
167 </hbox>
168 </widget>
61 </grid> 169 </grid>
62</widget> 170</widget>