LifePlay-Revival/Plugins/StreetMap/Source/StreetMapImporting/StreetMapImporting.cpp
edujiro5972 1122e17fa6 L0 : etat initial du projet 5.5 avant toute correction
Instantane de reference de la reprise de migration (2026-09-29).
Contient GI.uasset tel que trouve (copie UE4 identique a 4.27,
MD5 F4550DA5DC05FC005400CDCA2FC123C9). Ajouts de ce commit :
.gitattributes (aucune conversion de fin de ligne), regles .gitignore
CHG-001, Tools/ (Snapshot, Restore, AssetHeaders), empreintes L0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 00:56:10 +02:00

60 lines
2 KiB
C++

#include "StreetMapImporting.h"
#include "StreetMapAssetTypeActions.h"
#include "Modules/ModuleManager.h"
#include "StreetMapStyle.h"
#include "StreetMapComponentDetails.h"
class FStreetMapImportingModule : public IModuleInterface
{
public:
// IModuleInterface interface
virtual void StartupModule() override;
virtual void ShutdownModule() override;
TSharedPtr< FStreetMapAssetTypeActions > StreetMapAssetTypeActions;
};
IMPLEMENT_MODULE( FStreetMapImportingModule, StreetMapImporting )
void FStreetMapImportingModule::StartupModule()
{
// Register asset types
IAssetTools& AssetTools = FModuleManager::LoadModuleChecked<FAssetToolsModule>( "AssetTools" ).Get();
StreetMapAssetTypeActions = MakeShareable( new FStreetMapAssetTypeActions() );
AssetTools.RegisterAssetTypeActions( StreetMapAssetTypeActions.ToSharedRef() );
// Initialize & Register StreetMap Style
FStreetMapStyle::Initialize();
// Register StreetMapComponent Detail Customization
FPropertyEditorModule& PropertyModule = FModuleManager::GetModuleChecked<FPropertyEditorModule>("PropertyEditor");
PropertyModule.RegisterCustomClassLayout("StreetMapComponent", FOnGetDetailCustomizationInstance::CreateStatic(&FStreetMapComponentDetails::MakeInstance));
PropertyModule.NotifyCustomizationModuleChanged();
}
void FStreetMapImportingModule::ShutdownModule()
{
// Unregister all the asset types that we registered
if( FModuleManager::Get().IsModuleLoaded( "AssetTools" ) )
{
IAssetTools& AssetTools = FModuleManager::GetModuleChecked<FAssetToolsModule>( "AssetTools" ).Get();
AssetTools.UnregisterAssetTypeActions( StreetMapAssetTypeActions.ToSharedRef() );
StreetMapAssetTypeActions.Reset();
}
// Unregister StreetMap Style
FStreetMapStyle::Shutdown();
if (FModuleManager::Get().IsModuleLoaded("PropertyEditor"))
{
FPropertyEditorModule& PropertyModule = FModuleManager::GetModuleChecked<FPropertyEditorModule>("PropertyEditor");
PropertyModule.UnregisterCustomClassLayout("StreetMapComponent");
PropertyModule.NotifyCustomizationModuleChanged();
}
}