Implement Log Level selector setting.

This commit is contained in:
Malkierian 2025-03-30 23:33:45 -07:00
commit 5ff39c1cb5
2 changed files with 15 additions and 0 deletions

View file

@ -346,6 +346,10 @@ OTRGlobals::OTRGlobals() {
context->InitCrashHandler(); context->InitCrashHandler();
context->InitConsole(); context->InitConsole();
Ship::Context::GetInstance()->GetLogger()->set_level(
(spdlog::level::level_enum)CVarGetInteger(CVAR_DEVELOPER_TOOLS("LogLevel"), 1));
Ship::Context::GetInstance()->GetLogger()->set_pattern("[%H:%M:%S.%e] [%s:%#] [%l] %v");
auto sohInputEditorWindow = std::make_shared<SohInputEditorWindow>(CVAR_WINDOW("ControllerConfiguration"), "Configure Controller"); auto sohInputEditorWindow = std::make_shared<SohInputEditorWindow>(CVAR_WINDOW("ControllerConfiguration"), "Configure Controller");
auto sohFast3dWindow = std::make_shared<Fast::Fast3dWindow>(std::vector<std::shared_ptr<Ship::GuiWindow>>({sohInputEditorWindow})); auto sohFast3dWindow = std::make_shared<Fast::Fast3dWindow>(std::vector<std::shared_ptr<Ship::GuiWindow>>({sohInputEditorWindow}));
context->InitWindow(sohFast3dWindow); context->InitWindow(sohFast3dWindow);

View file

@ -85,6 +85,17 @@ void SohMenu::AddMenuDevTools() {
} }
}) })
.SameLine(true); .SameLine(true);
AddWidget(path, "Log Level", WIDGET_CVAR_COMBOBOX)
.CVar("gDeveloperTools.LogLevel")
.Options(ComboboxOptions()
.Tooltip("The log level determines which messages are printed to the "
"console. This does not affect the log file output")
.ComboMap(logLevels))
.Callback([](WidgetInfo& info) {
Ship::Context::GetInstance()->GetLogger()->set_level(
(spdlog::level::level_enum)CVarGetInteger(CVAR_DEVELOPER_TOOLS("LogLevel"), 1));
})
.PreFunc([](WidgetInfo& info) { info.isHidden = mSohMenu->disabledMap.at(DISABLE_FOR_DEBUG_MODE_OFF).active; });
// Stats // Stats
path.sidebarName = "Stats"; path.sidebarName = "Stats";