34 lines
1002 B
C++
34 lines
1002 B
C++
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Styling/SlateColor.h"
|
|
#include "Widgets/DeclarativeSyntaxSupport.h"
|
|
#include "Widgets/SWidget.h"
|
|
#include "SNodePanel.h"
|
|
#include "SGraphNode.h"
|
|
|
|
|
|
class SEdComboActionGraphEdge : public SGraphNode
|
|
{
|
|
public:
|
|
SLATE_BEGIN_ARGS(SEdComboActionGraphEdge){}
|
|
SLATE_END_ARGS()
|
|
|
|
void Construct(const FArguments &InArgs, class UEdComboActionGraphEdge *InNode);
|
|
|
|
virtual bool RequiresSecondPassLayout() const override;
|
|
virtual void PerformSecondPassLayout(const TMap<UObject*, TSharedRef<SNode> > &NodeToWidgetLookup) const override;
|
|
|
|
virtual void UpdateGraphNode() override;
|
|
|
|
// Calculate position for multiple nodes to be placed between a start and end point, by providing this nodes index and max expected nodes
|
|
void PositionBetweenTwoNodesWithOffset(const FGeometry &StartGeom, const FGeometry &EndGeom, int32 NodeIndex, int32 MaxNodes) const;
|
|
|
|
protected:
|
|
FSlateColor GetEdgeColor() const;
|
|
|
|
private:
|
|
TSharedPtr<STextEntryPopup> TextEntryWidget;
|
|
|
|
};
|