diff options
| author | Mikaƫl Capelle <capelle.mikael@gmail.com> | 2021-01-11 12:49:42 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-11 12:49:42 +0100 |
| commit | 1dc2b225485a073d82e08a9820493086b2dda8b8 (patch) | |
| tree | 5a4e5478d577f065c7282cb62992c2b6c735e13f /src/settingsdialoguserinterface.cpp | |
| parent | a680dfa3e94b34bf6b0ebd65d29d7a9799e3183f (diff) | |
| parent | 05efc74e402ca3770d9fdaa2557f4030c31ee198 (diff) | |
Merge pull request #1350 from Holt59/collapsible-separators
Collapsible separators - Fix & Improvements.
Diffstat (limited to 'src/settingsdialoguserinterface.cpp')
| -rw-r--r-- | src/settingsdialoguserinterface.cpp | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/settingsdialoguserinterface.cpp b/src/settingsdialoguserinterface.cpp new file mode 100644 index 00000000..5d856395 --- /dev/null +++ b/src/settingsdialoguserinterface.cpp @@ -0,0 +1,56 @@ +#include "settingsdialoguserinterface.h" +#include "ui_settingsdialog.h" +#include "shared/appconfig.h" +#include "categoriesdialog.h" +#include "colortable.h" +#include <utility.h> +#include <questionboxmemory.h> + +using namespace MOBase; + +UserInterfaceSettingsTab::UserInterfaceSettingsTab(Settings& s, SettingsDialog& d) + : SettingsTab(s, d) +{ + + // connect before setting to trigger + QObject::connect(ui->collapsibleSeparatorsBox, &QGroupBox::toggled, [=](auto&& on) { + ui->collapsibleSeparatorsConflictsBox->setEnabled(on); + ui->collapsibleSeparatorsPerProfileBox->setEnabled(on); + }); + + // mod list + ui->displayForeignBox->setChecked(settings().interface().displayForeign()); + ui->colorSeparatorsBox->setChecked(settings().colors().colorSeparatorScrollbar()); + ui->collapsibleSeparatorsConflictsBox->setChecked(settings().interface().collapsibleSeparatorsConflicts()); + ui->collapsibleSeparatorsBox->setChecked(settings().interface().collapsibleSeparators()); + ui->collapsibleSeparatorsPerProfileBox->setChecked(settings().interface().collapsibleSeparatorsPerProfile()); + ui->saveFiltersBox->setChecked(settings().interface().saveFilters()); + + // download list + ui->compactBox->setChecked(settings().interface().compactDownloads()); + ui->showMetaBox->setChecked(settings().interface().metaDownloads()); + + // colors + ui->colorTable->load(s); + + QObject::connect(ui->resetColorsBtn, &QPushButton::clicked, [&] { ui->colorTable->resetColors(); }); + +} + +void UserInterfaceSettingsTab::update() +{ + // mod list + settings().colors().setColorSeparatorScrollbar(ui->colorSeparatorsBox->isChecked()); + settings().interface().setDisplayForeign(ui->displayForeignBox->isChecked()); + settings().interface().setCollapsibleSeparators(ui->collapsibleSeparatorsBox->isChecked()); + settings().interface().setCollapsibleSeparatorsConflicts(ui->collapsibleSeparatorsConflictsBox->isChecked()); + settings().interface().setCollapsibleSeparatorsPerProfile(ui->collapsibleSeparatorsPerProfileBox->isChecked()); + settings().interface().setSaveFilters(ui->saveFiltersBox->isChecked()); + + // download list + settings().interface().setCompactDownloads(ui->compactBox->isChecked()); + settings().interface().setMetaDownloads(ui->showMetaBox->isChecked()); + + // colors + ui->colorTable->commitColors(); +} |
