// Copyright 1998-2019 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 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< TSharedRef >& 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 TSharedRef& InOperation, const TArray& InFiles, EConcurrency::Type InConcurrency = EConcurrency::Synchronous, const FSourceControlOperationComplete& InOperationCompleteDelegate = FSourceControlOperationComplete() ) override; virtual bool CanCancelOperation( const TSharedRef& InOperation ) const override; virtual void CancelOperation( const TSharedRef& InOperation ) override; virtual bool UsesLocalReadOnlyState() const override; virtual bool UsesChangelists() const override; virtual bool UsesCheckout() const override; virtual void Tick() override; virtual TArray< TSharedRef > GetLabels( const FString& InMatchingSpec ) const override; #if SOURCE_CONTROL_WITH_SLATE virtual TSharedRef MakeSettingsWidget() const override; #endif // SOURCE_CONTROL_WITH_SLATE };