summaryrefslogtreecommitdiff
path: root/src/settingsdialogdiagnostics.cpp
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2019-11-22 07:44:09 -0500
committerisanae <14251494+isanae@users.noreply.github.com>2019-11-22 07:44:09 -0500
commit8fcaea9de32b888ec8839ef6b7f394556383275e (patch)
tree98996aedaf69902251328f8598c9670d27199cbc /src/settingsdialogdiagnostics.cpp
parent2b5747c19d942974295be18042fbdde8ddc4cc78 (diff)
added loot log level option
Diffstat (limited to 'src/settingsdialogdiagnostics.cpp')
-rw-r--r--src/settingsdialogdiagnostics.cpp36
1 files changed, 33 insertions, 3 deletions
diff --git a/src/settingsdialogdiagnostics.cpp b/src/settingsdialogdiagnostics.cpp
index 386c7425..74cadaa9 100644
--- a/src/settingsdialogdiagnostics.cpp
+++ b/src/settingsdialogdiagnostics.cpp
@@ -9,7 +9,8 @@ using namespace MOBase;
DiagnosticsSettingsTab::DiagnosticsSettingsTab(Settings& s, SettingsDialog& d)
: SettingsTab(s, d)
{
- setLevelsBox();
+ setLogLevel();
+ setLootLogLevel();
setCrashDumpTypesBox();
ui->dumpsMaxEdit->setValue(settings().diagnostics().crashDumpsMax());
@@ -26,7 +27,7 @@ DiagnosticsSettingsTab::DiagnosticsSettingsTab(Settings& s, SettingsDialog& d)
);
}
-void DiagnosticsSettingsTab::setLevelsBox()
+void DiagnosticsSettingsTab::setLogLevel()
{
ui->logLevelBox->clear();
@@ -35,14 +36,40 @@ void DiagnosticsSettingsTab::setLevelsBox()
ui->logLevelBox->addItem(QObject::tr("Warning"), log::Warning);
ui->logLevelBox->addItem(QObject::tr("Error"), log::Error);
+ const auto sel = settings().diagnostics().logLevel();
+
for (int i=0; i<ui->logLevelBox->count(); ++i) {
- if (ui->logLevelBox->itemData(i) == settings().diagnostics().logLevel()) {
+ if (ui->logLevelBox->itemData(i) == sel) {
ui->logLevelBox->setCurrentIndex(i);
break;
}
}
}
+void DiagnosticsSettingsTab::setLootLogLevel()
+{
+ using L = lootcli::LogLevels;
+
+ auto v = [](L level) { return QVariant(static_cast<int>(level)); };
+
+ ui->lootLogLevel->clear();
+
+ ui->lootLogLevel->addItem(QObject::tr("Trace"), v(L::Trace));
+ ui->lootLogLevel->addItem(QObject::tr("Debug"), v(L::Debug));
+ ui->lootLogLevel->addItem(QObject::tr("Info (recommended)"), v(L::Info));
+ ui->lootLogLevel->addItem(QObject::tr("Warning"), v(L::Warning));
+ ui->lootLogLevel->addItem(QObject::tr("Error"), v(L::Error));
+
+ const auto sel = settings().diagnostics().lootLogLevel();
+
+ for (int i=0; i<ui->lootLogLevel->count(); ++i) {
+ if (ui->lootLogLevel->itemData(i) == v(sel)) {
+ ui->lootLogLevel->setCurrentIndex(i);
+ break;
+ }
+ }
+}
+
void DiagnosticsSettingsTab::setCrashDumpTypesBox()
{
ui->dumpsTypeBox->clear();
@@ -76,4 +103,7 @@ void DiagnosticsSettingsTab::update()
static_cast<CrashDumpsType>(ui->dumpsTypeBox->currentData().toInt()));
settings().diagnostics().setCrashDumpsMax(ui->dumpsMaxEdit->value());
+
+ settings().diagnostics().setLootLogLevel(
+ static_cast<lootcli::LogLevels>(ui->lootLogLevel->currentData().toInt()));
}