Files
UnrealEngineUWP/Engine/Source/Editor/BspMode/Private/BspModeModule.h
Ben Marsh 20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00

54 lines
1.4 KiB
C++

// Copyright 1998-2017 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;
};