PageRenderTime 43ms CodeModel.GetById 19ms RepoModel.GetById 1ms app.codeStats 0ms

/uhgprepletterbombwizardpage.cpp

https://bitbucket.org/danielrutz/yauhgd-yet-another-uhg-downloader
C++ | 77 lines | 68 code | 9 blank | 0 comment | 4 complexity | 9d2c8610a740874180566078ecf7e61e MD5 | raw file
  1. #include "uhgprepletterbombwizardpage.h"
  2. #include <QApplication>
  3. #include <QDesktopServices>
  4. #include <QFileDialog>
  5. #include <QFile>
  6. #include <QMessageBox>
  7. #include "uhgprepwizard.h"
  8. UHGPrepLetterbombWizardPage::UHGPrepLetterbombWizardPage(QWidget *parent) :
  9. QWizardPage(parent)
  10. {
  11. text = new QLabel(tr("Es sollte sich nun ihr Webbrowser öffnen.\n"
  12. "Sollte dies nicht geschehen, öffnen Sie ihn bitte selbst und gehen auf die Website \"http://please.hackmii.com\".\n"
  13. "Geben Sie dort alle Informationen ein und entfernen Sie den Haken bei \"Bundle the Hackmii Installer for me!\".\n"
  14. "Klicken Sie danach auf \"Cut the red wire\" und laden Sie die Datei an einen Ort herunter, wo Sie sie wiederfinden.\n"
  15. "Drücken Sie dann auf \"Datei öffnen\" in diesem Assistenten und geben Sie den Dateiordner an.\n"
  16. "Sollten Sie einen Spieleexploit bevorzugen, so drücken Sie \"Ich nutze lieber ein Spiel\"."
  17. ));
  18. layout = new QVBoxLayout;
  19. OpenFileButton = new QPushButton(tr("Datei öffnen"));
  20. BetterUseGameExploitButton = new QPushButton(tr("Ich nutze lieber ein Spiel."));
  21. LinkToLetterbomb = new QLineEdit();
  22. LinkToLetterbomb->setEnabled(false);
  23. connect(OpenFileButton, SIGNAL(clicked()), this, SLOT(ButtonClick()));
  24. connect(BetterUseGameExploitButton, SIGNAL(clicked()), this, SLOT(GoToGameExploitPage()));
  25. layout->addWidget(text);
  26. layout->addWidget(OpenFileButton);
  27. layout->addWidget(LinkToLetterbomb);
  28. layout->addWidget(BetterUseGameExploitButton);
  29. setLayout(layout);
  30. }
  31. void UHGPrepLetterbombWizardPage::initializePage()
  32. {
  33. QDesktopServices::openUrl(QUrl("http://please.hackmii.com/"));
  34. clickedToGameExploit = false;
  35. }
  36. void UHGPrepLetterbombWizardPage::ButtonClick()
  37. {
  38. LinkToLetterbomb->setText(QFileDialog::getOpenFileName(this, tr("Bitte Letterbombdatei auswählen"), QString(), tr("Letterbomb.zip (Letterbomb*.zip)")));
  39. }
  40. bool UHGPrepLetterbombWizardPage::validatePage()
  41. {
  42. if(!clickedToGameExploit) {
  43. QFile test(LinkToLetterbomb->text());
  44. if (test.exists())
  45. {
  46. static_cast<UHGPrepWizard*>(wizard())->setExploit(UHGPrepWizard::Exploit::Exploit_Letterbomb);
  47. return true;
  48. }
  49. else
  50. {
  51. QMessageBox::critical(this, tr("Datei nicht gefunden"), tr("Die Datei wurde nicht gefunden.\nBitte überprüfen Sie den Pfad."));
  52. return false;
  53. }
  54. }
  55. else return true;
  56. }
  57. void UHGPrepLetterbombWizardPage::GoToGameExploitPage()
  58. {
  59. clickedToGameExploit = true;
  60. wizard()->next();
  61. }
  62. int UHGPrepLetterbombWizardPage::nextId() const
  63. {
  64. if (clickedToGameExploit)
  65. return UHGPrepWizard::Page_Exploits;
  66. else
  67. return UHGPrepWizard::Page_CheckInfos;
  68. }