I’m developing a Plugin that have a DataAsset with it’s own Editor. The DataAsset contains a USTRUCT that have a AACtor property (Item).
USTRUCT(BlueprintType)
struct FTask
{
UPROPERTY(EditAnywhere , BlueprintReadWrite, Category = “Task”)
FString TaskName;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = “Task”)
AActor* Item;
}
In my DataAsset editor I’m able to customize Unreal’s detail panel using a class inheriting IDetailCustomization and then use the CustomizeDetails function.
void FDialoguePluginEditorSettingsDetails::CustomizeDetails( IDetailLayoutBuilder& DetailLayout )
{
const TSharedPtr Array = DataProperty->AsArray();
const TSharedPtr Child = Array->GetElement(index);
const TSharedPtr TaskName = Child->GetChildHandle(“TaskName”);
const TSharedPtr Tasks = Child->GetChildHandle(“Tasks”);
CurrentNodeCategory.AddProperty(MissionName);
CurrentNodeCategory.AddProperty(Tasks);
}
This works fine and the properties show up in the detailed panel. The UStruct property Task is also possible to expand in the detailed panel. The only issue is that the AActor Item property in the FTask UStruct is not possible to set. I can click the Drop Down in the Detailed Panel for that property and see all Actors currently in the Scene, but when i try to select it doesn’t. Other properties in the FTask Ustruct can be changed.
Is this something related to it is a AActor? Do I need to customize the detail panels layout for my FTask UStruct as well?