Sequencer: Show an error dialog when using the Cinematics Toolbar menu and trying to open a Level Sequence (Actor) that has no Level Sequence (property) assigned to it.

#jira None
#rb Max.Chen, Richard.Boisvert
#preflight 6328cf7ea236a029de8864e7

[CL 22088515 by matt hoffman in ue5-main branch]
This commit is contained in:
matt hoffman
2022-09-20 00:31:24 -04:00
parent 25bbf4dbb5
commit 3025f39413
@@ -2089,14 +2089,21 @@ void FLevelEditorToolBar::OnCinematicsActorPicked( AActor* Actor )
// Make sure we dismiss the menus before we open this
if (ALevelSequenceActor* LevelSequenceActor = Cast<ALevelSequenceActor>(Actor))
{
FScopedSlowTask SlowTask(1.f, NSLOCTEXT("LevelToolBarCinematicsMenu", "LoadSequenceSlowTask", "Loading Level Sequence..."));
SlowTask.MakeDialog();
SlowTask.EnterProgressFrame();
UObject* Asset = LevelSequenceActor->GetSequence();
if (Asset != nullptr)
if (LevelSequenceActor->GetSequence())
{
GEditor->GetEditorSubsystem<UAssetEditorSubsystem>()->OpenEditorForAsset(Asset);
FScopedSlowTask SlowTask(1.f, NSLOCTEXT("LevelToolBarCinematicsMenu", "LoadSequenceSlowTask", "Loading Level Sequence..."));
SlowTask.MakeDialog();
SlowTask.EnterProgressFrame();
UObject* Asset = LevelSequenceActor->GetSequence();
if (Asset != nullptr)
{
GEditor->GetEditorSubsystem<UAssetEditorSubsystem>()->OpenEditorForAsset(Asset);
}
}
else
{
FMessageDialog::Open(EAppMsgType::Type::Ok, NSLOCTEXT("LevelToolBarCinematicsMenu", "LoadSequenceNotValid", "This Level Sequence actor does not have a Sequence asset assigned in the Details panel and cannot be opened."));
}
}
}