// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "IDetailCustomization.h" #include "Templates/SharedPointer.h" #include "MovieSceneSpawnableBindingCustomization.h" class IDetailLayoutBuilder; class ISequencer; class IPropertyHandle; class STextComboBox; namespace ESelectInfo { enum Type : int; } class FMovieSceneSpawnableActorBindingBaseCustomization : public FMovieSceneSpawnableBindingCustomization { public: FMovieSceneSpawnableActorBindingBaseCustomization(TWeakPtr InSequencer, UMovieScene* InMovieScene, FGuid InBindingGuid) : FMovieSceneSpawnableBindingCustomization(InMovieScene, InBindingGuid) , SequencerPtr(InSequencer) {} static MOVIESCENETOOLS_API TSharedRef MakeInstance(TWeakPtr InSequencer, UMovieScene* InMovieScene, FGuid InBindingGuid); virtual void CustomizeDetails(IDetailLayoutBuilder& DetailBuilder) override; TWeakPtr SequencerPtr; TSharedPtr SpawnLevelProperty; // level names TSharedPtr LevelNameComboBox; TArray< TSharedPtr< FString > > LevelNameComboListItems; TArray LevelNameList; FName LevelNameComboSelectedName; void OnLevelNameChanged(TSharedPtr NewSelection, ESelectInfo::Type SelectInfo); void RefreshComboList(); };