-rw-r--r-- | noncore/settings/aqpkg/installdlgimpl.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/noncore/settings/aqpkg/installdlgimpl.cpp b/noncore/settings/aqpkg/installdlgimpl.cpp index 80c06ba..bd07828 100644 --- a/noncore/settings/aqpkg/installdlgimpl.cpp +++ b/noncore/settings/aqpkg/installdlgimpl.cpp | |||
@@ -154,135 +154,137 @@ void InstallDlgImpl :: installSelected() | |||
154 | displayText( "**** Process Aborted ****" ); | 154 | displayText( "**** Process Aborted ****" ); |
155 | } | 155 | } |
156 | 156 | ||
157 | btnInstall->setText( tr( "Close" ) ); | 157 | btnInstall->setText( tr( "Close" ) ); |
158 | return; | 158 | return; |
159 | } | 159 | } |
160 | else if ( btnInstall->text() == "Close" ) | 160 | else if ( btnInstall->text() == "Close" ) |
161 | { | 161 | { |
162 | done( 1 ); | 162 | done( 1 ); |
163 | return; | 163 | return; |
164 | } | 164 | } |
165 | 165 | ||
166 | // Disable buttons | 166 | // Disable buttons |
167 | btnOptions->setEnabled( false ); | 167 | btnOptions->setEnabled( false ); |
168 | // btnInstall->setEnabled( false ); | 168 | // btnInstall->setEnabled( false ); |
169 | 169 | ||
170 | btnInstall->setText( "Abort" ); | 170 | btnInstall->setText( "Abort" ); |
171 | 171 | ||
172 | if ( pIpkg ) | 172 | if ( pIpkg ) |
173 | { | 173 | { |
174 | output->setText( "" ); | 174 | output->setText( "" ); |
175 | 175 | ||
176 | connect( pIpkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &))); | 176 | connect( pIpkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &))); |
177 | pIpkg->runIpkg(); | 177 | pIpkg->runIpkg(); |
178 | } | 178 | } |
179 | else | 179 | else |
180 | { | 180 | { |
181 | output->setText( "" ); | 181 | output->setText( "" ); |
182 | vector<Destination>::iterator d = dataMgr->getDestination( destination->currentText() ); | 182 | vector<Destination>::iterator d = dataMgr->getDestination( destination->currentText() ); |
183 | QString dest = d->getDestinationName(); | 183 | QString dest = d->getDestinationName(); |
184 | QString destDir = d->getDestinationPath(); | 184 | QString destDir = d->getDestinationPath(); |
185 | int instFlags = flags; | 185 | int instFlags = flags; |
186 | if ( d->linkToRoot() ) | 186 | if ( d->linkToRoot() ) |
187 | instFlags |= MAKE_LINKS; | 187 | instFlags |= MAKE_LINKS; |
188 | 188 | ||
189 | #ifdef QWS | 189 | #ifdef QWS |
190 | // Save settings | 190 | // Save settings |
191 | Config cfg( "aqpkg" ); | 191 | Config cfg( "aqpkg" ); |
192 | cfg.setGroup( "settings" ); | 192 | cfg.setGroup( "settings" ); |
193 | cfg.writeEntry( "dest", dest ); | 193 | cfg.writeEntry( "dest", dest ); |
194 | #endif | 194 | #endif |
195 | 195 | ||
196 | pIpkg = new Ipkg; | 196 | pIpkg = new Ipkg; |
197 | connect( pIpkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &))); | 197 | connect( pIpkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &))); |
198 | 198 | ||
199 | // First run through the remove list, then the install list then the upgrade list | 199 | // First run through the remove list, then the install list then the upgrade list |
200 | vector<InstallData>::iterator it; | 200 | vector<InstallData>::iterator it; |
201 | pIpkg->setOption( "remove" ); | 201 | pIpkg->setOption( "remove" ); |
202 | for ( it = removeList.begin() ; it != removeList.end() ; ++it ) | 202 | for ( it = removeList.begin() ; it != removeList.end() ; ++it ) |
203 | { | 203 | { |
204 | pIpkg->setDestination( it->destination->getDestinationName() ); | 204 | pIpkg->setDestination( it->destination->getDestinationName() ); |
205 | pIpkg->setDestinationDir( it->destination->getDestinationPath() ); | 205 | pIpkg->setDestinationDir( it->destination->getDestinationPath() ); |
206 | pIpkg->setPackage( it->packageName ); | 206 | pIpkg->setPackage( it->packageName ); |
207 | 207 | ||
208 | int tmpFlags = flags; | 208 | int tmpFlags = flags; |
209 | if ( it->destination->linkToRoot() ) | 209 | if ( it->destination->linkToRoot() ) |
210 | tmpFlags |= MAKE_LINKS; | 210 | tmpFlags |= MAKE_LINKS; |
211 | 211 | ||
212 | pIpkg->setFlags( tmpFlags ); | 212 | pIpkg->setFlags( tmpFlags ); |
213 | pIpkg->runIpkg(); | 213 | pIpkg->runIpkg(); |
214 | } | 214 | } |
215 | 215 | ||
216 | pIpkg->setOption( "install" ); | 216 | pIpkg->setOption( "install" ); |
217 | pIpkg->setDestination( dest ); | 217 | pIpkg->setDestination( dest ); |
218 | pIpkg->setDestinationDir( destDir ); | 218 | pIpkg->setDestinationDir( destDir ); |
219 | pIpkg->setFlags( instFlags ); | 219 | pIpkg->setFlags( instFlags ); |
220 | for ( it = installList.begin() ; it != installList.end() ; ++it ) | 220 | for ( it = installList.begin() ; it != installList.end() ; ++it ) |
221 | { | 221 | { |
222 | pIpkg->setPackage( it->packageName ); | 222 | pIpkg->setPackage( it->packageName ); |
223 | pIpkg->runIpkg(); | 223 | pIpkg->runIpkg(); |
224 | } | 224 | } |
225 | 225 | ||
226 | flags |= FORCE_REINSTALL; | 226 | flags |= FORCE_REINSTALL; |
227 | for ( it = updateList.begin() ; it != updateList.end() ; ++it ) | 227 | for ( it = updateList.begin() ; it != updateList.end() ; ++it ) |
228 | { | 228 | { |
229 | if ( it->option == "R" ) | 229 | if ( it->option == "R" ) |
230 | pIpkg->setOption( "reinstall" ); | 230 | pIpkg->setOption( "reinstall" ); |
231 | else | 231 | else |
232 | pIpkg->setOption( "upgrade" ); | 232 | pIpkg->setOption( "upgrade" ); |
233 | pIpkg->setDestination( it->destination->getDestinationName() ); | 233 | pIpkg->setDestination( it->destination->getDestinationName() ); |
234 | pIpkg->setDestinationDir( it->destination->getDestinationPath() ); | 234 | pIpkg->setDestinationDir( it->destination->getDestinationPath() ); |
235 | pIpkg->setPackage( it->packageName ); | 235 | pIpkg->setPackage( it->packageName ); |
236 | 236 | ||
237 | int tmpFlags = flags; | 237 | int tmpFlags = flags; |
238 | if ( it->destination->linkToRoot() && it->recreateLinks ) | 238 | if ( it->destination->linkToRoot() && it->recreateLinks ) |
239 | tmpFlags |= MAKE_LINKS; | 239 | tmpFlags |= MAKE_LINKS; |
240 | pIpkg->setFlags( tmpFlags ); | 240 | pIpkg->setFlags( tmpFlags ); |
241 | pIpkg->runIpkg(); | 241 | pIpkg->runIpkg(); |
242 | } | 242 | } |
243 | 243 | ||
244 | delete pIpkg; | 244 | delete pIpkg; |
245 | } | 245 | } |
246 | 246 | ||
247 | btnOptions->setEnabled( true ); | 247 | btnOptions->setEnabled( true ); |
248 | // btnInstall->setEnabled( true ); | 248 | // btnInstall->setEnabled( true ); |
249 | btnInstall->setText( tr( "Close" ) ); | 249 | btnInstall->setText( tr( "Close" ) ); |
250 | |||
251 | displayAvailableSpace( destination->currentText() ); | ||
250 | } | 252 | } |
251 | 253 | ||
252 | 254 | ||
253 | void InstallDlgImpl :: displayText(const QString &text ) | 255 | void InstallDlgImpl :: displayText(const QString &text ) |
254 | { | 256 | { |
255 | QString t = output->text() + "\n" + text; | 257 | QString t = output->text() + "\n" + text; |
256 | output->setText( t ); | 258 | output->setText( t ); |
257 | output->setCursorPosition( output->numLines(), 0 ); | 259 | output->setCursorPosition( output->numLines(), 0 ); |
258 | } | 260 | } |
259 | 261 | ||
260 | 262 | ||
261 | void InstallDlgImpl :: displayAvailableSpace( const QString &text ) | 263 | void InstallDlgImpl :: displayAvailableSpace( const QString &text ) |
262 | { | 264 | { |
263 | vector<Destination>::iterator d = dataMgr->getDestination( text ); | 265 | vector<Destination>::iterator d = dataMgr->getDestination( text ); |
264 | QString destDir = d->getDestinationPath(); | 266 | QString destDir = d->getDestinationPath(); |
265 | 267 | ||
266 | long blockSize = 0; | 268 | long blockSize = 0; |
267 | long totalBlocks = 0; | 269 | long totalBlocks = 0; |
268 | long availBlocks = 0; | 270 | long availBlocks = 0; |
269 | QString space; | 271 | QString space; |
270 | if ( Utils::getStorageSpace( (const char *)destDir, &blockSize, &totalBlocks, &availBlocks ) ) | 272 | if ( Utils::getStorageSpace( (const char *)destDir, &blockSize, &totalBlocks, &availBlocks ) ) |
271 | { | 273 | { |
272 | long mult = blockSize / 1024; | 274 | long mult = blockSize / 1024; |
273 | long div = 1024 / blockSize; | 275 | long div = 1024 / blockSize; |
274 | 276 | ||
275 | if ( !mult ) mult = 1; | 277 | if ( !mult ) mult = 1; |
276 | if ( !div ) div = 1; | 278 | if ( !div ) div = 1; |
277 | // long total = totalBlocks * mult / div; | 279 | // long total = totalBlocks * mult / div; |
278 | long avail = availBlocks * mult / div; | 280 | long avail = availBlocks * mult / div; |
279 | // long used = total - avail; | 281 | // long used = total - avail; |
280 | 282 | ||
281 | space.sprintf( "%ld Kb", avail ); | 283 | space.sprintf( "%ld Kb", avail ); |
282 | } | 284 | } |
283 | else | 285 | else |
284 | space = "Unknown"; | 286 | space = "Unknown"; |
285 | 287 | ||
286 | txtAvailableSpace->setText( space ); | 288 | txtAvailableSpace->setText( space ); |
287 | } | 289 | } |
288 | 290 | ||