Graph Editor node menus converted to ToolMenus

#rb none
#rnx

[CL 7900622 by Rex Hill in Dev-Editor branch]
This commit is contained in:
Rex Hill
2019-08-08 16:32:13 -04:00
parent 5d516e8ca8
commit dc107df197
87 changed files with 520 additions and 496 deletions

View File

@@ -841,10 +841,10 @@ void UControlRigGraphNode::PinConnectionListChanged(UEdGraphPin* Pin)
}
void UControlRigGraphNode::GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const
void UControlRigGraphNode::GetNodeContextMenuActions(UToolMenu* Menu, UGraphNodeContextMenuContext* Context) const
{
#if WITH_EDITOR
IControlRigEditorModule::Get().GetContextMenuActions(this, Context);
IControlRigEditorModule::Get().GetNodeContextMenuActions(this, Menu, Context);
#endif
}

View File

@@ -168,7 +168,7 @@ public:
virtual void AllocateDefaultPins() override;
virtual void ReconstructNode() override;
virtual void PinConnectionListChanged(UEdGraphPin* Pin) override;
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
virtual void DestroyNode() override;
virtual void PinDefaultValueChanged(UEdGraphPin* Pin) override;
virtual TSharedPtr<INameValidatorInterface> MakeNameValidator() const override;

View File

