Files
UnrealEngine/Engine/Source/Editor/UnrealEd/Public/MergeUtils.h
2025-05-18 13:04:45 +08:00

37 lines
1.1 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "AssetDefinition.h"
#include "MergeUtils.generated.h"
namespace MergeUtils
{
UNREALED_API EAssetCommandResult Merge(const FAssetAutomaticMergeArgs& MergeArgs);
UNREALED_API EAssetCommandResult Merge(const FAssetManualMergeArgs& MergeArgs);
// download and load a temp package at a source control file path
UNREALED_API UPackage* LoadPackageForMerge(const FString& SCFile, const FString& Revision, const UPackage* LocalPackage);
// download a source control file path and return it's local path
UNREALED_API FString LoadSCFileForMerge(const FString& SCFile, const FString& Revision);
}
UCLASS()
class UUndoableResolveHandler : public UObject
{
public:
GENERATED_BODY()
void SetManagedObject(UObject* Object);
void MarkResolved();
virtual void PostEditUndo() override;
private:
FString BaseRevisionNumber;
FString CurrentRevisionNumber;
FString BackupFilepath;
TWeakObjectPtr<UObject> ManagedObject;
TSharedPtr<class ISourceControlChangelist> CheckinIdentifier;
UPROPERTY()
bool bShouldBeResolved = false;
};