Files
patrick boutot 03865cc874 MVVM: Save the function name and object name, if available, to the DebugSnapshot. Add a detait view for the DebugSnapshot. Change the main tab default layout.
#rb editor-ui-systems
#preflight 645139be6538e45f7555fb84, 646f5f1d6c2a2532b14c6791

[CL 25644278 by patrick boutot in ue5-main branch]
2023-05-26 12:02:21 -04:00

60 lines
1.3 KiB
C

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "AssetRegistry/AssetData.h"
#include "UObject/ObjectMacros.h"
#include "FieldNotificationId.h"
#include "MVVMDebugViewModel.generated.h"
USTRUCT()
struct FMVVMViewModelFieldBoundDebugEntry
{
GENERATED_BODY()
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
FName KeyObjectName;
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
FFieldNotificationId KeyFieldId;
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
FString BindingObjectPathName;
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
FName BindingFunctionName;
TWeakObjectPtr<const UObject> LiveInstanceKeyObject;
TWeakObjectPtr<const UObject> LiveInstanceBindingObject;
};
USTRUCT()
struct FMVVMViewModelDebugEntry
{
GENERATED_BODY()
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
FName Name;
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
FString PathName;
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
FAssetData ViewModelAsset;
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
TArray<FMVVMViewModelFieldBoundDebugEntry> FieldBound;
//UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
//FInstancedPropertyBag PropertyBag;
UPROPERTY(VisibleAnywhere, Category = "Viewmodel")
FGuid ViewModelDebugId;
TWeakObjectPtr<UObject> LiveViewModel;
};