Files
UnrealEngineUWP/Engine/Source/Editor/Sequencer/Private/MovieSceneSequenceEditor.cpp
ryan durand 627baf970a Updating copyright for Engine Editor.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870586 by ryan durand in Main branch]
2019-12-26 15:33:43 -05:00

50 lines
1.4 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "MovieSceneSequenceEditor.h"
#include "Modules/ModuleManager.h"
#include "MovieSceneSequence.h"
#include "ISequencerModule.h"
#include "BlueprintActionDatabase.h"
FMovieSceneSequenceEditor* FMovieSceneSequenceEditor::Find(UMovieSceneSequence* InSequence)
{
ISequencerModule& SequencerModule = FModuleManager::LoadModuleChecked<ISequencerModule>("Sequencer");
return InSequence ? SequencerModule.FindSequenceEditor(InSequence->GetClass()) : nullptr;
}
bool FMovieSceneSequenceEditor::SupportsEvents(UMovieSceneSequence* InSequence) const
{
return CanCreateEvents(InSequence);
}
UBlueprint* FMovieSceneSequenceEditor::FindDirectorBlueprint(UMovieSceneSequence* Sequence) const
{
return GetBlueprintForSequence(Sequence);
}
UBlueprint* FMovieSceneSequenceEditor::GetOrCreateDirectorBlueprint(UMovieSceneSequence* Sequence) const
{
UBlueprint* Blueprint = GetBlueprintForSequence(Sequence);
if (!Blueprint)
{
Blueprint = CreateBlueprintForSequence(Sequence);
// This asset now has a blueprint where before it did not: refresh asset actions for this asset
UObject* AssetObject = Sequence;
while (AssetObject)
{
if (AssetObject->IsAsset())
{
break;
}
AssetObject = AssetObject->GetOuter();
}
if (AssetObject)
{
FBlueprintActionDatabase::Get().RefreshAssetActions(AssetObject);
}
}
return Blueprint;
}