You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
- Refactored sequencer to take in an object binding manager to manage the handles to objects that are being used at runtime. - Wrote binding manager for UMG - Added basic UFunction calling instead of setting properties directly [CL 2107387 by Matt Kuhlenschmidt in Main branch]
71 lines
2.3 KiB
C++
71 lines
2.3 KiB
C++
// Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "SequencerPrivatePCH.h"
|
|
#include "ModuleManager.h"
|
|
#include "Sequencer.h"
|
|
#include "Toolkits/ToolkitManager.h"
|
|
#include "SequencerCommands.h"
|
|
#include "SequencerAssetEditor.h"
|
|
|
|
/**
|
|
* SequencerModule implementation (private)
|
|
*/
|
|
class FSequencerModule : public ISequencerModule
|
|
{
|
|
|
|
/** ISequencerModule interface */
|
|
virtual TSharedPtr<ISequencer> CreateSequencer( UMovieScene* RootMovieScene, TSharedRef<ISequencerObjectBindingManager> ObjectBindingManager ) override
|
|
{
|
|
TSharedRef< FSequencer > Sequencer = MakeShareable(new FSequencer);
|
|
|
|
FSequencerInitParams SequencerInitParams;
|
|
SequencerInitParams.ObjectChangeListener = MakeShareable( new FSequencerObjectChangeListener( Sequencer, false ) );
|
|
|
|
SequencerInitParams.ObjectBindingManager = ObjectBindingManager;
|
|
|
|
SequencerInitParams.RootMovieScene = RootMovieScene;
|
|
|
|
SequencerInitParams.bEditWithinLevelEditor = false;
|
|
|
|
SequencerInitParams.ToolkitHost = nullptr;
|
|
|
|
Sequencer->InitSequencer( SequencerInitParams, TrackEditorDelegates );
|
|
|
|
return Sequencer;
|
|
}
|
|
|
|
virtual TSharedPtr<ISequencer> CreateSequencerAssetEditor( const EToolkitMode::Type Mode, const TSharedPtr< class IToolkitHost >& InitToolkitHost, UMovieScene* InRootMovieScene, bool bEditWithinLevelEditor ) override
|
|
{
|
|
TSharedRef< FSequencerAssetEditor > SequencerAssetEditor = MakeShareable(new FSequencerAssetEditor);
|
|
SequencerAssetEditor->InitSequencerAssetEditor( Mode, InitToolkitHost, InRootMovieScene, TrackEditorDelegates, bEditWithinLevelEditor );
|
|
return SequencerAssetEditor->GetSequencerInterface();
|
|
}
|
|
|
|
virtual void RegisterTrackEditor( FOnCreateTrackEditor InOnCreateTrackEditor ) override
|
|
{
|
|
TrackEditorDelegates.AddUnique( InOnCreateTrackEditor );
|
|
}
|
|
|
|
virtual void UnRegisterTrackEditor( FOnCreateTrackEditor InOnCreateTrackEditor ) override
|
|
{
|
|
TrackEditorDelegates.Remove( InOnCreateTrackEditor );
|
|
}
|
|
|
|
virtual void StartupModule() override
|
|
{
|
|
FSequencerCommands::Register();
|
|
}
|
|
|
|
virtual void ShutdownModule() override
|
|
{
|
|
FSequencerCommands::Unregister();
|
|
}
|
|
private:
|
|
/** List of auto-key handler delegates sequencers will execute when they are created */
|
|
TArray< FOnCreateTrackEditor > TrackEditorDelegates;
|
|
};
|
|
|
|
|
|
|
|
IMPLEMENT_MODULE( FSequencerModule, Sequencer );
|