Files
UnrealEngineUWP/Engine/Source/Editor/LevelEditor/Private/LevelEditorToolBar.h
brooke hubert 6b43ed1986 Add a drop down menu to the Content shortcut in the level editor, to which plugins can add additional shortcuts.
#Jira UE-101076
#rb chris.gagnon

[CL 14728018 by brooke hubert in ue5-main branch]
2020-11-11 19:29:13 -04:00

91 lines
2.7 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Widgets/SWidget.h"
#include "Framework/Commands/UICommandList.h"
#include "Editor/LevelEditor/Private/SLevelEditor.h"
class UToolMenu;
/**
* Unreal level editor main toolbar
*/
class FLevelEditorToolBar
{
public:
/**
* Static: Creates a widget for the main tool bar
*
* @return New widget
*/
static TSharedRef< SWidget > MakeLevelEditorToolBar( const TSharedRef<FUICommandList>& InCommandList, const TSharedRef<SLevelEditor> InLevelEditor );
static void RegisterLevelEditorToolBar( const TSharedRef<FUICommandList>& InCommandList, const TSharedRef<SLevelEditor> InLevelEditor );
protected:
/**
* Generates menu content for the build combo button drop down menu
*
* @return Menu content widget
*/
static TSharedRef< SWidget > GenerateBuildMenuContent(TSharedRef<FUICommandList> InCommandList, TWeakPtr<SLevelEditor> InLevelEditor);
/**
* Generates menu content for the quick settings combo button drop down menu
*
* @return Menu content widget
*/
static TSharedRef< SWidget > GenerateQuickSettingsMenu(TSharedRef<FUICommandList> InCommandList, TWeakPtr<SLevelEditor> InLevelEditor);
/**
* Generates menu content for the source control combo button drop down menu
*
* @return Menu content widget
*/
static TSharedRef< SWidget > GenerateSourceControlMenu(TSharedRef<FUICommandList> InCommandList, TWeakPtr<SLevelEditor> InLevelEditor);
/**
* Generates menu content for the compile combo button drop down menu
*
* @return Menu content widget
*/
static TSharedRef< SWidget > GenerateOpenBlueprintMenuContent(TSharedRef<FUICommandList> InCommandList, TWeakPtr<SLevelEditor> InLevelEditor);
/**
* Generates menu content for the Cinematics combo button drop down menu
*
* @return Menu content widget
*/
static TSharedRef< SWidget > GenerateCinematicsMenuContent(TSharedRef<FUICommandList> InCommandList, TWeakPtr<SLevelEditor> InLevelEditor);
static TSharedRef< SWidget > GenerateContentMenuWidget(TSharedRef<FUICommandList> InCommandList, TWeakPtr<SLevelEditor> InLevelEditor);
/**
* Delegate for actor selection within the Cinematics popup menu's SceneOutliner.
* Opens the editor for the selected actor and dismisses all popup menus.
*/
static void OnCinematicsActorPicked( AActor* Actor );
/**
* Callback to open a sub-level script Blueprint
*
* @param InLevel The level to open the Blueprint of (creates if needed)
*/
static void OnOpenSubLevelBlueprint( ULevel* InLevel );
private:
static void RegisterSourceControlMenu();
static void RegisterCinematicsMenu();
static void RegisterQuickSettingsMenu();
static void RegisterOpenBlueprintMenu();
static void RegisterContentMenu();
};