// Copyright 2023 PICO Inc. All Rights Reserved. #include "PICOOpenXRRuntimeSettings.h" #include "Modules/ModuleInterface.h" #include "ISettingsModule.h" #include "Modules/ModuleManager.h" #include "PropertyEditorModule.h" #define LOCTEXT_NAMESPACE "FPICOOpenXREditorModule" class FPICOOpenXREditorModule : public IModuleInterface { virtual void StartupModule() override { ISettingsModule* SettingsModule = FModuleManager::GetModulePtr("Settings"); if (SettingsModule != nullptr) { SettingsModule->RegisterSettings("Project", "Plugins", "PICOOpenXR", LOCTEXT("RuntimeSettingsName", "PICO OpenXR"), LOCTEXT("RuntimeSettingsDescription", "Project settings for PICO OpenXR Extension plugin"), GetMutableDefault() ); #if WITH_EDITOR UPICOOpenXRRuntimeSettings* PICOSettings = GetMutableDefault(); if (PICOSettings) { PICOSettings->HandlesRGBHWSupport(); } #endif } } virtual void ShutdownModule() override { ISettingsModule* SettingsModule = FModuleManager::GetModulePtr("Settings"); if (SettingsModule != nullptr) { SettingsModule->UnregisterSettings("Project", "Plugins", "PICOOpenXR"); } } }; IMPLEMENT_MODULE(FPICOOpenXREditorModule, PICOOpenXREditor); #undef LOCTEXT_NAMESPACE