Files
UnrealEngineUWP/Engine/Source/Editor/BspMode/Private/BspModeModule.h
Ryan Vance 7c51ff94af Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR)
CL 1 of 8
#rb integration

[CL 4748712 by Ryan Vance in Dev-VR branch]
2019-01-17 18:54:05 -05:00

54 lines
1.4 KiB
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "UObject/Class.h"
#include "UObject/WeakObjectPtr.h"
#include "IBspModeModule.h"
struct FSlateBrush;
struct FBspBuilderType
{
FBspBuilderType(class UClass* InBuilderClass, const FText& InText, const FText& InToolTipText, const FSlateBrush* InIcon)
: BuilderClass(InBuilderClass)
, Text(InText)
, ToolTipText(InToolTipText)
, Icon(InIcon)
{
}
/** The class of the builder brush */
TWeakObjectPtr<UClass> BuilderClass;
/** The name to be displayed for this builder */
FText Text;
/** The name to be displayed for this builder */
FText ToolTipText;
/** The icon to be displayed for this builder */
const FSlateBrush* Icon;
};
class FBspModeModule : public IBspModeModule
{
public:
/** IModuleInterface interface */
virtual void StartupModule() override;
virtual void ShutdownModule() override;
/** IBspModeModule interface */
virtual void RegisterBspBuilderType( class UClass* InBuilderClass, const FText& InBuilderName, const FText& InBuilderTooltip, const FSlateBrush* InBuilderIcon ) override;
virtual void UnregisterBspBuilderType( class UClass* InBuilderClass ) override;
const TArray< TSharedPtr<FBspBuilderType> >& GetBspBuilderTypes();
TSharedPtr<FBspBuilderType> FindBspBuilderType(UClass* InBuilderClass) const;
private:
TArray< TSharedPtr<FBspBuilderType> > BspBuilderTypes;
};