@@ -860,50 +860,42 @@ FConnectionDrawingPolicy* FControlRigEditorModule::CreateConnectionDrawingPolicy
return new FControlRigConnectionDrawingPolicy(InBackLayerID, InFrontLayerID, InZoomFactor, InClippingRect, InDrawElements, InGraphObj);
}
void FControlRigEditorModule::GetContextMenuActions(const UControlRigGraphNode* Node, const FGraphNodeContextMenuBuilder& Context )
void FControlRigEditorModule::GetNodeContextMenuActions(const UControlRigGraphNode* Node, UToolMenu* Menu, UGraphNodeContextMenuContext* Context) const
{
if(Context.MenuBuilder != nullptr)
{
if(Context.Pin != nullptr)
if (Context->Pin != nullptr)
{
// Add array operations for array pins
if(Context.Pin->PinType.IsArray())
if (Context->Pin->PinType.IsArray())
{
// End the section as this function is called with a section 'open'
Context.MenuBuilder->EndSection();
Context.MenuBuilder->BeginSection(TEXT("ArrayOperations"), LOCTEXT("ArrayOperations", "Array Operations"));
FToolMenuSection& Section = Menu->AddSection(TEXT("ArrayOperations"), LOCTEXT("ArrayOperations", "Array Operations"));
// Array operations
Context.MenuBuilder->AddMenuEntry(
Section.AddMenuEntry(
"ClearArray",
LOCTEXT("ClearArray", "Clear"),
LOCTEXT("ClearArray_Tooltip", "Clear this array of all of its entries"),
FSlateIcon(),
FUIAction(FExecuteAction::CreateUObject(const_cast<UControlRigGraphNode*>(Node), &UControlRigGraphNode::HandleClearArray, Context.Pin->PinName.ToString())));
Context.MenuBuilder->EndSection();
FUIAction(FExecuteAction::CreateUObject(const_cast<UControlRigGraphNode*>(Node), &UControlRigGraphNode::HandleClearArray, Context->Pin->PinName.ToString())));
}
else if(Context.Pin->ParentPin != nullptr && Context.Pin->ParentPin->PinType.IsArray())
else if (Context->Pin->ParentPin != nullptr && Context->Pin->ParentPin->PinType.IsArray())
{
// End the section as this function is called with a section 'open'
Context.MenuBuilder->EndSection();
Context.MenuBuilder->BeginSection(TEXT("ArrayElementOperations"), LOCTEXT("ArrayElementOperations", "Array Element Operations"));
FToolMenuSection& Section = Menu->AddSection(TEXT("ArrayElementOperations"), LOCTEXT("ArrayElementOperations", "Array Element Operations"));
// Array element operations
Context.MenuBuilder->AddMenuEntry(
Section.AddMenuEntry(
"RemoveArrayElement",
LOCTEXT("RemoveArrayElement", "Remove"),
LOCTEXT("RemoveArrayElement_Tooltip", "Remove this array element"),
FSlateIcon(),
FUIAction(FExecuteAction::CreateUObject(const_cast<UControlRigGraphNode*>(Node), &UControlRigGraphNode::HandleRemoveArrayElement, Context.Pin->PinName.ToString())));
FUIAction(FExecuteAction::CreateUObject(const_cast<UControlRigGraphNode*>(Node), &UControlRigGraphNode::HandleRemoveArrayElement, Context->Pin->PinName.ToString())));
Context.MenuBuilder->AddMenuEntry(
Section.AddMenuEntry(
"InsertArrayElement",
LOCTEXT("InsertArrayElement", "Insert"),
LOCTEXT("InsertArrayElement_Tooltip", "Insert an array element after this one"),
FSlateIcon(),
FUIAction(FExecuteAction::CreateUObject(const_cast<UControlRigGraphNode*>(Node), &UControlRigGraphNode::HandleInsertArrayElement, Context.Pin->PinName.ToString())));
Context.MenuBuilder->EndSection();
FUIAction(FExecuteAction::CreateUObject(const_cast<UControlRigGraphNode*>(Node), &UControlRigGraphNode::HandleInsertArrayElement, Context->Pin->PinName.ToString())));
}
}
}

View File

@@ -47,7 +47,7 @@ public:
virtual void GetTypeActions(const UControlRigBlueprint* CRB, FBlueprintActionDatabaseRegistrar& ActionRegistrar) override;
virtual void GetInstanceActions(const UControlRigBlueprint* CRB, FBlueprintActionDatabaseRegistrar& ActionRegistrar) override;
virtual FConnectionDrawingPolicy* CreateConnectionDrawingPolicy(int32 InBackLayerID, int32 InFrontLayerID, float InZoomFactor, const FSlateRect& InClippingRect, class FSlateWindowElementList& InDrawElements, class UEdGraph* InGraphObj) override;
virtual void GetContextMenuActions(const UControlRigGraphNode* Node, const FGraphNodeContextMenuBuilder& Context ) override;
virtual void GetNodeContextMenuActions(const UControlRigGraphNode* Node, class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
virtual void GetContextMenuActions(const UControlRigGraphSchema* Schema, class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
static TSubclassOf<URigUnitEditor_Base> GetEditorObjectByRigUnit(const FName& RigUnitClassName);

View File

@@ -46,6 +46,6 @@ public:
virtual void GetTypeActions(const UControlRigBlueprint* CRB, FBlueprintActionDatabaseRegistrar& ActionRegistrar) = 0;
virtual void GetInstanceActions(const UControlRigBlueprint* CRB, FBlueprintActionDatabaseRegistrar& ActionRegistrar) = 0;
virtual FConnectionDrawingPolicy* CreateConnectionDrawingPolicy(int32 InBackLayerID, int32 InFrontLayerID, float InZoomFactor, const FSlateRect& InClippingRect, class FSlateWindowElementList& InDrawElements, class UEdGraph* InGraphObj) = 0;
virtual void GetContextMenuActions(const UControlRigGraphNode* Node, const FGraphNodeContextMenuBuilder& Context ) = 0;
virtual void GetNodeContextMenuActions(const UControlRigGraphNode* Node, class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const = 0;
virtual void GetContextMenuActions(const UControlRigGraphSchema* Schema, class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const = 0;
};

View File

@@ -10,7 +10,7 @@
#include "NiagaraCustomVersion.h"
#include "ScopedTransaction.h"
#include "EdGraphSchema_Niagara.h"
#include "Framework/MultiBox/MultiBoxBuilder.h"
#include "ToolMenus.h"
#include "Widgets/Layout/SBox.h"
#include "Widgets/Input/SEditableTextBox.h"
#include "NiagaraEditorUtilities.h"
@@ -74,15 +74,16 @@ void UNiagaraNodeOutput::PinNameTextCommitted(const FText& Text, ETextCommit::Ty
}
}
void UNiagaraNodeOutput::GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const
void UNiagaraNodeOutput::GetNodeContextMenuActions(UToolMenu* Menu, UGraphNodeContextMenuContext* Context) const
{
Super::GetContextMenuActions(Context);
if (Context.Pin != nullptr)
Super::GetNodeContextMenuActions(Menu, Context);
if (Context->Pin != nullptr)
{
Context.MenuBuilder->BeginSection("EdGraphSchema_NiagaraPinActions", LOCTEXT("EditPinMenuHeader", "Edit Pin"));
FToolMenuSection& Section = Menu->AddSection("EdGraphSchema_NiagaraPinActions", LOCTEXT("EditPinMenuHeader", "Edit Pin"));
{
UEdGraphPin* Pin = const_cast<UEdGraphPin*>(Context.Pin);
UEdGraphPin* Pin = const_cast<UEdGraphPin*>(Context->Pin);
TSharedRef<SWidget> RenameWidget =
SNew(SBox)
.WidthOverride(100)
@@ -92,16 +93,16 @@ void UNiagaraNodeOutput::GetContextMenuActions(const FGraphNodeContextMenuBuilde
.Text_UObject(this, &UNiagaraNodeOutput::GetPinNameText, Pin)
.OnTextCommitted_UObject(const_cast<UNiagaraNodeOutput*>(this), &UNiagaraNodeOutput::PinNameTextCommitted, Pin)
];
Context.MenuBuilder->AddWidget(RenameWidget, LOCTEXT("NameMenuItem", "Name"));
Section.AddEntry(FToolMenuEntry::InitWidget("RenameWidget", RenameWidget, LOCTEXT("NameMenuItem", "Name")));
}
{
Context.MenuBuilder->AddMenuEntry(
Section.AddMenuEntry(
"RemoveDynamicPin",
LOCTEXT("RemoveDynamicPin", "Remove pin"),
LOCTEXT("RemoveDynamicPinToolTip", "Remove this pin and any connections."),
FSlateIcon(),
FUIAction(FExecuteAction::CreateUObject(const_cast<UNiagaraNodeOutput*>(this), &UNiagaraNodeOutput::RemoveOutputPin, const_cast<UEdGraphPin*>(Context.Pin))));
FUIAction(FExecuteAction::CreateUObject(const_cast<UNiagaraNodeOutput*>(this), &UNiagaraNodeOutput::RemoveOutputPin, const_cast<UEdGraphPin*>(Context->Pin))));
}
}
}

View File

@@ -34,6 +34,8 @@ public:
virtual void CollectAddPinActions(FGraphActionListBuilderBase& OutActions, bool& bOutCreateRemainingActions, UEdGraphPin* Pin) override;
virtual void GetPinHoverText(const UEdGraphPin& Pin, FString& HoverTextOut) const override;
virtual bool IncludeParentNodeContextMenu() const { return true; }
protected:
virtual void OnPinRenamed(UEdGraphPin* RenamedPin, const FString& OldName) override;

View File

@@ -13,7 +13,7 @@
#include "Modules/ModuleManager.h"
#include "Templates/SharedPointer.h"
#include "NiagaraConstants.h"
#include "Framework/MultiBox/MultiBoxBuilder.h"
#include "ToolMenus.h"
#include "Widgets/Layout/SBox.h"
#include "Widgets/Input/SEditableTextBox.h"
#include "EdGraph/EdGraphNode.h"
@@ -494,11 +494,11 @@ void UNiagaraNodeParameterMapGet::GetPinHoverText(const UEdGraphPin& Pin, FStrin
}
}
void UNiagaraNodeParameterMapGet::GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const
void UNiagaraNodeParameterMapGet::GetNodeContextMenuActions(UToolMenu* Menu, UGraphNodeContextMenuContext* Context) const
{
UNiagaraNodeParameterMapBase::GetContextMenuActions(Context);
Super::GetNodeContextMenuActions(Menu, Context);
UEdGraphPin* Pin = const_cast<UEdGraphPin*>(Context.Pin);
UEdGraphPin* Pin = const_cast<UEdGraphPin*>(Context->Pin);
if (Pin && Pin->Direction == EEdGraphPinDirection::EGPD_Output)
{
@@ -507,7 +507,7 @@ void UNiagaraNodeParameterMapGet::GetContextMenuActions(const FGraphNodeContextM
if (!FNiagaraConstants::IsNiagaraConstant(Var))
{
Context.MenuBuilder->BeginSection("EdGraphSchema_NiagaraMetaDataActions", LOCTEXT("EditPinMenuHeader", "Meta-Data"));
FToolMenuSection& Section = Menu->AddSection("EdGraphSchema_NiagaraMetaDataActions", LOCTEXT("EditPinMenuHeader", "Meta-Data"));
TSharedRef<SWidget> RenameWidget =
SNew(SBox)
.WidthOverride(100)
@@ -517,8 +517,7 @@ void UNiagaraNodeParameterMapGet::GetContextMenuActions(const FGraphNodeContextM
.Text_UObject(this, &UNiagaraNodeParameterMapBase::GetPinDescriptionText, Pin)
.OnTextCommitted_UObject(const_cast<UNiagaraNodeParameterMapGet*>(this), &UNiagaraNodeParameterMapBase::PinDescriptionTextCommitted, Pin)
];
Context.MenuBuilder->AddWidget(RenameWidget, LOCTEXT("DescMenuItem", "Description"));
Context.MenuBuilder->EndSection();
Section.AddEntry(FToolMenuEntry::InitWidget("RenameWidget", RenameWidget, LOCTEXT("DescMenuItem", "Description")));
}
}
}

View File

@@ -21,7 +21,8 @@ public:
virtual void AllocateDefaultPins() override;
virtual TSharedPtr<SGraphNode> CreateVisualWidget() override;
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
virtual bool IncludeParentNodeContextMenu() const { return true; }
virtual bool IsPinNameEditable(const UEdGraphPin* GraphPinObj) const override;
virtual bool IsPinNameEditableUponCreation(const UEdGraphPin* GraphPinObj) const override;
virtual bool VerifyEditablePinName(const FText& InName, FText& OutErrorMessage, const UEdGraphPin* InGraphPinObj) const override;

View File

@@ -8,7 +8,7 @@
#include "Templates/SharedPointer.h"
#include "NiagaraGraph.h"
#include "NiagaraConstants.h"
#include "Framework/MultiBox/MultiBoxBuilder.h"
#include "ToolMenus.h"
#include "Widgets/Layout/SBox.h"
#include "Widgets/Input/SEditableTextBox.h"
#include "EdGraph/EdGraphNode.h"
@@ -251,11 +251,11 @@ void UNiagaraNodeParameterMapSet::BuildParameterMapHistory(FNiagaraParameterMapH
OutHistory.RegisterParameterMapPin(ParamMapIdx, GetOutputPin(0));
}
void UNiagaraNodeParameterMapSet::GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const
void UNiagaraNodeParameterMapSet::GetNodeContextMenuActions(UToolMenu* Menu, UGraphNodeContextMenuContext* Context) const
{
UNiagaraNodeParameterMapBase::GetContextMenuActions(Context);
Super::GetNodeContextMenuActions(Menu, Context);
UEdGraphPin* Pin = const_cast<UEdGraphPin*>(Context.Pin);
UEdGraphPin* Pin = const_cast<UEdGraphPin*>(Context->Pin);
if (Pin && Pin->Direction == EEdGraphPinDirection::EGPD_Input)
{
FNiagaraVariable Var = CastChecked<UEdGraphSchema_Niagara>(GetSchema())->PinToNiagaraVariable(Pin);
@@ -263,7 +263,7 @@ void UNiagaraNodeParameterMapSet::GetContextMenuActions(const FGraphNodeContextM
if (!FNiagaraConstants::IsNiagaraConstant(Var))
{
Context.MenuBuilder->BeginSection("EdGraphSchema_NiagaraMetaDataActions", LOCTEXT("EditPinMenuHeader", "Meta-Data"));
FToolMenuSection& Section = Menu->AddSection("EdGraphSchema_NiagaraMetaDataActions", LOCTEXT("EditPinMenuHeader", "Meta-Data"));
TSharedRef<SWidget> RenameWidget =
SNew(SBox)
.WidthOverride(100)
@@ -273,9 +273,7 @@ void UNiagaraNodeParameterMapSet::GetContextMenuActions(const FGraphNodeContextM
.Text_UObject(this, &UNiagaraNodeParameterMapBase::GetPinDescriptionText, Pin)
.OnTextCommitted_UObject(const_cast<UNiagaraNodeParameterMapSet*>(this), &UNiagaraNodeParameterMapBase::PinDescriptionTextCommitted, Pin)
];
Context.MenuBuilder->AddWidget(RenameWidget, LOCTEXT("DescMenuItem", "Description"));
Context.MenuBuilder->EndSection();
Section.AddEntry(FToolMenuEntry::InitWidget("RenameWidget", RenameWidget, LOCTEXT("DescMenuItem", "Description")));
}
}
}

View File

@@ -32,7 +32,8 @@ public:
virtual FText GetNodeTitle(ENodeTitleType::Type TitleType) const;
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
virtual bool IncludeParentNodeContextMenu() const { return true; }
virtual void PostLoad() override;
void SetPinName(UEdGraphPin* InPin, const FName& InName);

View File

@@ -6,7 +6,7 @@
#include "NiagaraGraph.h"
#include "Framework/Commands/UIAction.h"
#include "ScopedTransaction.h"
#include "Framework/MultiBox/MultiBoxBuilder.h"
#include "ToolMenus.h"
#include "Widgets/Input/SEditableTextBox.h"
#include "Widgets/Layout/SBox.h"
#include "SNiagaraGraphPinAdd.h"
@@ -161,15 +161,15 @@ void UNiagaraNodeWithDynamicPins::MoveDynamicPin(UEdGraphPin* Pin, int32 Directi
}
}
void UNiagaraNodeWithDynamicPins::GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const
void UNiagaraNodeWithDynamicPins::GetNodeContextMenuActions(UToolMenu* Menu, UGraphNodeContextMenuContext* Context) const
{
Super::GetContextMenuActions(Context);
if (Context.Pin != nullptr)
Super::GetNodeContextMenuActions(Menu, Context);
if (Context->Pin != nullptr)
{
Context.MenuBuilder->BeginSection("EdGraphSchema_NiagaraPinActions", LOCTEXT("EditPinMenuHeader", "Edit Pin"));
if (CanRenamePin(Context.Pin))
FToolMenuSection& Section = Menu->AddSection("EdGraphSchema_NiagaraPinActions", LOCTEXT("EditPinMenuHeader", "Edit Pin"));
if (CanRenamePin(Context->Pin))
{
UEdGraphPin* Pin = const_cast<UEdGraphPin*>(Context.Pin);
UEdGraphPin* Pin = const_cast<UEdGraphPin*>(Context->Pin);
TSharedRef<SWidget> RenameWidget =
SNew(SBox)
.WidthOverride(100)
@@ -179,20 +179,21 @@ void UNiagaraNodeWithDynamicPins::GetContextMenuActions(const FGraphNodeContextM
.Text_UObject(this, &UNiagaraNodeWithDynamicPins::GetPinNameText, Pin)
.OnTextCommitted_UObject(const_cast<UNiagaraNodeWithDynamicPins*>(this), &UNiagaraNodeWithDynamicPins::PinNameTextCommitted, Pin)
];
Context.MenuBuilder->AddWidget(RenameWidget, LOCTEXT("NameMenuItem", "Name"));
Section.AddEntry(FToolMenuEntry::InitWidget("RenameWidget", RenameWidget, LOCTEXT("NameMenuItem", "Name")));
}
if (CanRemovePin(Context.Pin))
if (CanRemovePin(Context->Pin))
{
Context.MenuBuilder->AddMenuEntry(
Section.AddMenuEntry(
"RemoveDynamicPin",
LOCTEXT("RemoveDynamicPin", "Remove pin"),
LOCTEXT("RemoveDynamicPinToolTip", "Remove this pin and any connections."),
FSlateIcon(),
FUIAction(FExecuteAction::CreateUObject(const_cast<UNiagaraNodeWithDynamicPins*>(this), &UNiagaraNodeWithDynamicPins::RemoveDynamicPinFromMenu, const_cast<UEdGraphPin*>(Context.Pin))));
FUIAction(FExecuteAction::CreateUObject(const_cast<UNiagaraNodeWithDynamicPins*>(this), &UNiagaraNodeWithDynamicPins::RemoveDynamicPinFromMenu, const_cast<UEdGraphPin*>(Context->Pin))));
}
if (CanMovePin(Context.Pin))
if (CanMovePin(Context->Pin))
{
TArray<UEdGraphPin*> SameDirectionPins;
if (Context.Pin->Direction == EEdGraphPinDirection::EGPD_Input)
if (Context->Pin->Direction == EEdGraphPinDirection::EGPD_Input)
{
GetInputPins(SameDirectionPins);
}
@@ -201,26 +202,27 @@ void UNiagaraNodeWithDynamicPins::GetContextMenuActions(const FGraphNodeContextM
GetOutputPins(SameDirectionPins);
}
int32 PinIdx = INDEX_NONE;
SameDirectionPins.Find(const_cast<UEdGraphPin*>(Context.Pin), PinIdx);
SameDirectionPins.Find(const_cast<UEdGraphPin*>(Context->Pin), PinIdx);
if (PinIdx != 0)
{
Context.MenuBuilder->AddMenuEntry(
Section.AddMenuEntry(
"MoveDynamicPinUp",
LOCTEXT("MoveDynamicPinUp", "Move pin up"),
LOCTEXT("MoveDynamicPinToolTipUp", "Move this pin and any connections one slot up."),
FSlateIcon(),
FUIAction(FExecuteAction::CreateUObject(const_cast<UNiagaraNodeWithDynamicPins*>(this), &UNiagaraNodeWithDynamicPins::MoveDynamicPinFromMenu, const_cast<UEdGraphPin*>(Context.Pin), -1)));
FUIAction(FExecuteAction::CreateUObject(const_cast<UNiagaraNodeWithDynamicPins*>(this), &UNiagaraNodeWithDynamicPins::MoveDynamicPinFromMenu, const_cast<UEdGraphPin*>(Context->Pin), -1)));
}
if (PinIdx >= 0 && PinIdx < SameDirectionPins.Num() - 1)
{
Context.MenuBuilder->AddMenuEntry(
Section.AddMenuEntry(
"MoveDynamicPinDown",
LOCTEXT("MoveDynamicPinDown", "Move pin down"),
LOCTEXT("MoveDynamicPinToolTipDown", "Move this pin and any connections one slot down."),
FSlateIcon(),
FUIAction(FExecuteAction::CreateUObject(const_cast<UNiagaraNodeWithDynamicPins*>(this), &UNiagaraNodeWithDynamicPins::MoveDynamicPin, const_cast<UEdGraphPin*>(Context.Pin), 1)));
FUIAction(FExecuteAction::CreateUObject(const_cast<UNiagaraNodeWithDynamicPins*>(this), &UNiagaraNodeWithDynamicPins::MoveDynamicPin, const_cast<UEdGraphPin*>(Context->Pin), 1)));
}
}
Context.MenuBuilder->EndSection();
}
}

View File

@@ -41,7 +41,8 @@ public:
virtual bool CanDuplicateNode() const override;
virtual FText GetNodeTitle(ENodeTitleType::Type TitleType) const override;
virtual FLinearColor GetNodeTitleColor() const override;
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
virtual bool IncludeParentNodeContextMenu() const { return true; }
//~ End EdGraphNode Interface
/** Notifies the node that it's output variables have been modified externally. */

View File

@@ -23,7 +23,8 @@ public:
//~ UEdGraphNode interface
virtual void PinConnectionListChanged(UEdGraphPin* Pin) override;
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
virtual bool IncludeParentNodeContextMenu() const { return true; }
/** Requests a new pin be added to the node with the specified direction, type, and name. */
UEdGraphPin* RequestNewTypedPin(EEdGraphPinDirection Direction, const FNiagaraTypeDefinition& Type, FName InName);

View File

@@ -108,6 +108,11 @@ FToolMenuEntry& FToolMenuSection::AddSubMenu(const FName InParentMenu, const FNa
return AddEntry(FToolMenuEntry::InitSubMenu(InParentMenu, InName, InLabel, InToolTip, InMakeMenu, bInOpenSubMenuOnClick, InIcon, bShouldCloseWindowAfterMenuSelection));
}
FToolMenuEntry& FToolMenuSection::AddSubMenu(const FName InName, const TAttribute<FText>& InLabel, const TAttribute<FText>& InToolTip, const FNewToolMenuChoice& InMakeMenu, bool bInOpenSubMenuOnClick, const TAttribute<FSlateIcon>& InIcon, const bool bShouldCloseWindowAfterMenuSelection)
{
return AddEntry(FToolMenuEntry::InitSubMenu(NAME_None, InName, InLabel, InToolTip, InMakeMenu, bInOpenSubMenuOnClick, InIcon, bShouldCloseWindowAfterMenuSelection));
}
int32 FToolMenuSection::IndexOfBlock(const FName InName) const
{
for (int32 i=0; i < Blocks.Num(); ++i)

View File

@@ -43,6 +43,7 @@ public:
FToolMenuEntry& AddMenuSeparator(const FName InName);
FToolMenuEntry& AddSubMenu(const FName InParentMenu, const FName InName, const TAttribute<FText>& InLabel, const TAttribute<FText>& InToolTip, const FNewToolMenuChoice& InMakeMenu, bool bInOpenSubMenuOnClick = false, const TAttribute<FSlateIcon>& InIcon = TAttribute<FSlateIcon>(), const bool bShouldCloseWindowAfterMenuSelection = true);
FToolMenuEntry& AddSubMenu(const FName InName, const TAttribute<FText>& InLabel, const TAttribute<FText>& InToolTip, const FNewToolMenuChoice& InMakeMenu, bool bInOpenSubMenuOnClick = false, const TAttribute<FSlateIcon>& InIcon = TAttribute<FSlateIcon>(), const bool bShouldCloseWindowAfterMenuSelection = true);
template <typename TContextType>
TContextType* FindContext() const

View File

@@ -36,7 +36,7 @@ class UAnimGraphNode_AimOffsetLookAt : public UAnimGraphNode_BlendSpaceBase
// End of UAnimGraphNode_Base interface
// UK2Node interface
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
virtual void GetMenuActions(FBlueprintActionDatabaseRegistrar& ActionRegistrar) const override;
virtual FBlueprintNodeSignature GetSignature() const override;
// End of UK2Node interface

View File

@@ -35,7 +35,7 @@ public:
// End of UEdGraphNode interface
// UK2Node interface
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
// End of UK2Node interface
// UAnimGraphNode_Base interface

View File

@@ -28,6 +28,6 @@ class UAnimGraphNode_BlendListByInt : public UAnimGraphNode_BlendListBase
// End of UEdGraphNode interface
// UK2Node interface
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
// End of UK2Node interface
};

View File

@@ -37,7 +37,7 @@ class UAnimGraphNode_BlendSpaceEvaluator : public UAnimGraphNode_BlendSpaceBase
// End of UAnimGraphNode_Base interface
// UK2Node interface
virtual void GetContextMenuActions(const FGraphNodeContextMenuBuilder& Context) const override;
virtual void GetNodeContextMenuActions(class UToolMenu* Menu, class UGraphNodeContextMenuContext* Context) const override;
// End of UK2Node interface
// UAnimGraphNode_AssetPlayerBase interface

Some files were not shown because too many files have changed in this diff Show More