// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "Layout/Visibility.h" #include "IPropertyTypeCustomization.h" class IPropertyHandle; class FEnvDirectionCustomization : public IPropertyTypeCustomization { public: //~ Begin IPropertyTypeCustomization Interface virtual void CustomizeHeader( TSharedRef StructPropertyHandle, class FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils ) override; virtual void CustomizeChildren( TSharedRef StructPropertyHandle, class IDetailChildrenBuilder& StructBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils ) override; //~ End IPropertyTypeCustomization Interface static TSharedRef MakeInstance( ); protected: TSharedPtr ModeProp; bool bIsRotation; FText GetShortDescription() const; EVisibility GetTwoPointsVisibility() const; EVisibility GetRotationVisibility() const; void OnModeChanged(); };