Files
UnrealEngineUWP/Engine/Source/Editor/ContentBrowserData/Public/ContentBrowserDataDragDropOp.h
bryan sefcik 0837230669 Ran IWYU again on half of the Engine/Source/Editor/... source files.
#jira

[CL 21716414 by bryan sefcik in ue5-main branch]
2022-08-30 23:03:03 -04:00

59 lines
1.7 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Containers/Array.h"
#include "Containers/ArrayView.h"
#include "Containers/UnrealString.h"
#include "ContentBrowserItem.h"
#include "CoreMinimal.h"
#include "DragAndDrop/AssetDragDropOp.h"
#include "HAL/Platform.h"
#include "Input/DragAndDrop.h"
#include "Internationalization/Text.h"
#include "Templates/SharedPointer.h"
class UActorFactory;
struct FAssetData;
class CONTENTBROWSERDATA_API FContentBrowserDataDragDropOp : public FAssetDragDropOp
{
public:
DRAG_DROP_OPERATOR_TYPE(FContentBrowserDataDragDropOp, FAssetDragDropOp)
static TSharedRef<FContentBrowserDataDragDropOp> New(TArrayView<const FContentBrowserItem> InDraggedItems);
static TSharedRef<FContentBrowserDataDragDropOp> Legacy_New(TArrayView<const FAssetData> InAssetData, TArrayView<const FString> InAssetPaths = TArrayView<const FString>(), UActorFactory* InActorFactory = nullptr);
const TArray<FContentBrowserItem>& GetDraggedItems() const
{
return DraggedItems;
}
const TArray<FContentBrowserItem>& GetDraggedFiles() const
{
return DraggedFiles;
}
const TArray<FContentBrowserItem>& GetDraggedFolders() const
{
return DraggedFolders;
}
private:
void Init(TArrayView<const FContentBrowserItem> InDraggedItems);
void LegacyInit(TArrayView<const FAssetData> InAssetData, TArrayView<const FString> InAssetPaths, UActorFactory* ActorFactory);
virtual void InitThumbnail() override;
virtual bool HasFiles() const override;
virtual bool HasFolders() const override;
virtual int32 GetTotalCount() const override;
virtual FText GetFirstItemText() const override;
private:
TArray<FContentBrowserItem> DraggedItems;
TArray<FContentBrowserItem> DraggedFiles;
TArray<FContentBrowserItem> DraggedFolders;
};