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