Files
UnrealEngineUWP/Engine/Source/Editor/DetailCustomizations/Private/ImportantToggleSettingCustomization.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

48 lines
1.7 KiB
C++

// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "UObject/WeakObjectPtr.h"
#include "IDetailCustomization.h"
class IDetailLayoutBuilder;
class IPropertyHandle;
//class FImportantToggleSettingCustomization : public IPropertyTypeCustomization
//{
//public:
// static TSharedRef<IPropertyTypeCustomization> MakeInstance();
//
// /** IPropertyTypeCustomization instance */
// virtual void CustomizeHeader(TSharedRef<IPropertyHandle> StructPropertyHandle, FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils) override;
// virtual void CustomizeChildren(TSharedRef<IPropertyHandle> StructPropertyHandle, class IDetailChildrenBuilder& ChildBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils) override;
//
//protected:
// TSharedPtr<IPropertyHandle> ToggleProperty;
//};
class FImportantToggleSettingCustomization : public IDetailCustomization
{
public:
/** Makes a new instance of this detail layout class for a specific detail view requesting it */
static TSharedRef<IDetailCustomization> MakeInstance();
// IDetailCustomization interface
virtual void CustomizeDetails(IDetailLayoutBuilder& DetailBuilder) override;
// End of IDetailCustomization interface
private:
//ECheckBoxState IsBoolPropertyTrue(TSharedRef<IPropertyHandle> PropertyHandle) const;
//void OnCheckStateChanged(ECheckBoxState CheckBoxState, TSharedRef<IPropertyHandle> PropertyHandle);
bool IsToggleValue(bool bValue) const;
void OnToggledTo(bool bSetTo);
void OnNavigateHyperlink(FString Url);
FText GetDescriptionText() const;
private:
TSharedPtr<IPropertyHandle> TogglePropertyHandle;
TWeakObjectPtr<UObject> ToggleSettingObject;
};