Files
UnrealEngineUWP/Engine/Source/Editor/GraphEditor/Private/MaterialNodes/SGraphNodeMaterialComposite.h
daren cheng 9a9a0cb1f9 Edigrate 16359780.
Don't create transactions except on release when moving nodes.

#jira UE-115317
#rb Francis.Hurteau, Patrick.Boutot
#preflight 60a3ff23733ad00001685c6a

[CL 16373994 by daren cheng in ue5-main branch]
2021-05-18 15:26:27 -04:00

43 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Widgets/DeclarativeSyntaxSupport.h"
#include "Widgets/SWidget.h"
#include "MaterialNodes/SGraphNodeMaterialBase.h"
class SToolTip;
class UEdGraph;
class UMaterialGraphNode_Composite;
//@TODO: This class is mostly C&P from UK2Node_Composite, consolidate composites to not be BP specific.
class GRAPHEDITOR_API SGraphNodeMaterialComposite : public SGraphNodeMaterialBase
{
public:
SLATE_BEGIN_ARGS(SGraphNodeMaterialComposite){}
SLATE_END_ARGS()
void Construct(const FArguments& InArgs, UMaterialGraphNode_Composite* InNode);
// SGraphNode interface
virtual void UpdateGraphNode() override;
virtual TSharedPtr<SToolTip> GetComplexTooltip() override;
// End of SGraphNode interface
// SNodePanel::SNode interface
virtual void MoveTo(const FVector2D& NewPosition, FNodeSet& NodeFilter, bool bMarkDirty = true) override;
// End of SNodePanel::SNode interface
protected:
virtual UEdGraph* GetInnerGraph() const;
private:
FText GetPreviewCornerText() const;
FText GetTooltipTextForNode() const;
TSharedRef<SWidget> CreateNodeBody();
/** Cached material graph node pointer to avoid casting */
UMaterialGraphNode_Composite* CompositeNode;
};