diff options
Diffstat (limited to 'rbutil/rbutilqt')
-rw-r--r-- | rbutil/rbutilqt/rbutilqt.cpp | 38 | ||||
-rw-r--r-- | rbutil/rbutilqt/rbutilqt.h | 1 |
2 files changed, 39 insertions, 0 deletions
diff --git a/rbutil/rbutilqt/rbutilqt.cpp b/rbutil/rbutilqt/rbutilqt.cpp index 0f6a856bd2..4cb52504e4 100644 --- a/rbutil/rbutilqt/rbutilqt.cpp +++ b/rbutil/rbutilqt/rbutilqt.cpp | |||
@@ -161,6 +161,16 @@ void RbUtilQt::downloadDone(bool error) | |||
161 | bleeding->setCache(userSettings->value("cachepath", QDir::tempPath()).toString()); | 161 | bleeding->setCache(userSettings->value("cachepath", QDir::tempPath()).toString()); |
162 | bleeding->setFile(&bleedingInfo); | 162 | bleeding->setFile(&bleedingInfo); |
163 | bleeding->getFile(QUrl(devices->value("bleeding_info").toString())); | 163 | bleeding->getFile(QUrl(devices->value("bleeding_info").toString())); |
164 | |||
165 | if(chkConfig(false)) { | ||
166 | QApplication::processEvents(); | ||
167 | QMessageBox::critical(this, tr("Configuration error"), | ||
168 | tr("Your configuration is invalid. This is most likely due " | ||
169 | "to a new installation of Rockbox Utility or a changed device " | ||
170 | "path. The configuation dialog will now open to allow you " | ||
171 | "correcting the problem.")); | ||
172 | configDialog(); | ||
173 | } | ||
164 | } | 174 | } |
165 | 175 | ||
166 | 176 | ||
@@ -311,6 +321,7 @@ void RbUtilQt::updateManual() | |||
311 | 321 | ||
312 | void RbUtilQt::completeInstall() | 322 | void RbUtilQt::completeInstall() |
313 | { | 323 | { |
324 | if(chkConfig(true)) return; | ||
314 | if(QMessageBox::question(this, tr("Confirm Installation"), | 325 | if(QMessageBox::question(this, tr("Confirm Installation"), |
315 | tr("Do you really want to make a complete Installation?"), | 326 | tr("Do you really want to make a complete Installation?"), |
316 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; | 327 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; |
@@ -362,6 +373,7 @@ void RbUtilQt::completeInstall() | |||
362 | 373 | ||
363 | void RbUtilQt::smallInstall() | 374 | void RbUtilQt::smallInstall() |
364 | { | 375 | { |
376 | if(chkConfig(true)) return; | ||
365 | if(QMessageBox::question(this, tr("Confirm Installation"), | 377 | if(QMessageBox::question(this, tr("Confirm Installation"), |
366 | tr("Do you really want to make a small Installation?"), | 378 | tr("Do you really want to make a small Installation?"), |
367 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; | 379 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; |
@@ -424,6 +436,7 @@ void RbUtilQt::installdone(bool error) | |||
424 | 436 | ||
425 | void RbUtilQt::installBtn() | 437 | void RbUtilQt::installBtn() |
426 | { | 438 | { |
439 | if(chkConfig(true)) return; | ||
427 | install(); | 440 | install(); |
428 | } | 441 | } |
429 | 442 | ||
@@ -498,6 +511,7 @@ bool RbUtilQt::installBootloaderAuto() | |||
498 | 511 | ||
499 | void RbUtilQt::installBootloaderBtn() | 512 | void RbUtilQt::installBootloaderBtn() |
500 | { | 513 | { |
514 | if(chkConfig(true)) return; | ||
501 | if(QMessageBox::question(this, tr("Confirm Installation"), | 515 | if(QMessageBox::question(this, tr("Confirm Installation"), |
502 | tr("Do you really want to install the Bootloader?"), | 516 | tr("Do you really want to install the Bootloader?"), |
503 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; | 517 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; |
@@ -593,6 +607,7 @@ void RbUtilQt::installBootloader() | |||
593 | 607 | ||
594 | void RbUtilQt::installFontsBtn() | 608 | void RbUtilQt::installFontsBtn() |
595 | { | 609 | { |
610 | if(chkConfig(true)) return; | ||
596 | if(QMessageBox::question(this, tr("Confirm Installation"), | 611 | if(QMessageBox::question(this, tr("Confirm Installation"), |
597 | tr("Do you really want to install the fonts package?"), | 612 | tr("Do you really want to install the fonts package?"), |
598 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; | 613 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; |
@@ -627,6 +642,7 @@ void RbUtilQt::installFonts() | |||
627 | 642 | ||
628 | void RbUtilQt::installVoice() | 643 | void RbUtilQt::installVoice() |
629 | { | 644 | { |
645 | if(chkConfig(true)) return; | ||
630 | if(QMessageBox::question(this, tr("Confirm Installation"), | 646 | if(QMessageBox::question(this, tr("Confirm Installation"), |
631 | tr("Do you really want to install the voice file?"), | 647 | tr("Do you really want to install the voice file?"), |
632 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; | 648 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; |
@@ -658,6 +674,7 @@ void RbUtilQt::installVoice() | |||
658 | 674 | ||
659 | void RbUtilQt::installDoomBtn() | 675 | void RbUtilQt::installDoomBtn() |
660 | { | 676 | { |
677 | if(chkConfig(true)) return; | ||
661 | if(!hasDoom()){ | 678 | if(!hasDoom()){ |
662 | QMessageBox::critical(this, tr("Error"), tr("Your device doesn't have a doom plugin. Aborting.")); | 679 | QMessageBox::critical(this, tr("Error"), tr("Your device doesn't have a doom plugin. Aborting.")); |
663 | return; | 680 | return; |
@@ -704,6 +721,7 @@ void RbUtilQt::installDoom() | |||
704 | 721 | ||
705 | void RbUtilQt::installThemes() | 722 | void RbUtilQt::installThemes() |
706 | { | 723 | { |
724 | if(chkConfig(true)) return; | ||
707 | ThemesInstallWindow* tw = new ThemesInstallWindow(this); | 725 | ThemesInstallWindow* tw = new ThemesInstallWindow(this); |
708 | tw->setDeviceSettings(devices); | 726 | tw->setDeviceSettings(devices); |
709 | tw->setUserSettings(userSettings); | 727 | tw->setUserSettings(userSettings); |
@@ -715,6 +733,7 @@ void RbUtilQt::installThemes() | |||
715 | 733 | ||
716 | void RbUtilQt::createTalkFiles(void) | 734 | void RbUtilQt::createTalkFiles(void) |
717 | { | 735 | { |
736 | if(chkConfig(true)) return; | ||
718 | InstallTalkWindow *installWindow = new InstallTalkWindow(this); | 737 | InstallTalkWindow *installWindow = new InstallTalkWindow(this); |
719 | installWindow->setUserSettings(userSettings); | 738 | installWindow->setUserSettings(userSettings); |
720 | installWindow->setDeviceSettings(devices); | 739 | installWindow->setDeviceSettings(devices); |
@@ -724,6 +743,7 @@ void RbUtilQt::createTalkFiles(void) | |||
724 | 743 | ||
725 | void RbUtilQt::uninstall(void) | 744 | void RbUtilQt::uninstall(void) |
726 | { | 745 | { |
746 | if(chkConfig(true)) return; | ||
727 | UninstallWindow *uninstallWindow = new UninstallWindow(this); | 747 | UninstallWindow *uninstallWindow = new UninstallWindow(this); |
728 | uninstallWindow->setUserSettings(userSettings); | 748 | uninstallWindow->setUserSettings(userSettings); |
729 | uninstallWindow->setDeviceSettings(devices); | 749 | uninstallWindow->setDeviceSettings(devices); |
@@ -732,6 +752,7 @@ void RbUtilQt::uninstall(void) | |||
732 | 752 | ||
733 | void RbUtilQt::uninstallBootloader(void) | 753 | void RbUtilQt::uninstallBootloader(void) |
734 | { | 754 | { |
755 | if(chkConfig(true)) return; | ||
735 | if(QMessageBox::question(this, tr("Confirm Uninstallation"), | 756 | if(QMessageBox::question(this, tr("Confirm Uninstallation"), |
736 | tr("Do you really want to uninstall the Bootloader?"), | 757 | tr("Do you really want to uninstall the Bootloader?"), |
737 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; | 758 | QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return; |
@@ -761,6 +782,7 @@ void RbUtilQt::uninstallBootloader(void) | |||
761 | 782 | ||
762 | void RbUtilQt::downloadManual(void) | 783 | void RbUtilQt::downloadManual(void) |
763 | { | 784 | { |
785 | if(chkConfig(true)) return; | ||
764 | if(QMessageBox::question(this, tr("Confirm download"), | 786 | if(QMessageBox::question(this, tr("Confirm download"), |
765 | tr("Do you really want to download the manual? The manual will be saved " | 787 | tr("Do you really want to download the manual? The manual will be saved " |
766 | "to the root folder of your player."), | 788 | "to the root folder of your player."), |
@@ -921,3 +943,19 @@ QUrl RbUtilQt::proxy() | |||
921 | return QUrl(""); | 943 | return QUrl(""); |
922 | } | 944 | } |
923 | 945 | ||
946 | |||
947 | bool RbUtilQt::chkConfig(bool warn) | ||
948 | { | ||
949 | bool error = false; | ||
950 | if(userSettings->value("platform").toString().isEmpty() | ||
951 | || userSettings->value("mountpoint").toString().isEmpty() | ||
952 | || !QFileInfo(userSettings->value("mountpoint").toString()).isWritable()) { | ||
953 | error = true; | ||
954 | |||
955 | if(warn) QMessageBox::critical(this, tr("Configuration error"), | ||
956 | tr("You configuration is invalid. Please go to the configuration " | ||
957 | "dialog and make sure the selected values are correct.")); | ||
958 | } | ||
959 | return error; | ||
960 | } | ||
961 | |||
diff --git a/rbutil/rbutilqt/rbutilqt.h b/rbutil/rbutilqt/rbutilqt.h index cdabd6c571..f656caf451 100644 --- a/rbutil/rbutilqt/rbutilqt.h +++ b/rbutil/rbutilqt/rbutilqt.h | |||
@@ -56,6 +56,7 @@ class RbUtilQt : public QMainWindow | |||
56 | BootloaderInstaller* blinstaller; | 56 | BootloaderInstaller* blinstaller; |
57 | QUrl proxy(void); | 57 | QUrl proxy(void); |
58 | QMap<QString, QString> versmap; | 58 | QMap<QString, QString> versmap; |
59 | bool chkConfig(bool); | ||
59 | 60 | ||
60 | volatile bool m_installed; | 61 | volatile bool m_installed; |
61 | volatile bool m_error; | 62 | volatile bool m_error; |