You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485 [CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
41 lines
1.4 KiB
C++
41 lines
1.4 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Engine/EngineTypes.h"
|
|
#include "Styling/SlateColor.h"
|
|
#include "IDetailCustomNodeBuilder.h"
|
|
|
|
class IDetailCategoryBuilder;
|
|
class IPropertyHandle;
|
|
enum class ECheckBoxState : uint8;
|
|
|
|
// Helper class to create a Mobility customization for the specified Property in the specified CategoryBuilder.
|
|
class DETAILCUSTOMIZATIONS_API FMobilityCustomization : public IDetailCustomNodeBuilder, public TSharedFromThis<FMobilityCustomization>
|
|
{
|
|
public:
|
|
enum
|
|
{
|
|
StaticMobilityBitMask = (1u << EComponentMobility::Static),
|
|
StationaryMobilityBitMask = (1u << EComponentMobility::Stationary),
|
|
MovableMobilityBitMask = (1u << EComponentMobility::Movable),
|
|
};
|
|
|
|
FMobilityCustomization(TSharedPtr<IPropertyHandle> InMobilityHandle, uint8 InRestrictedMobilityBits, bool InForLight);
|
|
|
|
virtual void GenerateHeaderRowContent(FDetailWidgetRow& WidgetRow) override;
|
|
virtual FName GetName() const override;
|
|
virtual TSharedPtr<IPropertyHandle> GetPropertyHandle() const override { return MobilityHandle; }
|
|
|
|
private:
|
|
|
|
EComponentMobility::Type GetActiveMobility() const;
|
|
FSlateColor GetMobilityTextColor(EComponentMobility::Type InMobility) const;
|
|
void OnMobilityChanged(EComponentMobility::Type InMobility);
|
|
FText GetMobilityToolTip() const;
|
|
|
|
TSharedPtr<IPropertyHandle> MobilityHandle;
|
|
bool bForLight;
|
|
uint8 RestrictedMobilityBits;
|
|
};
|