Files
UnrealEngineUWP/Engine/Source/Runtime/InteractiveToolsFramework/Private/InteractiveToolsContext.cpp
Chris Gagnon 930e33cb48 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.23 From CL 6837861
#rb none

[CL 6838042 by Chris Gagnon in Main branch]
2019-06-04 15:42:48 -04:00

39 lines
973 B
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#include "InteractiveToolsContext.h"
UInteractiveToolsContext::UInteractiveToolsContext()
{
InputRouter = nullptr;
ToolManager = nullptr;
}
void UInteractiveToolsContext::Initialize(IToolsContextQueriesAPI* QueriesAPI, IToolsContextTransactionsAPI* TransactionsAPI)
{
InputRouter = NewObject<UInputRouter>(this);
InputRouter->Initialize(TransactionsAPI);
ToolManager = NewObject<UInteractiveToolManager>(this);
ToolManager->Initialize(QueriesAPI, TransactionsAPI, InputRouter);
GizmoManager = NewObject<UInteractiveGizmoManager>(this);
GizmoManager->Initialize(QueriesAPI, TransactionsAPI, InputRouter);
}
void UInteractiveToolsContext::Shutdown()
{
// force-terminate any remaining captures/hovers/etc
InputRouter->ForceTerminateAll();
InputRouter->Shutdown();
InputRouter = nullptr;
GizmoManager->Shutdown();
GizmoManager = nullptr;
ToolManager->Shutdown();
ToolManager = nullptr;
}