void UK2Node_FunctionEntry::AllocateDefaultPins() { const UEdGraphSchema_K2* K2Schema = GetDefault<UEdGraphSchema_K2>(); CreatePin(EGPD_Output, K2Schema->PC_Exec, TEXT(""), NULL, false, false, K2Schema->PN_Then); UFunction* Function = FindField<UFunction>(SignatureClass, SignatureName); if (Function == nullptr) { Function = FindDelegateSignature(SignatureName); } if (Function != NULL) { CreatePinsForFunctionEntryExit(Function, /*bIsFunctionEntry=*/ true); } Super::AllocateDefaultPins(); if (FFunctionEntryHelper::RequireWorldContextParameter(this) && ensure(!FindPin(FFunctionEntryHelper::GetWorldContextPinName()))) { UEdGraphPin* WorldContextPin = CreatePin( EGPD_Output, K2Schema->PC_Object, FString(), UObject::StaticClass(), false, false, FFunctionEntryHelper::GetWorldContextPinName()); WorldContextPin->bHidden = true; } }
void UK2Node_FunctionResult::AllocateDefaultPins() { const UEdGraphSchema_K2* K2Schema = GetDefault<UEdGraphSchema_K2>(); CreatePin(EGPD_Input, K2Schema->PC_Exec, TEXT(""), NULL, false, false, K2Schema->PN_Execute); UFunction* Function = FindField<UFunction>(SignatureClass, SignatureName); if (Function != NULL) { CreatePinsForFunctionEntryExit(Function, /*bIsFunctionEntry=*/ false); } Super::AllocateDefaultPins(); FFillDefaultPinValueHelper::FillAll(this); }
void UK2Node_Event::AllocateDefaultPins() { const UEdGraphSchema_K2* K2Schema = GetDefault<UEdGraphSchema_K2>(); CreatePin(EGPD_Output, K2Schema->PC_Delegate, TEXT(""), NULL, false, false, DelegateOutputName); CreatePin(EGPD_Output, K2Schema->PC_Exec, TEXT(""), NULL, false, false, K2Schema->PN_Then); const UFunction* Function = FindEventSignatureFunction(); if (Function != NULL) { CreatePinsForFunctionEntryExit(Function, /*bIsFunctionEntry=*/ true); } Super::AllocateDefaultPins(); }
void UK2Node_DelegateSet::AllocateDefaultPins() { const UEdGraphSchema_K2* K2Schema = GetDefault<UEdGraphSchema_K2>(); // Cache off the delegate signature, which will update the DelegatePropertyName as well, if it's been redirected UFunction* DelegateSignature = GetDelegateSignature(); CreatePin(EGPD_Input, K2Schema->PC_Exec, TEXT(""), NULL, false, false, K2Schema->PN_Execute); CreatePin(EGPD_Input, K2Schema->PC_Object, TEXT(""), DelegatePropertyClass, false, false, DelegatePropertyName.ToString()); CreatePin(EGPD_Output, K2Schema->PC_Exec, TEXT(""), NULL, false, false, K2Schema->PN_Then); CreatePin(EGPD_Output, K2Schema->PC_Exec, TEXT(""), NULL, false, false, K2Schema->PN_DelegateEntry); CreatePinsForFunctionEntryExit(DelegateSignature, true); Super::AllocateDefaultPins(); }