Files
UnrealEngineUWP/Engine/Source/Developer/ProjectLauncher/Private/Widgets/Archive/SProjectLauncherArchivePage.h
Ben Marsh 20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00

68 lines
1.6 KiB
C++

// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Layout/Visibility.h"
#include "Widgets/DeclarativeSyntaxSupport.h"
#include "Input/Reply.h"
#include "Widgets/SCompoundWidget.h"
#include "Models/ProjectLauncherModel.h"
enum class ECheckBoxState : uint8;
/**
* Implements the profile page for the session launcher wizard.
*/
class SProjectLauncherArchivePage
: public SCompoundWidget
{
public:
SLATE_BEGIN_ARGS(SProjectLauncherArchivePage) { }
SLATE_END_ARGS()
public:
/** Destructor. */
~SProjectLauncherArchivePage( );
public:
/**
* Constructs the widget.
*
* @param InArgs The Slate argument list.
* @param InModel The data model.
*/
void Construct( const FArguments& InArgs, const FProjectLauncherModelRef& InModel );
private:
/** Callback for changing the checked state of an archive option. */
void HandleArchiveCheckedStateChanged( ECheckBoxState CheckState );
/** Callback for determining whether an archive option is checked. */
ECheckBoxState HandleArchiveIsChecked() const;
/** Callback for determining if the archive options should be displayed. */
EVisibility HandleArchiveVisibility( ) const;
/** Get archive directory text */
FText GetDirectoryPathText() const;
/** Handle browse button for archive directory*/
FReply HandleBrowseButtonClicked();
/** Whether archive directory is editable */
bool IsDirectoryEditable() const;
/** Handle commit event for archive directory text */
void OnDirectoryTextCommitted(const FText& InText, ETextCommit::Type CommitInfo);
private:
/** Holds a pointer to the data model. */
FProjectLauncherModelPtr Model;
};