Files
FLESH/Source/FLESHEditor/Public/FLESHEditorModule.h
2025-04-23 01:18:06 +08:00

32 lines
872 B
C++

#pragma once
#include "CoreMinimal.h"
#include "Modules/ModuleManager.h"
/**
* FLESH Editor Module - Editor tools for the Fully Locational Evisceration System for Humanoids
*/
class FFLESHEditorModule : public IModuleInterface
{
public:
/** IModuleInterface implementation */
virtual void StartupModule() override;
virtual void ShutdownModule() override;
/** Singleton getter */
static FFLESHEditorModule& Get()
{
return FModuleManager::LoadModuleChecked<FFLESHEditorModule>("FLESHEditor");
}
/** Open FLESH Editor Command - No parameters version for menu binding */
void OpenFLESHEditorCommand();
/** Open FLESH Editor */
void OpenFLESHEditor(const EToolkitMode::Type Mode, const TSharedPtr<IToolkitHost>& InitToolkitHost, TObjectPtr<UObject> ObjectToEdit);
private:
/** Plugin command list */
TSharedPtr<class FUICommandList> PluginCommands;
};