// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "ISourceControlOperation.h" #include "ISourceControlState.h" #include "ISourceControlProvider.h" /** * Default source control provider implementation - "None" */ class FDefaultSourceControlProvider : public ISourceControlProvider { public: // ISourceControlProvider implementation virtual void Init(bool bForceConnection = true) override; virtual void Close() override; virtual FText GetStatusText() const override; virtual TMap GetStatus() const override; virtual bool IsAvailable() const override; virtual bool IsEnabled() const override; virtual const FName& GetName(void) const override; virtual bool QueryStateBranchConfig(const FString& ConfigSrc, const FString& ConfigDest) override { return false; } virtual void RegisterStateBranches(const TArray& BranchNames, const FString& ContentRoot) override {} virtual int32 GetStateBranchIndex(const FString& BranchName) const override { return INDEX_NONE; } virtual ECommandResult::Type GetState( const TArray& InFiles, TArray& OutState, EStateCacheUsage::Type InStateCacheUsage ) override; virtual ECommandResult::Type GetState(const TArray& InChangelists, TArray& OutState, EStateCacheUsage::Type InStateCacheUsage) override; virtual TArray GetCachedStateByPredicate(TFunctionRef Predicate) const override; virtual FDelegateHandle RegisterSourceControlStateChanged_Handle( const FSourceControlStateChanged::FDelegate& SourceControlStateChanged ) override; virtual void UnregisterSourceControlStateChanged_Handle( FDelegateHandle Handle ) override; virtual ECommandResult::Type Execute( const FSourceControlOperationRef& InOperation, FSourceControlChangelistPtr InChangelist, const TArray& InFiles, EConcurrency::Type InConcurrency = EConcurrency::Synchronous, const FSourceControlOperationComplete& InOperationCompleteDelegate = FSourceControlOperationComplete() ) override; virtual bool CanExecuteOperation( const FSourceControlOperationRef& InOperation ) const override; virtual bool CanCancelOperation( const FSourceControlOperationRef& InOperation ) const override; virtual void CancelOperation( const FSourceControlOperationRef& InOperation ) override; virtual bool UsesLocalReadOnlyState() const override; virtual bool UsesChangelists() const override; virtual bool UsesUncontrolledChangelists() const override; virtual bool UsesCheckout() const override; virtual bool UsesFileRevisions() const override; virtual bool UsesSnapshots() const override; virtual bool AllowsDiffAgainstDepot() const override; virtual TOptional IsAtLatestRevision() const override; virtual TOptional GetNumLocalChanges() const override; virtual void Tick() override; virtual TArray< TSharedRef > GetLabels( const FString& InMatchingSpec ) const override; virtual TArray GetChangelists( EStateCacheUsage::Type InStateCacheUsage ) override; #if SOURCE_CONTROL_WITH_SLATE virtual TSharedRef MakeSettingsWidget() const override; #endif // SOURCE_CONTROL_WITH_SLATE };