// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "KismetNodes/SGraphNodeK2Base.h" #include "Styling/SlateColor.h" #include "Templates/SharedPointer.h" #include "Types/SlateEnums.h" #include "Widgets/DeclarativeSyntaxSupport.h" class FText; class SWidget; class UK2Node; struct FMargin; struct FSlateBrush; class GRAPHEDITOR_API SGraphNodeK2Var : public SGraphNodeK2Base { public: SLATE_BEGIN_ARGS(SGraphNodeK2Var){} SLATE_END_ARGS() void Construct( const FArguments& InArgs, UK2Node* InNode ); virtual const FSlateBrush* GetShadowBrush(bool bSelected) const override; virtual void GetDiffHighlightBrushes(const FSlateBrush*& BackgroundOut, const FSlateBrush*& ForegroundOut) const override; // SGraphNode interface virtual void UpdateGraphNode() override; // End of SGraphNode interface protected: FSlateColor GetVariableColor() const; // Allow derived classes to override title widget virtual TSharedRef UpdateTitleWidget(FText InTitleText, TSharedPtr InTitleWidget, EHorizontalAlignment& InOutTitleHAlign, FMargin& InOutTitleMargin) const; };