settingswidget.cpp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #include "settingswidget.h"
  2. #include "ui_settingswidget.h"
  3. #include "dbman.cpp"
  4. #include <QButtonGroup>
  5. #include <QRegExp>
  6. #include <QValidator>
  7. #include <QDebug>
  8. settingsWidget::settingsWidget(QWidget *parent) :
  9. QWidget(parent),
  10. ui(new Ui::settingsWidget)
  11. {
  12. ui->setupUi(this);
  13. /*
  14. * General Tab
  15. */
  16. auto *themeGroup = new QButtonGroup;
  17. themeGroup->addButton(ui->systemThemeCheckBox);
  18. themeGroup->addButton(ui->lightThemeCheckBox);
  19. themeGroup->addButton(ui->darkThemeCheckBox);
  20. switch (dbSettings::retreiveSetting("10").toInt()) {
  21. case 0:
  22. qDebug() << "System Theme";
  23. ui->systemThemeCheckBox->setChecked(true);
  24. break;
  25. case 1:
  26. qDebug() << "Light Theme";
  27. ui->lightThemeCheckBox->setChecked(true);
  28. break;
  29. case 2:
  30. qDebug() << "Dark Theme";
  31. ui->darkThemeCheckBox->setChecked(true);
  32. }
  33. /*
  34. * Flight Logging Tab
  35. */
  36. QString storedPrefix = dbSettings::retreiveSetting("50");
  37. if (storedPrefix.length() != 0){
  38. ui->flightNumberPrefixLineEdit->setText(storedPrefix);
  39. }
  40. QRegExp flightNumberPrefix_rx("[a-zA-Z]?[a-zA-Z]?[a-zA-Z]?[a-zA-Z]"); // allow max 4 letters (upper and lower)
  41. QValidator *flightNumberPrefixValidator = new QRegExpValidator(flightNumberPrefix_rx, this);
  42. ui->flightNumberPrefixLineEdit->setValidator(flightNumberPrefixValidator);
  43. }
  44. settingsWidget::~settingsWidget()
  45. {
  46. delete ui;
  47. }
  48. /*
  49. * General Tab
  50. */
  51. void settingsWidget::on_flightNumberPrefixLineEdit_textEdited(const QString &arg1)
  52. {
  53. dbSettings::storeSetting(50, arg1);
  54. }