Files
UnrealEngineUWP/Engine/Source/Editor/ActorPickerMode/Private/ActorPickerMode.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

46 lines
1.4 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "ActorPickerMode.h"
#include "Modules/ModuleManager.h"
#include "EditorModeRegistry.h"
#include "EditorModeManager.h"
#include "EditorModes.h"
#include "EditorModeActorPicker.h"
IMPLEMENT_MODULE( FActorPickerModeModule, ActorPickerMode );
void FActorPickerModeModule::StartupModule()
{
FEditorModeRegistry::Get().RegisterMode<FEdModeActorPicker>(FBuiltinEditorModes::EM_ActorPicker);
}
void FActorPickerModeModule::ShutdownModule()
{
FEditorModeRegistry::Get().UnregisterMode(FBuiltinEditorModes::EM_ActorPicker);
}
void FActorPickerModeModule::BeginActorPickingMode(FOnGetAllowedClasses InOnGetAllowedClasses, FOnShouldFilterActor InOnShouldFilterActor, FOnActorSelected InOnActorSelected)
{
// Activate the mode
GLevelEditorModeTools().ActivateMode(FBuiltinEditorModes::EM_ActorPicker);
// Set the required delegates
FEdModeActorPicker* Mode = GLevelEditorModeTools().GetActiveModeTyped<FEdModeActorPicker>(FBuiltinEditorModes::EM_ActorPicker);
if (ensure(Mode))
{
Mode->OnActorSelected = InOnActorSelected;
Mode->OnGetAllowedClasses = InOnGetAllowedClasses;
Mode->OnShouldFilterActor = InOnShouldFilterActor;
}
}
void FActorPickerModeModule::EndActorPickingMode()
{
GLevelEditorModeTools().DeactivateMode(FBuiltinEditorModes::EM_ActorPicker);
}
bool FActorPickerModeModule::IsInActorPickingMode() const
{
return GLevelEditorModeTools().IsModeActive(FBuiltinEditorModes::EM_ActorPicker);
}