Goran Lazarevski 669cf5383b Lucky World source code
2025-03-18 19:25:25 +01:00

59 lines
1.4 KiB
C++

// Copyright 2014-2019 Vladimir Alyamkin. All Rights Reserved.
#include "VaRest.h"
#include "VaRestDefines.h"
#include "VaRestLibrary.h"
#include "VaRestSettings.h"
#include "Developer/Settings/Public/ISettingsModule.h"
#include "UObject/Package.h"
#define LOCTEXT_NAMESPACE "FVaRestModule"
void FVaRestModule::StartupModule()
{
ModuleSettings = NewObject<UVaRestSettings>(GetTransientPackage(), "VaRestSettings", RF_Standalone);
ModuleSettings->AddToRoot();
// Register settings
if (ISettingsModule* SettingsModule = FModuleManager::GetModulePtr<ISettingsModule>("Settings"))
{
SettingsModule->RegisterSettings("Project", "Plugins", "VaRest",
LOCTEXT("RuntimeSettingsName", "VaRest"),
LOCTEXT("RuntimeSettingsDescription", "Configure VaRest plugin settings"),
ModuleSettings);
}
UE_LOG(LogVaRest, Log, TEXT("%s: VaRest (%s) module started"), *VA_FUNC_LINE, *UVaRestLibrary::GetVaRestVersion());
}
void FVaRestModule::ShutdownModule()
{
if (ISettingsModule* SettingsModule = FModuleManager::GetModulePtr<ISettingsModule>("Settings"))
{
SettingsModule->UnregisterSettings("Project", "Plugins", "VaRest");
}
if (!GExitPurge)
{
ModuleSettings->RemoveFromRoot();
}
else
{
ModuleSettings = nullptr;
}
}
UVaRestSettings* FVaRestModule::GetSettings() const
{
check(ModuleSettings);
return ModuleSettings;
}
IMPLEMENT_MODULE(FVaRestModule, VaRest)
DEFINE_LOG_CATEGORY(LogVaRest);
#undef LOCTEXT_NAMESPACE