diff options
Diffstat (limited to 'rbutil/rbutilqt/rbutilqt.cpp')
-rw-r--r-- | rbutil/rbutilqt/rbutilqt.cpp | 73 |
1 files changed, 61 insertions, 12 deletions
diff --git a/rbutil/rbutilqt/rbutilqt.cpp b/rbutil/rbutilqt/rbutilqt.cpp index 2326648732..fc03ba754e 100644 --- a/rbutil/rbutilqt/rbutilqt.cpp +++ b/rbutil/rbutilqt/rbutilqt.cpp | |||
@@ -25,11 +25,11 @@ | |||
25 | #include "ui_aboutbox.h" | 25 | #include "ui_aboutbox.h" |
26 | #include "configure.h" | 26 | #include "configure.h" |
27 | #include "install.h" | 27 | #include "install.h" |
28 | #include "installbootloaderwindow.h" | ||
29 | #include "installtalkwindow.h" | 28 | #include "installtalkwindow.h" |
30 | #include "httpget.h" | 29 | #include "httpget.h" |
31 | #include "installbootloader.h" | 30 | #include "installbootloader.h" |
32 | #include "uninstallwindow.h" | 31 | #include "uninstallwindow.h" |
32 | #include "browseof.h" | ||
33 | 33 | ||
34 | #ifdef __linux | 34 | #ifdef __linux |
35 | #include <stdio.h> | 35 | #include <stdio.h> |
@@ -280,18 +280,67 @@ void RbUtilQt::install() | |||
280 | 280 | ||
281 | void RbUtilQt::installBl() | 281 | void RbUtilQt::installBl() |
282 | { | 282 | { |
283 | InstallBootloaderWindow *installWindow = new InstallBootloaderWindow(this); | 283 | if(QMessageBox::question(this, tr("Confirm Installation"), |
284 | installWindow->setUserSettings(userSettings); | 284 | tr("Do you really want to install the Bootloader?"), |
285 | installWindow->setDeviceSettings(devices); | 285 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; |
286 | |||
287 | // create logger | ||
288 | logger = new ProgressLoggerGui(this); | ||
289 | logger->show(); | ||
290 | |||
291 | QString platform = userSettings->value("defaults/platform").toString(); | ||
292 | |||
293 | // if fwpatcher , ask for extra file | ||
294 | QString offirmware; | ||
295 | if(devices->value(platform + "/bootloadermethod").toString() == "fwpatcher") | ||
296 | { | ||
297 | BrowseOF ofbrowser(this); | ||
298 | ofbrowser.setFile(userSettings->value("defaults/ofpath").toString()); | ||
299 | if(ofbrowser.exec() == QDialog::Accepted) | ||
300 | { | ||
301 | offirmware = ofbrowser.getFile(); | ||
302 | qDebug() << offirmware; | ||
303 | if(!QFileInfo(offirmware).exists()) | ||
304 | { | ||
305 | logger->addItem(tr("Original Firmware Path is wrong!"),LOGERROR); | ||
306 | logger->abort(); | ||
307 | return; | ||
308 | } | ||
309 | else | ||
310 | { | ||
311 | userSettings->setValue("defaults/ofpath",offirmware); | ||
312 | userSettings->sync(); | ||
313 | } | ||
314 | } | ||
315 | else | ||
316 | { | ||
317 | logger->addItem(tr("Original Firmware selection Canceled!"),LOGERROR); | ||
318 | logger->abort(); | ||
319 | return; | ||
320 | } | ||
321 | } | ||
322 | |||
323 | // create installer | ||
324 | blinstaller = new BootloaderInstaller(this); | ||
325 | |||
326 | blinstaller->setMountPoint(userSettings->value("defaults/mountpoint").toString()); | ||
327 | |||
286 | if(userSettings->value("defaults/proxytype") == "manual") | 328 | if(userSettings->value("defaults/proxytype") == "manual") |
287 | installWindow->setProxy(QUrl(userSettings->value("defaults/proxy").toString())); | 329 | blinstaller->setProxy(QUrl(userSettings->value("defaults/proxy").toString())); |
288 | #ifdef __linux | 330 | #ifdef __linux |
289 | else if(userSettings->value("defaults/proxytype") == "system") | 331 | else if(userSettings->value("defaults/proxytype") == "system") |
290 | installWindow->setProxy(QUrl(getenv("http_proxy"))); | 332 | blinstaller->setProxy(QUrl(getenv("http_proxy"))); |
291 | #endif | 333 | #endif |
292 | installWindow->setMountPoint(userSettings->value("defaults/mountpoint").toString()); | ||
293 | 334 | ||
294 | installWindow->show(); | 335 | blinstaller->setDevice(platform); |
336 | blinstaller->setBootloaderMethod(devices->value(platform + "/bootloadermethod").toString()); | ||
337 | blinstaller->setBootloaderName(devices->value(platform + "/bootloadername").toString()); | ||
338 | blinstaller->setBootloaderBaseUrl(devices->value("bootloader_url").toString()); | ||
339 | blinstaller->setOrigFirmwarePath(offirmware); | ||
340 | |||
341 | blinstaller->install(logger); | ||
342 | |||
343 | // connect(blinstaller, SIGNAL(done(bool)), this, SLOT(done(bool))); | ||
295 | } | 344 | } |
296 | 345 | ||
297 | 346 | ||
@@ -319,7 +368,7 @@ void RbUtilQt::installFonts() | |||
319 | installer->setMountPoint(userSettings->value("defaults/mountpoint").toString()); | 368 | installer->setMountPoint(userSettings->value("defaults/mountpoint").toString()); |
320 | installer->install(logger); | 369 | installer->install(logger); |
321 | 370 | ||
322 | connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool))); | 371 | // connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool))); |
323 | } | 372 | } |
324 | 373 | ||
325 | 374 | ||
@@ -357,7 +406,7 @@ void RbUtilQt::installVoice() | |||
357 | installer->setTarget("/.rockbox/langs/english.voice"); | 406 | installer->setTarget("/.rockbox/langs/english.voice"); |
358 | installer->install(logger); | 407 | installer->install(logger); |
359 | 408 | ||
360 | connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool))); | 409 | //connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool))); |
361 | } | 410 | } |
362 | 411 | ||
363 | 412 | ||
@@ -381,11 +430,11 @@ void RbUtilQt::installDoom() | |||
381 | installer->setProxy(QUrl(getenv("http_proxy"))); | 430 | installer->setProxy(QUrl(getenv("http_proxy"))); |
382 | #endif | 431 | #endif |
383 | 432 | ||
384 | installer->setLogSection("Game Addons"); | 433 | installer->setLogSection("GameAddons"); |
385 | installer->setMountPoint(userSettings->value("defaults/mountpoint").toString()); | 434 | installer->setMountPoint(userSettings->value("defaults/mountpoint").toString()); |
386 | installer->install(logger); | 435 | installer->install(logger); |
387 | 436 | ||
388 | connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool))); | 437 | // connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool))); |
389 | 438 | ||
390 | } | 439 | } |
391 | 440 | ||