Files
UnrealEngineUWP/Engine/Source/Editor/EnvironmentQueryEditor/Private/DetailCustomizations/EnvTraceDataCustomization.h
Jaroslaw Palczynski ebce413232 UE4 Refactoring. Changed OVERRIDE and FINAL macros to keywords override and final.
[CL 2104397 by Jaroslaw Palczynski in Main branch]
2014-06-13 06:14:46 -04:00

51 lines
1.7 KiB
C++

// Copyright 1998-2013 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "PropertyEditing.h"
#include "PropertyCustomizationHelpers.h"
class FEnvTraceDataCustomization : public IPropertyTypeCustomization
{
public:
/** Makes a new instance of this detail layout class for a specific detail view requesting it */
static TSharedRef<IPropertyTypeCustomization> MakeInstance();
// Begin IPropertyTypeCustomization interface
virtual void CustomizeHeader( TSharedRef<class IPropertyHandle> StructPropertyHandle, class FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils ) override;
virtual void CustomizeChildren( TSharedRef<class IPropertyHandle> StructPropertyHandle, class IDetailChildrenBuilder& StructBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils ) override;
// End IPropertyTypeCustomization interface
protected:
void CacheTraceModes(TSharedRef<class IPropertyHandle> StructPropertyHandle);
/** cached names of trace modes */
struct FStringIntPair
{
FString Str;
int32 Int;
FStringIntPair() {}
FStringIntPair(FString InStr, int32 InInt) : Str(InStr), Int(InInt) {}
};
TArray<FStringIntPair> TraceModes;
bool bCanShowProjection;
uint8 ActiveMode;
TSharedPtr<IPropertyHandle> PropTraceMode;
TSharedPtr<IPropertyHandle> PropTraceShape;
void OnTraceModeChanged(int32 Index);
TSharedRef<SWidget> OnGetTraceModeContent();
FString GetCurrentTraceModeDesc() const;
FString GetShortDescription() const;
EVisibility GetGeometryVisibility() const;
EVisibility GetNavigationVisibility() const;
EVisibility GetProjectionVisibility() const;
EVisibility GetExtentX() const;
EVisibility GetExtentY() const;
EVisibility GetExtentZ() const;
};