Files
UnrealEngineUWP/Engine/Source/Developer/SettingsEditor/Public/Interfaces/ISettingsEditorModule.h
Max Preussner c4ed35f529 SettingsEditor: Documentation cleanup pass
[CL 2095322 by Max Preussner in Main branch]
2014-06-04 23:08:52 -04:00

57 lines
1.3 KiB
C++

// Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
/*=============================================================================
ISettingsEditorModule.h: Declares the ISettingsEditorModule interface.
=============================================================================*/
#pragma once
/**
* Interface for settings editor modules.
*/
class ISettingsEditorModule
: public IModuleInterface
{
public:
/**
* Creates a settings editor widget.
*
* @param Model The view model.
* @return The new widget.
* @see CreateController
*/
virtual TSharedRef<SWidget> CreateEditor( const ISettingsEditorModelRef& Model ) = 0;
/**
* Creates a view model for the settings editor widget.
*
* @param SettingsContainer The settings container.
* @return The controller.
* @see CreateEditor
*/
virtual ISettingsEditorModelRef CreateModel( const ISettingsContainerRef& SettingsContainer ) = 0;
public:
/**
* Gets a reference to the SettingsEditor module instance.
*
* @todo gmp: better implementation using dependency injection / abstract factory.
*
* @return A reference to the SettingsEditor module.
*/
static ISettingsEditorModule& GetRef( )
{
return FModuleManager::GetModuleChecked<ISettingsEditorModule>("SettingsEditor");
}
public:
/**
* Virtual destructor.
*/
virtual ~ISettingsEditorModule( ) { }
};