Files
UnrealEngineUWP/Engine/Source/Developer/SourceControl/Private/DefaultSourceControlProvider.cpp
wouter burgers 286e2234bf SourceControl / UEFN: Remove / disable 'sync' context menu item in Content Browser.
For SourceControl providers that do not support individual file revisions, the 'Sync' option in the context menu of the Content Browser is misleading as it suggests only the selected files/folders will be synced, while in reality the sync is project wide. I've left the current behavior as the default behavior for all but Skein/Git of which I know they do not support individual file revisions.

#preflight 631ec93359159ac1832b5538

[CL 22086921 by wouter burgers in ue5-main branch]
2022-09-19 21:54:19 -04:00

125 lines
3.3 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "DefaultSourceControlProvider.h"
#include "Logging/MessageLog.h"
#if SOURCE_CONTROL_WITH_SLATE
#include "Widgets/SNullWidget.h"
#endif
#define LOCTEXT_NAMESPACE "DefaultSourceControlProvider"
void FDefaultSourceControlProvider::Init(bool bForceConnection)
{
FMessageLog("SourceControl").Info(LOCTEXT("SourceControlDisabled", "Source control is disabled"));
}
void FDefaultSourceControlProvider::Close()
{
}
FText FDefaultSourceControlProvider::GetStatusText() const
{
return LOCTEXT("SourceControlDisabled", "Source control is disabled");
}
bool FDefaultSourceControlProvider::IsAvailable() const
{
return false;
}
bool FDefaultSourceControlProvider::IsEnabled() const
{
return false;
}
const FName& FDefaultSourceControlProvider::GetName(void) const
{
static FName ProviderName("None");
return ProviderName;
}
ECommandResult::Type FDefaultSourceControlProvider::GetState( const TArray<FString>& InFiles, TArray< TSharedRef<ISourceControlState, ESPMode::ThreadSafe> >& OutState, EStateCacheUsage::Type InStateCacheUsage )
{
return ECommandResult::Failed;
}
ECommandResult::Type FDefaultSourceControlProvider::GetState(const TArray<FSourceControlChangelistRef>& InChangelists, TArray<FSourceControlChangelistStateRef>& OutState, EStateCacheUsage::Type InStateCacheUsage)
{
return ECommandResult::Failed;
}
TArray<FSourceControlStateRef> FDefaultSourceControlProvider::GetCachedStateByPredicate(TFunctionRef<bool(const FSourceControlStateRef&)> Predicate) const
{
return TArray<FSourceControlStateRef>();
}
FDelegateHandle FDefaultSourceControlProvider::RegisterSourceControlStateChanged_Handle( const FSourceControlStateChanged::FDelegate& SourceControlStateChanged )
{
return FDelegateHandle();
}
void FDefaultSourceControlProvider::UnregisterSourceControlStateChanged_Handle( FDelegateHandle Handle )
{
}
ECommandResult::Type FDefaultSourceControlProvider::Execute( const FSourceControlOperationRef& InOperation, FSourceControlChangelistPtr InChangelist, const TArray<FString>& InFiles, EConcurrency::Type InConcurrency, const FSourceControlOperationComplete& InOperationCompleteDelegate )
{
return ECommandResult::Failed;
}
bool FDefaultSourceControlProvider::CanCancelOperation( const FSourceControlOperationRef& InOperation ) const
{
return false;
}
void FDefaultSourceControlProvider::CancelOperation( const FSourceControlOperationRef& InOperation )
{
}
bool FDefaultSourceControlProvider::UsesLocalReadOnlyState() const
{
return false;
}
bool FDefaultSourceControlProvider::UsesChangelists() const
{
return false;
}
bool FDefaultSourceControlProvider::UsesCheckout() const
{
return false;
}
bool FDefaultSourceControlProvider::UsesFileRevisions() const
{
return true;
}
void FDefaultSourceControlProvider::Tick()
{
}
TArray< TSharedRef<ISourceControlLabel> > FDefaultSourceControlProvider::GetLabels( const FString& InMatchingSpec ) const
{
return TArray< TSharedRef<ISourceControlLabel> >();
}
TArray<FSourceControlChangelistRef> FDefaultSourceControlProvider::GetChangelists( EStateCacheUsage::Type InStateCacheUsage )
{
return TArray<FSourceControlChangelistRef>();
}
#if SOURCE_CONTROL_WITH_SLATE
TSharedRef<class SWidget> FDefaultSourceControlProvider::MakeSettingsWidget() const
{
return SNullWidget::NullWidget;
}
#endif // SOURCE_CONTROL_WITH_SLATE
#undef LOCTEXT_NAMESPACE