Files
UnrealEngineUWP/Engine/Source/Editor/StatusBar/Private/SourceControlMenuHelpers.h
Luc Eygasier 84ac733e6b Adds Submit Content menu entry.
Moves Source Control related actions to Tools menu.

#rb Sebastien.Lussier
#jira UE-117782, FORT-415499
#p4v-cherrypick 17872483

#changelist validated

[CL 17876035 by Luc Eygasier in ue5-main branch]
2021-10-20 14:15:53 -04:00

65 lines
1.5 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Framework/Commands/Commands.h"
#include "ISourceControlOperation.h"
#include "ISourceControlProvider.h"
class FUICommandList;
class SWidget;
class FSourceControlCommands : public TCommands<FSourceControlCommands>
{
public:
FSourceControlCommands();
/**
* Initialize commands
*/
virtual void RegisterCommands() override;
private:
static void ConnectToSourceControl_Clicked();
static bool ViewChangelists_CanExecute();
static void ViewChangelists_Clicked();
static bool CheckOutModifiedFiles_CanExecute();
static void CheckOutModifiedFiles_Clicked();
public:
/**
* Source Control Commands
*/
TSharedPtr< FUICommandInfo > ConnectToSourceControl;
TSharedPtr< FUICommandInfo > ChangeSourceControlSettings;
TSharedPtr< FUICommandInfo > ViewChangelists;
TSharedPtr< FUICommandInfo > SubmitContent;
TSharedPtr< FUICommandInfo > CheckOutModifiedFiles;
static TSharedRef<FUICommandList> ActionList;
};
struct FSourceControlMenuHelpers
{
enum EQueryState
{
NotQueried,
Querying,
Queried,
};
static EQueryState QueryState;
static void CheckSourceControlStatus();
static void OnSourceControlOperationComplete(const FSourceControlOperationRef& InOperation, ECommandResult::Type InResult);
static TSharedRef<SWidget> GenerateSourceControlMenuContent();
static FText GetSourceControlStatusText();
static FText GetSourceControlTooltip();
static const FSlateBrush* GetSourceControlIcon();
static TSharedRef<SWidget> MakeSourceControlStatusWidget();
};