NOTE: This was a question initially, but the problem was my UI displaying incorrect data. This part of the code works, so I have edited the post (and title) for anyone trying to do the same!
To set your struct, you first get a pointer to it using the IPropertyHandle that the CustomizeChildren provides.
Then, to change the values you get a pointer to the struct and modify it's values. Simple as that!
To set your struct, you first get a pointer to it using the IPropertyHandle that the CustomizeChildren provides.
Code:
FMyStruct* FMyStructCustomization::GetData() { TArray<UObject*> objects; handle->GetOuterObjects(objects); return (FMyStruct*)handle->GetValueBaseAddress((uint8*)objects[0]); }
Code:
handle->NotifyPreChange(); FMyStruct* data = GetData(); data->dummyFloatArray.Add(0); data->dummyBool = true; handle->NotifyPostChange(EPropertyChangeType::ValueSet);
Comment