Files
UnrealEngineUWP/Engine/Source/Developer/SettingsEditor/Public/ISettingsEditorModule.h
ryan durand 471d972e62 Updating copyright for Engine Developer.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870584 by ryan durand in Main branch]
2019-12-26 15:32:37 -05:00

55 lines
1.4 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Widgets/SWidget.h"
#include "Modules/ModuleInterface.h"
class ISettingsContainer;
class ISettingsEditorModel;
/**
* 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 CreateModel
*/
virtual TSharedRef<SWidget> CreateEditor( const TSharedRef<ISettingsEditorModel>& Model ) = 0;
/**
* Creates a view model for the settings editor widget.
*
* @param SettingsContainer The settings container.
* @return The controller.
* @see CreateEditor
*/
virtual TSharedRef<ISettingsEditorModel> CreateModel( const TSharedRef<ISettingsContainer>& SettingsContainer ) = 0;
/**
* Called when the settings have been changed such that an application restart is required for them to be fully applied
*/
virtual void OnApplicationRestartRequired() = 0;
/**
* Set the delegate that should be called when a setting editor needs to restart the application
*
* @param InRestartApplicationDelegate The new delegate to call
*/
virtual void SetRestartApplicationCallback( FSimpleDelegate InRestartApplicationDelegate ) = 0;
public:
/** Virtual destructor. */
virtual ~ISettingsEditorModule() { }
};