Files
UnrealEngineUWP/Engine/Source/Developer/AutomationWindow/Private/AutomationWindowModule.cpp
Ben Marsh 13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00

63 lines
1.5 KiB
C++

// Copyright 1998-2018 Epic Games, Inc. All Rights Reserved.
#include "CoreMinimal.h"
#include "Modules/ModuleManager.h"
#include "Widgets/DeclarativeSyntaxSupport.h"
#include "ISessionManager.h"
#include "SAutomationWindow.h"
#include "IAutomationWindowModule.h"
/**
* Implements the AutomationWindow module.
*/
class FAutomationWindowModule
: public IAutomationWindowModule
{
public:
// IAutomationWindowModule interface
virtual TSharedRef<class SWidget> CreateAutomationWindow( const IAutomationControllerManagerRef& AutomationController, const TSharedRef<ISessionManager>& SessionManager ) override
{
return SNew(SAutomationWindow, AutomationController, SessionManager);
}
virtual TWeakPtr<class SDockTab> GetAutomationWindowTab( ) override
{
return AutomationWindowTabPtr;
}
virtual FOnAutomationWindowModuleShutdown& OnShutdown( ) override
{
return ShutdownDelegate;
}
virtual void SetAutomationWindowTab(TWeakPtr<class SDockTab> AutomationWindowTab) override { AutomationWindowTabPtr = AutomationWindowTab; }
public:
// IModuleInterface interface
virtual void StartupModule( ) override
{
}
virtual void ShutdownModule( ) override
{
ShutdownDelegate.ExecuteIfBound();
}
private:
// Holds the DockTab for the AutomationWindow
TWeakPtr<class SDockTab> AutomationWindowTabPtr;
// Holds FAutomationWindowModuleShutdownCallback
FOnAutomationWindowModuleShutdown ShutdownDelegate;
};
IMPLEMENT_MODULE(FAutomationWindowModule, AutomationWindow);