diff --git a/Source/DTFluxProjectSettings/DTFluxProjectSettings.Build.cs b/Source/DTFluxProjectSettings/DTFluxProjectSettings.Build.cs index 30c821f..fc8f6b4 100644 --- a/Source/DTFluxProjectSettings/DTFluxProjectSettings.Build.cs +++ b/Source/DTFluxProjectSettings/DTFluxProjectSettings.Build.cs @@ -23,7 +23,7 @@ public class DTFluxProjectSettings : ModuleRules "DeveloperSettings", "DTFluxCore", "Settings", - "DeveloperSettings" + "DeveloperSettings","AvalancheMedia" } ); diff --git a/Source/DTFluxProjectSettings/Private/DTFluxGeneralSettings.cpp b/Source/DTFluxProjectSettings/Private/DTFluxGeneralSettings.cpp index 2452696..2aa6929 100644 --- a/Source/DTFluxProjectSettings/Private/DTFluxGeneralSettings.cpp +++ b/Source/DTFluxProjectSettings/Private/DTFluxGeneralSettings.cpp @@ -2,6 +2,7 @@ #include "DTFluxGeneralSettings.h" +#include "Assets/DTFluxModelAsset.h" #include "DTFluxProjectSettingsModule.h" @@ -14,3 +15,17 @@ UDTFluxGeneralSettings::UDTFluxGeneralSettings() UE_LOG(logDTFluxProjectSettings, Log, TEXT("Category Name -> %s"), *GetCategoryName().ToString()); } + +void UDTFluxGeneralSettings::PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) +{ + Super::PostEditChangeProperty(PropertyChangedEvent); + if (PropertyChangedEvent.Property && + PropertyChangedEvent.Property->GetFName() == GET_MEMBER_NAME_CHECKED(UDTFluxGeneralSettings, RemoteTargetRundown)) + { + UE_LOG(LogTemp, Log, TEXT("RemoteTargetRundown property changed to: %s"), + RemoteTargetRundown.IsNull() ? TEXT("None") : *RemoteTargetRundown.ToString()); + + OnRemoteRundownChanged.Broadcast(RemoteTargetRundown); + } + +} diff --git a/Source/DTFluxProjectSettings/Public/DTFluxGeneralSettings.h b/Source/DTFluxProjectSettings/Public/DTFluxGeneralSettings.h index 2a28ea6..e7db181 100644 --- a/Source/DTFluxProjectSettings/Public/DTFluxGeneralSettings.h +++ b/Source/DTFluxProjectSettings/Public/DTFluxGeneralSettings.h @@ -7,6 +7,8 @@ #include "Engine/DeveloperSettings.h" #include "DTFluxGeneralSettings.generated.h" +class UAvaRundown; +// class UDTFluxModelAsset; /** * */ @@ -20,5 +22,14 @@ public: UDTFluxGeneralSettings(); UPROPERTY(Category="General", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Datastorage File") TSoftObjectPtr ModelAsset; + UPROPERTY(Category="General|Remote HTTP", Config, EditAnywhere, BlueprintReadOnly, DisplayName="Rundown Remote Target") + TSoftObjectPtr RemoteTargetRundown; +#if WITH_EDITOR + virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override; + + DECLARE_MULTICAST_DELEGATE_OneParam(FOnRemoteRundownChanged, const TSoftObjectPtr& ); + FOnRemoteRundownChanged OnRemoteRundownChanged; +#endif + };