blob: 550b4dddd540b24dad0bd3bb092d25811f0ff296 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
#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);
});
// 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->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().setSaveFilters(ui->saveFiltersBox->isChecked());
// download list
settings().interface().setCompactDownloads(ui->compactBox->isChecked());
settings().interface().setMetaDownloads(ui->showMetaBox->isChecked());
// colors
ui->colorTable->commitColors();
}
|