2014-12-07 19:09:38 -05:00
|
|
|
// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef __SGraphEditorActionMenu_h__
|
|
|
|
|
#define __SGraphEditorActionMenu_h__
|
|
|
|
|
|
|
|
|
|
#include "GraphEditorCommon.h"
|
|
|
|
|
#include "SGraphActionMenu.h"
|
|
|
|
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
class SGraphEditorActionMenu : public SBorder
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
SLATE_BEGIN_ARGS( SGraphEditorActionMenu )
|
|
|
|
|
: _GraphObj( static_cast<UEdGraph*>(NULL) )
|
|
|
|
|
, _NewNodePosition( FVector2D::ZeroVector )
|
|
|
|
|
, _AutoExpandActionMenu( false )
|
|
|
|
|
{}
|
|
|
|
|
|
|
|
|
|
SLATE_ARGUMENT( UEdGraph*, GraphObj )
|
|
|
|
|
SLATE_ARGUMENT( FVector2D, NewNodePosition )
|
|
|
|
|
SLATE_ARGUMENT( TArray<UEdGraphPin*>, DraggedFromPins )
|
|
|
|
|
SLATE_ARGUMENT( SGraphEditor::FActionMenuClosed, OnClosedCallback )
|
|
|
|
|
SLATE_ARGUMENT( bool, AutoExpandActionMenu )
|
|
|
|
|
SLATE_END_ARGS()
|
|
|
|
|
|
|
|
|
|
void Construct( const FArguments& InArgs );
|
|
|
|
|
|
|
|
|
|
~SGraphEditorActionMenu();
|
|
|
|
|
|
|
|
|
|
TSharedRef<SEditableTextBox> GetFilterTextBox();
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
UEdGraph* GraphObj;
|
|
|
|
|
TArray<UEdGraphPin*> DraggedFromPins;
|
|
|
|
|
FVector2D NewNodePosition;
|
|
|
|
|
bool AutoExpandActionMenu;
|
|
|
|
|
|
|
|
|
|
SGraphEditor::FActionMenuClosed OnClosedCallback;
|
|
|
|
|
|
|
|
|
|
TSharedPtr<SGraphActionMenu> GraphActionMenu;
|
|
|
|
|
|
2015-03-27 11:43:37 -04:00
|
|
|
void OnActionSelected( const TArray< TSharedPtr<FEdGraphSchemaAction> >& SelectedAction, ESelectInfo::Type InSelectionType );
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
/** Callback used to populate all actions list in SGraphActionMenu */
|
|
|
|
|
void CollectAllActions(FGraphActionListBuilderBase& OutAllActions);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // __SGraphEditorActionMenu_h__
|