Files
UnrealEngineUWP/Engine/Source/Editor/MainFrame/Private/Menus/MainMenu.cpp

525 lines
19 KiB
C++
Raw Normal View History

// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "Menus/MainMenu.h"
#include "Framework/Commands/UIAction.h"
#include "Framework/MultiBox/MultiBoxDefs.h"
#include "Framework/MultiBox/MultiBoxBuilder.h"
#include "Interfaces/IMainFrameModule.h"
#include "DesktopPlatformModule.h"
#include "ISourceControlModule.h"
#include "Toolkits/AssetEditorToolkit.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "Toolkits/GlobalEditorCommonCommands.h"
#include "SourceCodeNavigation.h"
#include "Interfaces/ITargetPlatform.h"
#include "Interfaces/ITargetPlatformManagerModule.h"
#include "EditorStyleSet.h"
#include "EditorStyleSettings.h"
#include "Editor/UnrealEdEngine.h"
#include "Settings/EditorExperimentalSettings.h"
#include "UnrealEdGlobals.h"
#include "Frame/MainFrameActions.h"
#include "Menus/PackageProjectMenu.h"
#include "Menus/RecentProjectsMenu.h"
#include "Menus/SettingsMenu.h"
#include "Menus/MainFrameTranslationEditorMenu.h"
#include "WorkspaceMenuStructure.h"
#include "WorkspaceMenuStructureModule.h"
#include "Features/EditorFeatures.h"
#include "Features/IModularFeatures.h"
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
#include "UndoHistoryModule.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "Framework/Commands/GenericCommands.h"
#include "ToolboxModule.h"
#define LOCTEXT_NAMESPACE "MainFileMenu"
void FMainMenu::FillFileMenu( FMenuBuilder& MenuBuilder, const TSharedRef<FExtender> Extender )
{
MenuBuilder.BeginSection("FileLoadAndSave", LOCTEXT("LoadSandSaveHeading", "Load and Save"));
{
// Open Asset...
MenuBuilder.AddMenuEntry( FGlobalEditorCommonCommands::Get().SummonOpenAssetDialog );
// Save All
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().SaveAll, "SaveAll");
// Choose specific files to save
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().ChooseFilesToSave, "ChooseFilesToSave");
if (ISourceControlModule::Get().IsEnabled() && ISourceControlModule::Get().GetProvider().IsAvailable())
{
// Choose specific files to submit
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().ChooseFilesToCheckIn, "ChooseFilesToCheckIn");
}
else
{
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().ConnectToSourceControl, "ConnectToSourceControl");
}
}
MenuBuilder.EndSection();
}
#undef LOCTEXT_NAMESPACE
#define LOCTEXT_NAMESPACE "MainEditMenu"
void FMainMenu::FillEditMenu( FMenuBuilder& MenuBuilder, const TSharedRef< FExtender > Extender, const TSharedPtr<FTabManager> TabManager )
{
MenuBuilder.BeginSection("EditHistory", LOCTEXT("HistoryHeading", "History"));
{
struct Local
{
/** @return Returns a dynamic text string for Undo that contains the name of the action */
static FText GetUndoLabelText()
{
return FText::Format(LOCTEXT("DynamicUndoLabel", "Undo {0}"), GUnrealEd->Trans->GetUndoContext().Title);
}
/** @return Returns a dynamic text string for Redo that contains the name of the action */
static FText GetRedoLabelText()
{
return FText::Format(LOCTEXT("DynamicRedoLabel", "Redo {0}"), GUnrealEd->Trans->GetRedoContext().Title);
}
};
// Undo
TAttribute<FText> DynamicUndoLabel;
DynamicUndoLabel.BindStatic(&Local::GetUndoLabelText);
MenuBuilder.AddMenuEntry( FGenericCommands::Get().Undo, "Undo", DynamicUndoLabel); // TAttribute< FString >::Create( &Local::GetUndoLabelText ) );
// Redo
TAttribute< FText > DynamicRedoLabel;
DynamicRedoLabel.BindStatic( &Local::GetRedoLabelText );
MenuBuilder.AddMenuEntry(FGenericCommands::Get().Redo, "Redo", DynamicRedoLabel); // TAttribute< FString >::Create( &Local::GetRedoLabelText ) );
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
// Show undo history
MenuBuilder.AddMenuEntry(
LOCTEXT("UndoHistoryTabTitle", "Undo History"),
LOCTEXT("UndoHistoryTooltipText", "View the entire undo history."),
FSlateIcon(FEditorStyle::GetStyleSetName(), "UndoHistory.TabIcon"),
FUIAction(FExecuteAction::CreateStatic(&FUndoHistoryModule::ExecuteOpenUndoHistory))
);
}
MenuBuilder.EndSection();
MenuBuilder.BeginSection("EditLocalTabSpawners", LOCTEXT("ConfigurationHeading", "Configuration"));
{
if (GetDefault<UEditorExperimentalSettings>()->bToolbarCustomization)
{
FUIAction ToggleMultiBoxEditMode(
FExecuteAction::CreateStatic(&FMultiBoxSettings::ToggleToolbarEditing),
FCanExecuteAction(),
FIsActionChecked::CreateStatic(&FMultiBoxSettings::IsInToolbarEditMode)
);
MenuBuilder.AddMenuEntry(
LOCTEXT("EditToolbarsLabel", "Edit Toolbars"),
LOCTEXT("EditToolbarsToolTip", "Allows customization of each toolbar"),
FSlateIcon(),
ToggleMultiBoxEditMode,
NAME_None,
EUserInterfaceActionType::ToggleButton
);
// Automatically populate tab spawners from TabManager
if (TabManager.IsValid())
{
const IWorkspaceMenuStructure& MenuStructure = WorkspaceMenu::GetMenuStructure();
TabManager->PopulateTabSpawnerMenu(MenuBuilder, MenuStructure.GetEditOptions());
}
}
if (GetDefault<UEditorStyleSettings>()->bExpandConfigurationMenus)
{
MenuBuilder.AddSubMenu(
LOCTEXT("EditorPreferencesSubMenuLabel", "Editor Preferences"),
LOCTEXT("EditorPreferencesSubMenuToolTip", "Configure the behavior and features of this Editor"),
FNewMenuDelegate::CreateStatic(&FSettingsMenu::MakeMenu, FName("Editor")),
false,
FSlateIcon(FEditorStyle::GetStyleSetName(), "EditorPreferences.TabIcon")
);
MenuBuilder.AddSubMenu(
LOCTEXT("ProjectSettingsSubMenuLabel", "Project Settings"),
LOCTEXT("ProjectSettingsSubMenuToolTip", "Change the settings of the currently loaded project"),
FNewMenuDelegate::CreateStatic(&FSettingsMenu::MakeMenu, FName("Project")),
false,
FSlateIcon(FEditorStyle::GetStyleSetName(), "ProjectSettings.TabIcon")
);
}
else
{
#if !PLATFORM_MAC // Handled by app's menu in menu bar
MenuBuilder.AddMenuEntry(
LOCTEXT("EditorPreferencesMenuLabel", "Editor Preferences..."),
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
LOCTEXT("EditorPreferencesMenuToolTip", "Configure the behavior and features of the Unreal Editor."),
FSlateIcon(FEditorStyle::GetStyleSetName(), "EditorPreferences.TabIcon"),
FUIAction(FExecuteAction::CreateStatic(&FSettingsMenu::OpenSettings, FName("Editor"), FName("General"), FName("Appearance")))
);
#endif
MenuBuilder.AddMenuEntry(
LOCTEXT("ProjectSettingsMenuLabel", "Project Settings..."),
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
LOCTEXT("ProjectSettingsMenuToolTip", "Change the settings of the currently loaded project."),
FSlateIcon(FEditorStyle::GetStyleSetName(), "ProjectSettings.TabIcon"),
FUIAction(FExecuteAction::CreateStatic(&FSettingsMenu::OpenSettings, FName("Project"), FName("Project"), FName("General")))
);
Copying //UE4/Dev-Editor to //UE4/Main ========================== MAJOR FEATURES + CHANGES ========================== Change 2756103 on 2015/11/05 by Jamie.Dale Implemented UFont::GetResourceSize to work correctly with the Size Map tool Change 2756104 on 2015/11/05 by Jamie.Dale Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text. Change 2756105 on 2015/11/05 by Jamie.Dale Fixed a crash when using an empty FKey property with a Data Table FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows. I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values). #jira UE-22897 Change 2757015 on 2015/11/06 by Joe.Tidmarsh SSProgressBar marquee tint. Accounts for widget color and opacity. PR #1698 Change 2757156 on 2015/11/06 by Joe.Tidmarsh Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor. When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel. * Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet. #rb Ben.Cosh #jira UE-20170 Change 2757181 on 2015/11/06 by Jamie.Dale Cleaned up some duplication in UMG text widgets, and exposed the text shaping options The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this. The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers). This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does Change 2757734 on 2015/11/06 by David.Nikdel #UE4 #Editor - Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>. - This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found). #CodeReview: Matt.Kuhlenschmidt Change 2758786 on 2015/11/09 by Joe.Tidmarsh Border widget now correctly synchronizes padding property #jira UE-23070 Change 2758791 on 2015/11/09 by Joe.Tidmarsh Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138) #jira UE-21623 #1608 #rb Simon.Tovey, Bruce.Nesbit Change 2758813 on 2015/11/09 by Joe.Tidmarsh UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation. [UE-22921] [CrashReport] Parenting multiple actors under border crashes editor #jira UE-22921 Change 2759234 on 2015/11/09 by Nick.Darnell Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more. #codereview Matt.Kuhlenschmidt, Bob.Tellez Change 2760954 on 2015/11/10 by Nick.Darnell Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do. #jira UE-23118 Change 2761129 on 2015/11/10 by Nick.Darnell Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet. Change 2761391 on 2015/11/10 by Alexis.Matte jira UE-20281 and UE-22259 Fbx scene Re-import workflow - First draft of the reimport workflow using a reimport asset in the content browser #codereview nick.darnell Change 2762323 on 2015/11/11 by Alexis.Matte fix build compilation Change 2762407 on 2015/11/11 by Jamie.Dale UDataTable::SaveStructData now writes out dummy data when RowStruct is null This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again. This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting). #jira UE-22789 Change 2762508 on 2015/11/11 by Nick.Darnell UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers. Change 2763241 on 2015/11/11 by Nick.Darnell Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes. #jira UE-20336
2015-12-12 08:54:23 -05:00
}
Copying //UE4/Dev-Editor to //UE4/Main ========================== MAJOR FEATURES + CHANGES ========================== Change 2756103 on 2015/11/05 by Jamie.Dale Implemented UFont::GetResourceSize to work correctly with the Size Map tool Change 2756104 on 2015/11/05 by Jamie.Dale Changed the font used when a font is missing or invalid to be the last resort font, rather than the localized fallback font The localized fallback font could cause different results based on your culture, and the last resort font makes it clearer that something is set-up incorrectly as it just draws invalid glyph markers for all of the text. Change 2756105 on 2015/11/05 by Jamie.Dale Fixed a crash when using an empty FKey property with a Data Table FKeyStructCustomization was asserting because there were no objects being edited, due to a newly added Data Table containing zero rows. I've removed this assert, and also updated SKeySelector to no longer require a separate argument to say whether multiple keys with different values are selected (this is now calculated from the call to get the current key, which will return an empty TOptional for multiple values). #jira UE-22897 Change 2757015 on 2015/11/06 by Joe.Tidmarsh SSProgressBar marquee tint. Accounts for widget color and opacity. PR #1698 Change 2757156 on 2015/11/06 by Joe.Tidmarsh Implemented "Go to Variable" functionality for widgets in Widget Blueprint Editor. When we switch modes in UMG from Designer to Graph. We select the variable (In "My Blueprint"), if one exists, for the currently selected widget. Additionally we update the details panel. * Added SelectGraphActionItemByName to FBlueprintEditor. This selects an item in My Blueprint and also displays it in the details panel of graph mode. SMyBlueprint is not available to FWidgetBlueprintEditor in UMGEditor module as it's privately implemented within Kismet. #rb Ben.Cosh #jira UE-20170 Change 2757181 on 2015/11/06 by Jamie.Dale Cleaned up some duplication in UMG text widgets, and exposed the text shaping options The common properties used by all text widgets that are text layout based have been moved into a UTextLayoutWidget base class, and all text layout based widgets now derive from this. The options needed to control the text shaping method used by a text based widget have been exposed via the FShapedTextOptions struct. This contains a way to manage these optional (and advanced) overrides. You typically wouldn't change these from the default unless you knew exactly what you were doing (eg, you have a text block containing only numbers). This change also updates SRichTextBlock to work with an invalidation panel in the same way that STextBlock does Change 2757734 on 2015/11/06 by David.Nikdel #UE4 #Editor - Added support for meta=(TitleProperty="StructPropertyNameHere") on properties of type TArray<FSomeStruct>. - This changes the editor rolled-up display of these values from "{0} members" to a stringified version of the specified property (if found). #CodeReview: Matt.Kuhlenschmidt Change 2758786 on 2015/11/09 by Joe.Tidmarsh Border widget now correctly synchronizes padding property #jira UE-23070 Change 2758791 on 2015/11/09 by Joe.Tidmarsh Shadow of FCanvasTextItem should be drawn before the outline color. Consulted with Bruce.N who believes this is not the intended behavior and was an oversight when refactoring FCanvas (CL 1695138) #jira UE-21623 #1608 #rb Simon.Tovey, Bruce.Nesbit Change 2758813 on 2015/11/09 by Joe.Tidmarsh UMG: Attempting to parent multiple widgets (in Hierarchy tree) to a widget that can't have multiple children will notify the user and ignore the operation. [UE-22921] [CrashReport] Parenting multiple actors under border crashes editor #jira UE-22921 Change 2759234 on 2015/11/09 by Nick.Darnell Slate - Improving the way we track references to materials in slate to better keep things alive until they're no longer needed for rendering. Additionally, making it so the we use the material and texture free list when possible when cleaning up things as to not allocate new memory if not required. Concidentually this can help with problems with corrupted memory on destruct as well, because it means the memory isn't really going to become garbage any more. #codereview Matt.Kuhlenschmidt, Bob.Tellez Change 2760954 on 2015/11/10 by Nick.Darnell Slate - A bug in the introduction of custom rendered elements accidentally broke filling out the texture coordinates for standard material usage. Materials should once again tile correctly just like images do. #jira UE-23118 Change 2761129 on 2015/11/10 by Nick.Darnell Slate - Removing the Pre-Multiply alpha path the way it was added, introducing it in a way that doesn't require changes inside the shader. Continuing to improve the SRetainerWidget to no longer have a frame delay between resizes and painting, also working on getting it handle clipping correctly but still not there yet. Change 2761391 on 2015/11/10 by Alexis.Matte jira UE-20281 and UE-22259 Fbx scene Re-import workflow - First draft of the reimport workflow using a reimport asset in the content browser #codereview nick.darnell Change 2762323 on 2015/11/11 by Alexis.Matte fix build compilation Change 2762407 on 2015/11/11 by Jamie.Dale UDataTable::SaveStructData now writes out dummy data when RowStruct is null This didn't used to happen, which would cause a miss-match between what UDataTable::LoadStructData was expecting, and would result in a Data Table that could never be loaded again. This change also improves the error message when editing a Data Table with a null row struct, and adds the editor-only RowStructName property to cache the name of the last used struct (for error reporting). #jira UE-22789 Change 2762508 on 2015/11/11 by Nick.Darnell UMG - Making it more obvious what keys do special stuff with anchors in UMG. Fixing the way snapping to anchors works with Control, it now only zeros out the side you're dragging instead of the entire widget, which was silly. Enhancing the designer message system to no longer be based on an enum and instead let arbitrary systems push and pop FText messages. Fixing animations in the anchor drop down to properly animate, broke when we introduced active timers. Change 2763241 on 2015/11/11 by Nick.Darnell Slate - We no longer allow popup windows to be larger than the primary display window for windows where max width/height is unspecified. This is to prevent accidential creation of tooltip windows that are larger than the driver allows causing crashes. #jira UE-20336
2015-12-12 08:54:23 -05:00
//@todo The tab system needs to be able to be extendable by plugins [9/3/2013 Justin.Sargent]
if (IModularFeatures::Get().IsModularFeatureAvailable(EditorFeatures::PluginsEditor))
{
FGlobalTabmanager::Get()->PopulateTabSpawnerMenu(MenuBuilder, "PluginsEditor");
}
}
MenuBuilder.EndSection();
}
#undef LOCTEXT_NAMESPACE
#define LOCTEXT_NAMESPACE "MainWindowMenu"
void FMainMenu::FillWindowMenu( FMenuBuilder& MenuBuilder, const TSharedRef< FExtender > Extender, const TSharedPtr<FTabManager> TabManager )
{
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
// Automatically populate tab spawners from TabManager
if (TabManager.IsValid())
{
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
// Local editor tabs
TabManager->PopulateLocalTabSpawnerMenu(MenuBuilder);
// General tabs
const IWorkspaceMenuStructure& MenuStructure = WorkspaceMenu::GetMenuStructure();
TabManager->PopulateTabSpawnerMenu(MenuBuilder, MenuStructure.GetStructureRoot());
}
MenuBuilder.BeginSection("WindowGlobalTabSpawners");
{
MenuBuilder.AddMenuEntry(
LOCTEXT("ProjectLauncherLabel", "Project Launcher"),
LOCTEXT("ProjectLauncherToolTip", "The Project Launcher provides advanced workflows for packaging, deploying and launching your projects."),
FSlateIcon(FEditorStyle::GetStyleSetName(), "Launcher.TabIcon"),
FUIAction(FExecuteAction::CreateStatic(&FMainMenu::OpenProjectLauncher))
);
}
MenuBuilder.EndSection();
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
{
// This is a temporary home for the spawners of experimental features that must be explicitly enabled.
// When the feature becomes permanent and need not check a flag, register a nomad spawner for it in the proper WorkspaceMenu category
bool bBlutility = GetDefault<UEditorExperimentalSettings>()->bEnableEditorUtilityBlueprints;
bool bLocalizationDashboard = GetDefault<UEditorExperimentalSettings>()->bEnableLocalizationDashboard;
bool bTranslationPicker = GetDefault<UEditorExperimentalSettings>()->bEnableTranslationPicker;
bool bDeviceOutputLog = GetDefault<UEditorExperimentalSettings>()->bDeviceOutputLog;
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
// Make sure at least one is enabled before creating the section
Copying //UE4/Release-Staging-4.12 to //UE4/Dev-Main (Source: //UE4/Release-4.12 @ 2962397) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2962397 on 2016/05/02 by Dmitriy.Dyomin Fixed: Crash generating LOD for a Landscape #jira UE-30144 Change 2962367 on 2016/05/01 by Zachary.Wilson Building lighting on QA-Effects #jira UE-29618 Change 2962363 on 2016/05/01 by Zachary.Wilson Updating Reflection Capture Test Content #jira UE-29618 Change 2962362 on 2016/05/01 by Benjamin.Hyder Built Lighting in QA-PostProcessing level #jira UE-29618 Change 2962361 on 2016/05/01 by Zachary.Wilson Adding testing content for Custom Resolutions and Cubemaps for Sky Cubemaps and Reflection Probes. #jira UE-29618 Change 2962357 on 2016/05/01 by Benjamin.Hyder Built Lighting for Tm_SceneTexture #jira UE-29618 Change 2962356 on 2016/05/01 by Benjamin.Hyder Adding PlayerStart to TM-TranslucencyLghtingMode map #jira UE-29618 Change 2962351 on 2016/05/01 by Benjamin.Hyder Adding high Precision GBuffer Normal Encoding example to TM-Shadermodels #jira UE-29618 Change 2962349 on 2016/05/01 by Benjamin.Hyder Correcting Planar Reflection in TM-Shadermodels #Jira UE-29618 Change 2962348 on 2016/05/01 by Benjamin.Hyder Adding Planar Reflection Test Case content to TM-Shadermodels #jira UE-29618 Change 2962347 on 2016/05/01 by Zachary.Wilson Adding testing content for Dual Normal Clfar Coat Material Expression #jira UE-29618 Change 2962340 on 2016/05/01 by Zachary.Wilson Adding testing content for engine scalability (WIP) #jira UE-29618 Change 2962173 on 2016/04/30 by Ben.Marsh Fix typo. Change 2962172 on 2016/04/30 by Ben.Marsh Disable Vulkan in installed UE4 buids. Build machines don't have the Vulkan SDK installed so they can't generate static libraries for VulkanRHI, so if we try to link against it on user's machines they'll fail due to the missing LIB. #jira UE-30156 Change 2961782 on 2016/04/29 by Mike.Beach Guarding against an invalid (null) target for the Blueprint debugger (watch viewer) panel. #jira UE-30110 Change 2961780 on 2016/04/29 by Mike.Beach Guarding against interface arrays with null entries (null checking in property editor processing code). #jira UE-30015 Change 2961580 on 2016/04/29 by Owen.Stupka #jira UE-29796 Rollback //UE4/Release-4.12/Samples/NotForLicensees/ProtoStar/Content/Blueprints/NickD/StarCoreSliceNick.uasset to revision 2 Change 2961531 on 2016/04/29 by Ryan.Gerleve Fix for an assert that could occur in monolithic builds when seamless traveling while recording a replay. #jira UE-22047 Change 2961499 on 2016/04/29 by Marc.Audy Use accessor instead of variable directly. #jira UE-00000 Change 2961492 on 2016/04/29 by Chris.Babcock Android Vulkan dynamic loader with fallback to ES2 - works with either NDK r11c+ or VulkanSDK (does not require .so) #jira UEPLAT-1249 #jira UEMOB-103 #ue4 #android Change 2961462 on 2016/04/29 by Chris.Babcock Fix issue with stripping symbols for non-armv7 architectures #jira UE-30138 #android #ue4 Change 2961442 on 2016/04/29 by Marc.Audy Fix undo/redo of attachment between an IWCE and blueprint constructed component not working #jira UE-28948 Change 2961400 on 2016/04/29 by Samuel.Proctor Test assets for FiB test cases. #jira UE-29618 Change 2961382 on 2016/04/29 by Daniel.Lamb Fix for shadowed variables. #jira UE-29470 Change 2961319 on 2016/04/29 by mitchell.wilson #jira UE-29618 - Adding TM-LandscapeFoliage map Change 2961278 on 2016/04/29 by Chris.Babcock Fix 64-bit cast #jira UE-30132 #ue4 #android Change 2961263 on 2016/04/29 by Daniel.Lamb Fixed issue with iterative cooking missing dependent sublevels when checking for dependent timestamps. #jira UE-29470 Change 2961227 on 2016/04/29 by Taizyd.Korambayil #jira UE-30068 Resaved Some assets and Updated TexturePool in DefaultEninge.ini Change 2961208 on 2016/04/29 by Nick.Darnell UMG - Unable to reproduce the issue of the designer crashing because it popping more messages than it has, but adding a check to make sure the array isn't already empty before popping. #jira UE-29919 Change 2961190 on 2016/04/29 by Nick.Darnell UMG - Unable to reproduce the issue of the designer crashing because it popping more messages than it has, but adding a check to make sure the array isn't already empty before popping. #jira UE-29919 Change 2961161 on 2016/04/29 by Gareth.Martin Added warnings when trying to use the Landscape Visibility Tool without the landscape material having a "Landscape Visibility Mask" node. #jira UE-30032 Change 2961109 on 2016/04/29 by Keith.Judge Xbox One - Enable USE_NEW_LOCK_FREE_LISTS, and refactor code to allow VS2015 to compile it (was using a non-standard GCC/Clang behaviour). Lots of duplicated code, but there already was... #jira UEPLAT-1288 Change 2961055 on 2016/04/29 by Mike.Beach Mirroring CL 2961019: Temporarily disabling InitProperties() spawning optimization, as it was causing GC issues. #jira UE-29940 Change 2961018 on 2016/04/29 by Rolando.Caloca UE4.12 - Compile fix for shipping #jira UE-30096 Change 2960921 on 2016/04/29 by Matthew.Griffin Updated AutoSDK used by Android so that arm64 will build Change 2960920 on 2016/04/29 by Martin.Wilson Missing files from 2960847 #jira ue-25715 Change 2960906 on 2016/04/29 by Peter.Sauerbrei added more explicit message when the deployment fails due to device not on provision #jira UE-19875 Change 2960869 on 2016/04/29 by Chris.Bunner Allow custom material nodes to be used with tessellation outputs. #jira UE-29586 Change 2960847 on 2016/04/29 by Martin.Wilson Fix setting incorrect animation assets on anim player nodes. #jira ue-25715 Change 2960842 on 2016/04/29 by Keith.Judge Xbox One - Remove SetGpuMemoryPriority() call as it turns out most actual game titles are CPU bound, and this is just hurting them. #jira UEPLAT-1288 Change 2960841 on 2016/04/29 by Keith.Judge Xbox One - Make temporary buffers last for three frames. #jira UEPLAT-1288 Change 2960838 on 2016/04/29 by Keith.Judge Xbox One - Change the MemoryBarrier function to be FORCENOINLINE so that the compiler doesn't reorder writes around it. #jira UEPLAT-1288 Change 2960834 on 2016/04/29 by Keith.Judge Xbox One - Change GPUMalloc memory type to write combined, as cached non-coherent caused major UMG flickering issues, and would appear to be unsafe, according to the latest XDK docs. #jira UEPLAT-1288 Change 2960829 on 2016/04/29 by Keith.Judge Xbox One - Fix RHIUpdateTexture2D not actually updating the texture. It was silently failing because the GPU_READONLY flag was set on the memory. Grrrrrr! #jira UEPLAT-1288 Change 2960826 on 2016/04/29 by Keith.Judge Xbox One - Turn on GSupportsEfficientAsyncCompute and GSupportsParallelOcclusionQueries. Duplcated from Dev-Platform. #jira UEPLAT-1288 Change 2960820 on 2016/04/29 by Keith.Judge Xbox One - Replicate Windows critical section changes. Duplicated from Dev-Platform. #jira UEPLAT-1288 Change 2960819 on 2016/04/29 by Marc.Audy Owned components are once again referenced by their Owning actor for GC purposes #jira UE-29131 Change 2960817 on 2016/04/29 by Keith.Judge Xbox One - Further fix for flickering HUD. Also seems to fix weird bloom when Fast Semantics are enabled. Duplicated from Dev-Platform. #jira UEPLAT-1288 Change 2960814 on 2016/04/29 by Keith.Judge Xbox One - Fix crash when creating odd sized textures with initial data. Duplicated from Dev-Platform. #jira UEPLAT-1288 Change 2960805 on 2016/04/29 by Keith.Judge Fix .ini.ini filename issue (duplicated fix from Dev-Platform). #jira UES-2270 Change 2960797 on 2016/04/29 by Mason.Seay Deleting asset associated with crashing map, just to be safe (neither are needed anymore) #jira UE-25215 Change 2960793 on 2016/04/29 by Mason.Seay Deleting map that's causing a crash #jira UE-25215 Change 2960774 on 2016/04/29 by Robert.Manuszewski (temp) Fix for missing packages after cooking. #jira UE-29876 Change 2960747 on 2016/04/29 by Jurre.deBaare Mac build fixes #jira abc-123 Change 2960739 on 2016/04/29 by Benn.Gallagher Use mesh update mode to update cloth rather than whether or not it was rendered. #jira UE-25934 Change 2960707 on 2016/04/29 by Jurre.deBaare HLOD cluster dirtying from changes in static mesh component and spline mesh component, required making the HierarchicalLODUtilities Module to have an abstract interface (for dynamic loading in the Engine module) #jira UE-24378 Change 2960704 on 2016/04/29 by Matthew.Griffin Added Architectures and GPUArchitectures to UEBuildConfiguration that can be passed through on the UBT command line Changed Android Tool Chain so that it checks the command line architectures as an additional way to setup which ones to build Added option to pass architectures on command line when precompiling monolithic targets via UAT (with armv7, arm64 & es2 set for Android for now) Added code to read precompiled architectures in Rocket build and write out additional Installed Platform Info entries for each one #jira UEB-560 Change 2960694 on 2016/04/29 by Robert.Manuszewski Log free disk space when DirectoryWatcher's File Cache fails to move a file. #jira UE-24660 Change 2960687 on 2016/04/29 by Benn.Gallagher Demoted eINTERNAL_ERROR (PhysX error code) to warning as we were flagging things too zealously (degenerate poly failing a cook) #jira UE-30053 Change 2960381 on 2016/04/28 by Chris.Babcock Handle movie playback not covering full surface #jira UE-28705 #ue4 #android Change 2960162 on 2016/04/28 by Ryan.Vance #jira UE-30099 Re-enabling the occlusion area mask for the Rift. Any Rift HMD's newer than the CB prototype will use the CV1 masks. We'll need to revist this in the future. We need to ensure we always set the InstancedEyeIndex uniform if it's bound. Otherwise passes that aren't using instanced stereo will resolve their views using an uninitialized variable (translucency). Change 2960100 on 2016/04/28 by Andrew.Porter Removing old sub sequences. #jira UE-29618 Change 2959962 on 2016/04/28 by Peter.Sauerbrei fix for enabling InApp purchasing not enabling Online Subsystem IOS #jira UE-25512 Change 2959937 on 2016/04/28 by Patrick.Donovan Screen aligned UVs test material for QAGame for testing if they work in VR. #jira UE-29618 Change 2959914 on 2016/04/28 by Dan.Oconnor Fix for copy paste error, likely of no consequence because nothing calls IsExporting(), found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959859 on 2016/04/28 by Ryan.Gerleve Fix for fatal error crash when loading the default map fails. Now we load a dummy world and request graceful exit in standalone, or shutdown the current play session in PIE. #jira UE-26634 Change 2959856 on 2016/04/28 by Chris.Babcock Fix scaling on low-resolution devices in Match3 #jira UE-28706 #ue4 #match3 Change 2959839 on 2016/04/28 by Dan.Oconnor Fix IsControlCharacter result for 'pop directional isolate' character (u2069), found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959836 on 2016/04/28 by Dan.Oconnor Remove unused local variable, found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959829 on 2016/04/28 by Dan.Oconnor Using OverridePredrawBatchTime and OverridePredrawBatchTime correctly, found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959817 on 2016/04/28 by Peter.Sauerbrei fix for parsing the IOS Device ID addition of iPhone SE (courtesy davidrpozesky, PR2307) addition of iPadPro 9.7 #jira UE-21921 Change 2959808 on 2016/04/28 by Nick.Darnell UBT - Restoring GetModuleFilename to the RulesCompiler but only to deprecate it, and point users at the method they should now be using. #jira ue-none Change 2959805 on 2016/04/28 by Chad.Taylor Merging //UE4/Dev-VR/Engine/... to //UE4/Release-4.12/Engine/... #jira UEBP-188 Change 2959798 on 2016/04/28 by Dan.Oconnor Manually integrate 2947850, also found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959796 on 2016/04/28 by Aaron.McLeran Duplicating CL 2959785 from //UE4/Dev-Framework #jira UE-30083 Sound concatenator node doesn't progress if child nodes don't produce wave instances #tests created new sound cue with concat node with child nodes that don't play sound-instances, concat node continues playing Change 2959793 on 2016/04/28 by Dan.Oconnor Fixed setter that did nothing, found with PVS-Studio by Robert Troughton. This code will be removed soon. #jira UE-30058 Change 2959739 on 2016/04/28 by Ori.Cohen Remove box2d ensure as it's confusing for legit crashes since it shows up in the end of the log. #JIRA UE-29932 Change 2959709 on 2016/04/28 by Nick.Darnell Slate - Menu Stack no longer crashes when forcefully dismissing multiple menus in the stack at once. #jira UE-30087 Change 2959701 on 2016/04/28 by Nick.Darnell Slate - The MoviePlayer now has an OnPrepareLoadingScreen callback that modules can hook instead of relying on the PreLoadMap, which depending on when you hook it, you may be before or after the movie player. Therefore to aleviate that ordering problem - if the movie player goes to play a loading screen and one has not yet been configured this callback will be triggered so that hopefully one is supplied. #jira UE-30085 Change 2959691 on 2016/04/28 by Nick.Darnell UMG - Fixed Aspect ratios now correctly size the right side of the screen, allowing right anchored content to be fit properly inside the black frame borders. #jira UE-30084 Change 2959678 on 2016/04/28 by mason.seay Updated test sound cue asset, as it appeared to be partially filled out. Moved it out of developer folder. Also rebuilt lighting on associated test map. #jira UE-29618 Change 2959514 on 2016/04/28 by Aaron.McLeran Duplicating CL 2959506 from //UE4/Dev-Framework #jira UE-30000 PR #2330: Fix for ambient sounds not stopping when active and told to play again (Contributed by hgamiel) #tests Playing another looping sound on an audio component will stop the previous looping sound. Change 2959486 on 2016/04/28 by Bob.Tellez Duplicating CL#2948431 from //Orion/Dev-General CL#s 2919775 and 2942793 integrated to prevent annotation map performance problems on shutdown and asserts in PIE. #JIRA UE-29625 #tests Ran editor Change 2959414 on 2016/04/28 by Chad.Taylor IStereoLayers API and Oculus Rift implementation #jira UEBP-185 Change 2959395 on 2016/04/28 by Taizyd.Korambayil #jira UE-29710 Resaved Kite Demo Maps and Audio files to Fix Build Warnings Change 2959386 on 2016/04/28 by Richard.TalbotWatkin Replicated from CL 2959360 in //UE4/Dev-Editor/ Fixed potential crash when mesh painting actors whose geometry adapters are no longer registered. #jira UE-29615 - [CrashReport] UE4Editor_MeshPaint!FEdModeMeshPaint::DoPaint() [meshpaintedmode.cpp:1127] Change 2959377 on 2016/04/28 by Matthew.Griffin Added 2015 versions of OpenSSL dlls to list of RuntimeDependencies, so that they will be included in the binary build #jira UE-30024 Change 2959367 on 2016/04/28 by Alexis.Matte #jira OR-20622 make sure LOD import Materials get map with LOD 0 material index Change 2959302 on 2016/04/28 by Jamie.Dale Removed invalid assert #jira UE-30042 Change 2959263 on 2016/04/28 by Peter.Sauerbrei fix for virtual joysticks showing up on tvOS removed usage of ES2 define for tvOS #jira UE-26122 Change 2959235 on 2016/04/28 by Taizyd.Korambayil #jira UE-29744 Resaved Vehicle Game maps to Fix Build Warnings Change 2959177 on 2016/04/28 by Thomas.Sarkanen Fixed curve names getting incorrectly duplicated when DuplicateObject was called Fixes crash when trying to convert curves to metadata after newly importing a sequence. #jira UE-29988 - Crash when converting custom curve to metadata in persona Change 2959170 on 2016/04/28 by Taizyd.Korambayil #jira UE-29683 Resaved Maps to Fix Build Warnings #jira UE-29685 #jira UE-29679 #jira UE-29684 Change 2959154 on 2016/04/28 by Dan.Bullard Added Media Player assets and added example to TM-ShaderModels. #jira UE-29618 Change 2959112 on 2016/04/28 by Jamie.Dale Fixed a long time IME crash that could happen under certain circumtances #jira OPP-5607 Change 2959086 on 2016/04/28 by Jamie.Dale Refreshing the editable text layout now makes sure the layout is up-to-date This addresses some update issues when the widget is being ticked, but not running a layout pass. #jira UE-30054 Change 2958927 on 2016/04/28 by Phillip.Kavan [UE-30040] Fix broken editor UI display of values for int32 properties tagged as bitmask fields when the high bit is set. #jira UE-30040 Change 2958730 on 2016/04/28 by Phillip.Kavan [UE-23087] Don't apply near-zero delta values while drag-scaling inside the Blueprint editor's preview viewport. #jira UE-23087 Change 2958566 on 2016/04/27 by Marcus.Wassmer Fix material preview and PostProcessAmbient #jira UE-29994 Change 2958459 on 2016/04/27 by mason.seay Test assets for Sound Class Override #jira UE-29618 Change 2958399 on 2016/04/27 by Owen.Stupka #jira UE-29924 Back out CL 2958355, change was in wrong position. Change 2958395 on 2016/04/27 by Aaron.McLeran Duplicating CL#2950482 from //UE4/Dev-Framework #jira FORT-22973 SoundMix Fade Time not fading audio properly - Bug was due to bApplyToChildren case where the FSoundClassAdjuster wasn't getting the interpolated value before calling RecursiveApplyAdjuster in the case of non-overriden sound mixes. #tests Apply a sound mix using a child sound class with apply-to-children enabled. Sound mix properly interpolates. Change 2958387 on 2016/04/27 by Aaron.McLeran Duplicating CL#2954865 from //UE4/Dev-Framework #jira UE-29763 Use HMD audio device only in VR preview mode, not for other PIE session types. #tests run editor in PIE with HMD connected, audio only plays on PC, then run in VR-Preview with HMD connected, audio plays on HMD audio device Change 2958381 on 2016/04/27 by Josh.Adams - Fixed compile error in IOSDeviceHelperMac.cpp #lockdown nick.penwarden #jira UE-30037 Change 2958355 on 2016/04/27 by Owen.Stupka #jira UE-29924 Fix for UAT issues on Mac. Change 2958351 on 2016/04/27 by Aaron.McLeran Duplicating CL#2957953 from //UE4/Dev-Framework #jira UE-30018 Fixing up audio component ref-counting to prevent triggering notifications when an audio component is still active after a sound finishes playing. #tests run audio component with auto-activate, call play, setup notification callback in BP, note that only triggered once Change 2958344 on 2016/04/27 by Taizyd.Korambayil #jira UE-29720 Resaved Audio Files to fix NodeGUID Warnings Change 2958342 on 2016/04/27 by mitchell.wilson #jira UE-29618 updating shot_002 to fix an issue with snapping. Change 2958315 on 2016/04/27 by Marc.Audy No longer use component pooling, but instead spawn Actors for thumbnail display #jira UE-17453 Change 2958289 on 2016/04/27 by Marc.Audy Don't crash rerunning construction script on a child actor that belongs to a ownerless child actor component #jira UE-30033 Change 2958280 on 2016/04/27 by Taizyd.Korambayil #jira UE-29723 Resaved Maps and Audio Files Change 2958237 on 2016/04/27 by Taizyd.Korambayil #jira UE-29687 Resaved Some Assets to Fix Build Warnings Change 2958176 on 2016/04/27 by Taizyd.Korambayil #jira UE-29701 Resaved Some Assets to Fix Build Warnings Change 2958172 on 2016/04/27 by Ori.Cohen Back out changelist 2955134 #JIRA UE-30030 Change 2958121 on 2016/04/27 by Taizyd.Korambayil #jira UE-29706 Resaved Some Assets to Fix Build Warnings Change 2958070 on 2016/04/27 by Peter.Sauerbrei fix for launch on to tvOS from PC properly filter out tvOS devices when launching to IOS and vice versa #jira UE-29928 Change 2958029 on 2016/04/27 by Andrew.Rodham Fixed SMenuAnchor::bIsCollapsedByParent not being respected #jira UE-30016 Change 2957962 on 2016/04/27 by Alexis.Matte #jira UE-29984 Pixel inspector crash Fix the viewport id Change 2957908 on 2016/04/27 by Andrew.Rodham Sequencer: Fixed being unable to render out 4K image sequences using matinee or sequencer #jira UE-29171 Change 2957880 on 2016/04/27 by Peter.Sauerbrei fix for metal not being enabled in iOS 8 added some checks for bSupportsResourceOptions in Lock/Unlock #jira UE-29268 Change 2957860 on 2016/04/27 by Gareth.Martin Fixed landscape grass not updating when using a material instance as the landscape material and changing parameters #jira UE-29471 Change 2957833 on 2016/04/27 by Taizyd.Korambayil #jira UE-29707 Replaced Deprecated Nodes and Resaved Audio Files to Fix Build Warnings Change 2957805 on 2016/04/27 by Max.Chen Sequencer: Fix crash in UMG when a property changes and there's no movie scene. #jira UE-30008 Change 2957803 on 2016/04/27 by Taizyd.Korambayil #jira UE-29718 Resaved Audio Files and Maps to Fix NodeGuid Warnings Change 2957799 on 2016/04/27 by Max.Chen Sequencer: Fix visibility track name so that it says "Visibility" #jira UE-29996 Change 2957777 on 2016/04/27 by Allan.Bentham Workaround ES31 HQ DoF producing no effect with vulkan rhi. #jira UE-30006 Change 2957763 on 2016/04/27 by Taizyd.Korambayil #jira UE-29678 Resaved Maps to Fix Build Errors Change 2957740 on 2016/04/27 by Taizyd.Korambayil #jira UE-29628 Resaved Maps to fix Build Warnings Change 2957713 on 2016/04/27 by Taizyd.Korambayil #jira UE-29715 Resaved Maps to Fix Build Warnings Change 2957678 on 2016/04/27 by Taizyd.Korambayil #jira UE-29677 Fixed up AnimBP and resaved some assets to fix Build Warnings Change 2957627 on 2016/04/27 by Frank.Fella UMG - Sequencer - Fix material animation for materials on struct properties e.g. style materials, and fix the naming so that it's [Original Name]_Animated #Jira UE-29319 #Jira UE-29321 Change 2957625 on 2016/04/27 by Taizyd.Korambayil #jira UE-29689 Replaced deprecated Nodes and Resaved some assets to Fix Warnings Change 2957603 on 2016/04/27 by mitchell.wilson #jira UE-29618 updating Test-Animation for UMG test. Adding M_SequenceUMG material for UMG testing Change 2957577 on 2016/04/27 by Ben.Marsh EC: Increase the number of changes queried to display the EC dashboard. Some changes are getting filtered out. Change 2957569 on 2016/04/27 by Maciej.Mroz #jira UE-27735 Enumerators are not set correctly in packaged games if Nativize Blueprint Assets is set to true merged from Dev-Blueprints 2957564 Change 2957565 on 2016/04/27 by Taizyd.Korambayil #jira UE-29721 Resaved Some Content to Fix Empty Engine Version Error Change 2957558 on 2016/04/27 by Matthew.Griffin Updated Installed Engine Filters now that Linux has dropped the architecture from its .target files #jira UE-29899 Change 2957504 on 2016/04/27 by Marc.Audy Persist component instance data cache through blueprint construction that results in "disaster recovery mode" #jira UE-20385 Change 2957162 on 2016/04/26 by Dmitriy.Dyomin Fixed: Some Unicode letters are not properly displayed with FCanvasTextItem in Android device #jira UE-25861 Change 2957117 on 2016/04/26 by Dan.Oconnor PR #2289: Exposing "IsValidIndex" Array function to Blueprints (Contributed by eXifreXi) Modifications: typo fix in Array.h, made blueprint description consistent with native function, removed redundant nullptr check, added P_NATIVE timer macros, added custom thunk implementation for cpp backend #jira UE-29563 Change 2957057 on 2016/04/26 by Dan.Oconnor Tweak logic used to make variable nodes more accessible Motivation was PR#2202 by Lucyberad #jira UE-28802 Change 2956884 on 2016/04/26 by Jamie.Dale Removed an assert that can be triggered by certain IMEs #jira UE-19744 Change 2956876 on 2016/04/26 by Dan.Oconnor PR #2288: Adjustment of RInterpTo and RInterpTo_Constant descriptions to match function. (Contributed by CelPlays) #jira UE-29495 Change 2956860 on 2016/04/26 by Max.Preussner Sockets: Fixed incorrect socket timeout when value < 1 ms (UE-29973) #jira: UE-29973 Change 2956801 on 2016/04/26 by Rolando.Caloca UE4.12 - vk - Added r.Vulkan.SubmitOnCopyToResolve to help track down submit issues #jira UE-28140 Change 2956679 on 2016/04/26 by Andrew.Rodham Editor: Fixed not being able to switch between cinematic/default viewport types #jira UE-29942 Change 2956674 on 2016/04/26 by James.Fox Updated Blueprint Bitmask test asset to include Bitwise OR. #jira UE-29618 Change 2956573 on 2016/04/26 by Rolando.Caloca UE4.12 - vk - Added TRANSFER_BIT to swapchain images since it's required for clearing #jira UE-28140 Change 2956572 on 2016/04/26 by Rolando.Caloca UE4.12 - vk - Added alignment to buffer offsets depending on usage #jira UE-28140 Change 2956502 on 2016/04/26 by Peter.Sauerbrei fix for missing particles on iPhone 5 when compiling for size re-enable compile for size for Match 3 #jira UE-28721 Change 2956445 on 2016/04/26 by Taizyd.Korambayil #jira UE-29691 Resaved some Animation Assets to Fix Build Warnings Change 2956382 on 2016/04/26 by Taizyd.Korambayil #jira UE-29688 Resaved Maps in Infiltrator Demo t oFix Some Build Warnings Change 2956332 on 2016/04/26 by Patrick.Donovan Adding physics asset set up for Capsule shadows for easy testing of capsule shadows in VR and with instanced stereo enabled. #jira UE-29618 Change 2956301 on 2016/04/26 by Ben.Marsh Disable notification emails for warnings in Rocket sample builds. Change 2956264 on 2016/04/26 by Peter.Sauerbrei fix for binary release generation of bp-only project files for IOS on Mac #jira UE-29934 Change 2956247 on 2016/04/26 by Jurre.deBaare Fix for Mac compile #jira UE-123ABC Change 2956192 on 2016/04/26 by Jurre.deBaare - Changed signatures for merging static mesh (LOD index now incorporated in merge data structure) - Proxy mesh and Mesh merging now just merges one specific LOD index per input mesh (instead of looping over all LOD levels) - Moved SourceStaticMesh and addex ExportLODIndex to FMeshMergeData structure - LightMap Index for merged static meshes is now set correctly - Added enum to MaterialProxySettings for distinction between (non-)Simplygon uses of the struct - Move MergeActor tab spawner out of experimental (removed option from config) and moved into Developer Tools/Misc #jira UE-28319 Change 2956183 on 2016/04/26 by mitchell.wilson #jira UE-29618 Adding new sequence for assign actor testing. Updating sequencer levels for assign actor testing Change 2956152 on 2016/04/26 by Lina.Halper - removed invalid ensure because it doesn't check recursive, it does have different value with validation #jira : UE-29945 Change 2956034 on 2016/04/26 by Andrew.Rodham Sequencer: Skeletal animation tracks now evaluate the nearest section where no animation section is present - This is more consistent with how other tracks evaluate, and guarantees a deterministic animated state #jira UE-28073 Change 2956002 on 2016/04/26 by Taizyd.Korambayil #jira UE-29729 Resaved Blueprints to Fix Build Warnings Change 2955999 on 2016/04/26 by Max.Chen Sequencer: Refresh instances when done recording. This fixes a bug where spawned recorded actors aren't visible when done recording. #jira UE-29841 Change 2955983 on 2016/04/26 by Andrew.Rodham Removing Saved, Intermediate, and DerivedDataCache folders from SubwaySequencer sample project. #jira UE-29938 Change 2955979 on 2016/04/26 by Taizyd.Korambayil #jira UE-29728 Resaved Some assets to Fix Build Warnings Change 2955941 on 2016/04/26 by Taizyd.Korambayil #jira UE-29730 Resaved Maps to Fix Build Warnings Change 2955937 on 2016/04/26 by Andrew.Rodham Sequencer: When recording actors as spawnables, we no longer duplicate the object, rather create a new instance of the same class - This fixes issues caused by undersiable state being saved into the spawnable defaults Merged from //UE4/Dev-Sequencer/...@2952610 #jira UE-29774 Change 2955888 on 2016/04/26 by mitchell.wilson #jira UE-29618 Updating shots for sequencer testing Change 2955635 on 2016/04/26 by Max.Chen Sequencer: Fix filtering so that folders that contain filtered nodes will also appear. #jira UE-28213 [CL 2969385 by Matthew Griffin in Main branch]
2016-05-06 15:20:28 -04:00
if (bBlutility || bLocalizationDashboard || bTranslationPicker || bDeviceOutputLog)
{
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
MenuBuilder.BeginSection("ExperimentalTabSpawners", LOCTEXT("ExperimentalTabSpawnersHeading", "Experimental"));
{
// Blutility
if (bBlutility)
{
MenuBuilder.AddMenuEntry(
LOCTEXT("BlutilityShelfLabel", "Blutility Shelf"),
LOCTEXT("BlutilityShelfToolTip", "Open the blutility shelf."),
FSlateIcon(),
FUIAction(FExecuteAction::CreateStatic(&FMainMenu::OpenBlutilityShelf))
);
}
// Localization Dashboard
if (bLocalizationDashboard)
{
MenuBuilder.AddMenuEntry(
LOCTEXT("LocalizationDashboardLabel", "Localization Dashboard"),
LOCTEXT("LocalizationDashboardToolTip", "Open the Localization Dashboard for this Project."),
FSlateIcon(),
FUIAction(FExecuteAction::CreateStatic(&FMainMenu::OpenLocalizationDashboard))
);
}
// Translation Picker
if (bTranslationPicker)
{
MenuBuilder.AddMenuEntry(
LOCTEXT("TranslationPickerMenuItem", "Translation Picker"),
LOCTEXT("TranslationPickerMenuItemToolTip", "Launch the Translation Picker to Modify Editor Translations"),
FSlateIcon(),
FUIAction(FExecuteAction::CreateStatic(&FMainFrameTranslationEditorMenu::HandleOpenTranslationPicker))
);
}
Copying //UE4/Release-Staging-4.12 to //UE4/Dev-Main (Source: //UE4/Release-4.12 @ 2962397) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2962397 on 2016/05/02 by Dmitriy.Dyomin Fixed: Crash generating LOD for a Landscape #jira UE-30144 Change 2962367 on 2016/05/01 by Zachary.Wilson Building lighting on QA-Effects #jira UE-29618 Change 2962363 on 2016/05/01 by Zachary.Wilson Updating Reflection Capture Test Content #jira UE-29618 Change 2962362 on 2016/05/01 by Benjamin.Hyder Built Lighting in QA-PostProcessing level #jira UE-29618 Change 2962361 on 2016/05/01 by Zachary.Wilson Adding testing content for Custom Resolutions and Cubemaps for Sky Cubemaps and Reflection Probes. #jira UE-29618 Change 2962357 on 2016/05/01 by Benjamin.Hyder Built Lighting for Tm_SceneTexture #jira UE-29618 Change 2962356 on 2016/05/01 by Benjamin.Hyder Adding PlayerStart to TM-TranslucencyLghtingMode map #jira UE-29618 Change 2962351 on 2016/05/01 by Benjamin.Hyder Adding high Precision GBuffer Normal Encoding example to TM-Shadermodels #jira UE-29618 Change 2962349 on 2016/05/01 by Benjamin.Hyder Correcting Planar Reflection in TM-Shadermodels #Jira UE-29618 Change 2962348 on 2016/05/01 by Benjamin.Hyder Adding Planar Reflection Test Case content to TM-Shadermodels #jira UE-29618 Change 2962347 on 2016/05/01 by Zachary.Wilson Adding testing content for Dual Normal Clfar Coat Material Expression #jira UE-29618 Change 2962340 on 2016/05/01 by Zachary.Wilson Adding testing content for engine scalability (WIP) #jira UE-29618 Change 2962173 on 2016/04/30 by Ben.Marsh Fix typo. Change 2962172 on 2016/04/30 by Ben.Marsh Disable Vulkan in installed UE4 buids. Build machines don't have the Vulkan SDK installed so they can't generate static libraries for VulkanRHI, so if we try to link against it on user's machines they'll fail due to the missing LIB. #jira UE-30156 Change 2961782 on 2016/04/29 by Mike.Beach Guarding against an invalid (null) target for the Blueprint debugger (watch viewer) panel. #jira UE-30110 Change 2961780 on 2016/04/29 by Mike.Beach Guarding against interface arrays with null entries (null checking in property editor processing code). #jira UE-30015 Change 2961580 on 2016/04/29 by Owen.Stupka #jira UE-29796 Rollback //UE4/Release-4.12/Samples/NotForLicensees/ProtoStar/Content/Blueprints/NickD/StarCoreSliceNick.uasset to revision 2 Change 2961531 on 2016/04/29 by Ryan.Gerleve Fix for an assert that could occur in monolithic builds when seamless traveling while recording a replay. #jira UE-22047 Change 2961499 on 2016/04/29 by Marc.Audy Use accessor instead of variable directly. #jira UE-00000 Change 2961492 on 2016/04/29 by Chris.Babcock Android Vulkan dynamic loader with fallback to ES2 - works with either NDK r11c+ or VulkanSDK (does not require .so) #jira UEPLAT-1249 #jira UEMOB-103 #ue4 #android Change 2961462 on 2016/04/29 by Chris.Babcock Fix issue with stripping symbols for non-armv7 architectures #jira UE-30138 #android #ue4 Change 2961442 on 2016/04/29 by Marc.Audy Fix undo/redo of attachment between an IWCE and blueprint constructed component not working #jira UE-28948 Change 2961400 on 2016/04/29 by Samuel.Proctor Test assets for FiB test cases. #jira UE-29618 Change 2961382 on 2016/04/29 by Daniel.Lamb Fix for shadowed variables. #jira UE-29470 Change 2961319 on 2016/04/29 by mitchell.wilson #jira UE-29618 - Adding TM-LandscapeFoliage map Change 2961278 on 2016/04/29 by Chris.Babcock Fix 64-bit cast #jira UE-30132 #ue4 #android Change 2961263 on 2016/04/29 by Daniel.Lamb Fixed issue with iterative cooking missing dependent sublevels when checking for dependent timestamps. #jira UE-29470 Change 2961227 on 2016/04/29 by Taizyd.Korambayil #jira UE-30068 Resaved Some assets and Updated TexturePool in DefaultEninge.ini Change 2961208 on 2016/04/29 by Nick.Darnell UMG - Unable to reproduce the issue of the designer crashing because it popping more messages than it has, but adding a check to make sure the array isn't already empty before popping. #jira UE-29919 Change 2961190 on 2016/04/29 by Nick.Darnell UMG - Unable to reproduce the issue of the designer crashing because it popping more messages than it has, but adding a check to make sure the array isn't already empty before popping. #jira UE-29919 Change 2961161 on 2016/04/29 by Gareth.Martin Added warnings when trying to use the Landscape Visibility Tool without the landscape material having a "Landscape Visibility Mask" node. #jira UE-30032 Change 2961109 on 2016/04/29 by Keith.Judge Xbox One - Enable USE_NEW_LOCK_FREE_LISTS, and refactor code to allow VS2015 to compile it (was using a non-standard GCC/Clang behaviour). Lots of duplicated code, but there already was... #jira UEPLAT-1288 Change 2961055 on 2016/04/29 by Mike.Beach Mirroring CL 2961019: Temporarily disabling InitProperties() spawning optimization, as it was causing GC issues. #jira UE-29940 Change 2961018 on 2016/04/29 by Rolando.Caloca UE4.12 - Compile fix for shipping #jira UE-30096 Change 2960921 on 2016/04/29 by Matthew.Griffin Updated AutoSDK used by Android so that arm64 will build Change 2960920 on 2016/04/29 by Martin.Wilson Missing files from 2960847 #jira ue-25715 Change 2960906 on 2016/04/29 by Peter.Sauerbrei added more explicit message when the deployment fails due to device not on provision #jira UE-19875 Change 2960869 on 2016/04/29 by Chris.Bunner Allow custom material nodes to be used with tessellation outputs. #jira UE-29586 Change 2960847 on 2016/04/29 by Martin.Wilson Fix setting incorrect animation assets on anim player nodes. #jira ue-25715 Change 2960842 on 2016/04/29 by Keith.Judge Xbox One - Remove SetGpuMemoryPriority() call as it turns out most actual game titles are CPU bound, and this is just hurting them. #jira UEPLAT-1288 Change 2960841 on 2016/04/29 by Keith.Judge Xbox One - Make temporary buffers last for three frames. #jira UEPLAT-1288 Change 2960838 on 2016/04/29 by Keith.Judge Xbox One - Change the MemoryBarrier function to be FORCENOINLINE so that the compiler doesn't reorder writes around it. #jira UEPLAT-1288 Change 2960834 on 2016/04/29 by Keith.Judge Xbox One - Change GPUMalloc memory type to write combined, as cached non-coherent caused major UMG flickering issues, and would appear to be unsafe, according to the latest XDK docs. #jira UEPLAT-1288 Change 2960829 on 2016/04/29 by Keith.Judge Xbox One - Fix RHIUpdateTexture2D not actually updating the texture. It was silently failing because the GPU_READONLY flag was set on the memory. Grrrrrr! #jira UEPLAT-1288 Change 2960826 on 2016/04/29 by Keith.Judge Xbox One - Turn on GSupportsEfficientAsyncCompute and GSupportsParallelOcclusionQueries. Duplcated from Dev-Platform. #jira UEPLAT-1288 Change 2960820 on 2016/04/29 by Keith.Judge Xbox One - Replicate Windows critical section changes. Duplicated from Dev-Platform. #jira UEPLAT-1288 Change 2960819 on 2016/04/29 by Marc.Audy Owned components are once again referenced by their Owning actor for GC purposes #jira UE-29131 Change 2960817 on 2016/04/29 by Keith.Judge Xbox One - Further fix for flickering HUD. Also seems to fix weird bloom when Fast Semantics are enabled. Duplicated from Dev-Platform. #jira UEPLAT-1288 Change 2960814 on 2016/04/29 by Keith.Judge Xbox One - Fix crash when creating odd sized textures with initial data. Duplicated from Dev-Platform. #jira UEPLAT-1288 Change 2960805 on 2016/04/29 by Keith.Judge Fix .ini.ini filename issue (duplicated fix from Dev-Platform). #jira UES-2270 Change 2960797 on 2016/04/29 by Mason.Seay Deleting asset associated with crashing map, just to be safe (neither are needed anymore) #jira UE-25215 Change 2960793 on 2016/04/29 by Mason.Seay Deleting map that's causing a crash #jira UE-25215 Change 2960774 on 2016/04/29 by Robert.Manuszewski (temp) Fix for missing packages after cooking. #jira UE-29876 Change 2960747 on 2016/04/29 by Jurre.deBaare Mac build fixes #jira abc-123 Change 2960739 on 2016/04/29 by Benn.Gallagher Use mesh update mode to update cloth rather than whether or not it was rendered. #jira UE-25934 Change 2960707 on 2016/04/29 by Jurre.deBaare HLOD cluster dirtying from changes in static mesh component and spline mesh component, required making the HierarchicalLODUtilities Module to have an abstract interface (for dynamic loading in the Engine module) #jira UE-24378 Change 2960704 on 2016/04/29 by Matthew.Griffin Added Architectures and GPUArchitectures to UEBuildConfiguration that can be passed through on the UBT command line Changed Android Tool Chain so that it checks the command line architectures as an additional way to setup which ones to build Added option to pass architectures on command line when precompiling monolithic targets via UAT (with armv7, arm64 & es2 set for Android for now) Added code to read precompiled architectures in Rocket build and write out additional Installed Platform Info entries for each one #jira UEB-560 Change 2960694 on 2016/04/29 by Robert.Manuszewski Log free disk space when DirectoryWatcher's File Cache fails to move a file. #jira UE-24660 Change 2960687 on 2016/04/29 by Benn.Gallagher Demoted eINTERNAL_ERROR (PhysX error code) to warning as we were flagging things too zealously (degenerate poly failing a cook) #jira UE-30053 Change 2960381 on 2016/04/28 by Chris.Babcock Handle movie playback not covering full surface #jira UE-28705 #ue4 #android Change 2960162 on 2016/04/28 by Ryan.Vance #jira UE-30099 Re-enabling the occlusion area mask for the Rift. Any Rift HMD's newer than the CB prototype will use the CV1 masks. We'll need to revist this in the future. We need to ensure we always set the InstancedEyeIndex uniform if it's bound. Otherwise passes that aren't using instanced stereo will resolve their views using an uninitialized variable (translucency). Change 2960100 on 2016/04/28 by Andrew.Porter Removing old sub sequences. #jira UE-29618 Change 2959962 on 2016/04/28 by Peter.Sauerbrei fix for enabling InApp purchasing not enabling Online Subsystem IOS #jira UE-25512 Change 2959937 on 2016/04/28 by Patrick.Donovan Screen aligned UVs test material for QAGame for testing if they work in VR. #jira UE-29618 Change 2959914 on 2016/04/28 by Dan.Oconnor Fix for copy paste error, likely of no consequence because nothing calls IsExporting(), found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959859 on 2016/04/28 by Ryan.Gerleve Fix for fatal error crash when loading the default map fails. Now we load a dummy world and request graceful exit in standalone, or shutdown the current play session in PIE. #jira UE-26634 Change 2959856 on 2016/04/28 by Chris.Babcock Fix scaling on low-resolution devices in Match3 #jira UE-28706 #ue4 #match3 Change 2959839 on 2016/04/28 by Dan.Oconnor Fix IsControlCharacter result for 'pop directional isolate' character (u2069), found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959836 on 2016/04/28 by Dan.Oconnor Remove unused local variable, found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959829 on 2016/04/28 by Dan.Oconnor Using OverridePredrawBatchTime and OverridePredrawBatchTime correctly, found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959817 on 2016/04/28 by Peter.Sauerbrei fix for parsing the IOS Device ID addition of iPhone SE (courtesy davidrpozesky, PR2307) addition of iPadPro 9.7 #jira UE-21921 Change 2959808 on 2016/04/28 by Nick.Darnell UBT - Restoring GetModuleFilename to the RulesCompiler but only to deprecate it, and point users at the method they should now be using. #jira ue-none Change 2959805 on 2016/04/28 by Chad.Taylor Merging //UE4/Dev-VR/Engine/... to //UE4/Release-4.12/Engine/... #jira UEBP-188 Change 2959798 on 2016/04/28 by Dan.Oconnor Manually integrate 2947850, also found with PVS-Studio by Robert Troughton #jira UE-30058 Change 2959796 on 2016/04/28 by Aaron.McLeran Duplicating CL 2959785 from //UE4/Dev-Framework #jira UE-30083 Sound concatenator node doesn't progress if child nodes don't produce wave instances #tests created new sound cue with concat node with child nodes that don't play sound-instances, concat node continues playing Change 2959793 on 2016/04/28 by Dan.Oconnor Fixed setter that did nothing, found with PVS-Studio by Robert Troughton. This code will be removed soon. #jira UE-30058 Change 2959739 on 2016/04/28 by Ori.Cohen Remove box2d ensure as it's confusing for legit crashes since it shows up in the end of the log. #JIRA UE-29932 Change 2959709 on 2016/04/28 by Nick.Darnell Slate - Menu Stack no longer crashes when forcefully dismissing multiple menus in the stack at once. #jira UE-30087 Change 2959701 on 2016/04/28 by Nick.Darnell Slate - The MoviePlayer now has an OnPrepareLoadingScreen callback that modules can hook instead of relying on the PreLoadMap, which depending on when you hook it, you may be before or after the movie player. Therefore to aleviate that ordering problem - if the movie player goes to play a loading screen and one has not yet been configured this callback will be triggered so that hopefully one is supplied. #jira UE-30085 Change 2959691 on 2016/04/28 by Nick.Darnell UMG - Fixed Aspect ratios now correctly size the right side of the screen, allowing right anchored content to be fit properly inside the black frame borders. #jira UE-30084 Change 2959678 on 2016/04/28 by mason.seay Updated test sound cue asset, as it appeared to be partially filled out. Moved it out of developer folder. Also rebuilt lighting on associated test map. #jira UE-29618 Change 2959514 on 2016/04/28 by Aaron.McLeran Duplicating CL 2959506 from //UE4/Dev-Framework #jira UE-30000 PR #2330: Fix for ambient sounds not stopping when active and told to play again (Contributed by hgamiel) #tests Playing another looping sound on an audio component will stop the previous looping sound. Change 2959486 on 2016/04/28 by Bob.Tellez Duplicating CL#2948431 from //Orion/Dev-General CL#s 2919775 and 2942793 integrated to prevent annotation map performance problems on shutdown and asserts in PIE. #JIRA UE-29625 #tests Ran editor Change 2959414 on 2016/04/28 by Chad.Taylor IStereoLayers API and Oculus Rift implementation #jira UEBP-185 Change 2959395 on 2016/04/28 by Taizyd.Korambayil #jira UE-29710 Resaved Kite Demo Maps and Audio files to Fix Build Warnings Change 2959386 on 2016/04/28 by Richard.TalbotWatkin Replicated from CL 2959360 in //UE4/Dev-Editor/ Fixed potential crash when mesh painting actors whose geometry adapters are no longer registered. #jira UE-29615 - [CrashReport] UE4Editor_MeshPaint!FEdModeMeshPaint::DoPaint() [meshpaintedmode.cpp:1127] Change 2959377 on 2016/04/28 by Matthew.Griffin Added 2015 versions of OpenSSL dlls to list of RuntimeDependencies, so that they will be included in the binary build #jira UE-30024 Change 2959367 on 2016/04/28 by Alexis.Matte #jira OR-20622 make sure LOD import Materials get map with LOD 0 material index Change 2959302 on 2016/04/28 by Jamie.Dale Removed invalid assert #jira UE-30042 Change 2959263 on 2016/04/28 by Peter.Sauerbrei fix for virtual joysticks showing up on tvOS removed usage of ES2 define for tvOS #jira UE-26122 Change 2959235 on 2016/04/28 by Taizyd.Korambayil #jira UE-29744 Resaved Vehicle Game maps to Fix Build Warnings Change 2959177 on 2016/04/28 by Thomas.Sarkanen Fixed curve names getting incorrectly duplicated when DuplicateObject was called Fixes crash when trying to convert curves to metadata after newly importing a sequence. #jira UE-29988 - Crash when converting custom curve to metadata in persona Change 2959170 on 2016/04/28 by Taizyd.Korambayil #jira UE-29683 Resaved Maps to Fix Build Warnings #jira UE-29685 #jira UE-29679 #jira UE-29684 Change 2959154 on 2016/04/28 by Dan.Bullard Added Media Player assets and added example to TM-ShaderModels. #jira UE-29618 Change 2959112 on 2016/04/28 by Jamie.Dale Fixed a long time IME crash that could happen under certain circumtances #jira OPP-5607 Change 2959086 on 2016/04/28 by Jamie.Dale Refreshing the editable text layout now makes sure the layout is up-to-date This addresses some update issues when the widget is being ticked, but not running a layout pass. #jira UE-30054 Change 2958927 on 2016/04/28 by Phillip.Kavan [UE-30040] Fix broken editor UI display of values for int32 properties tagged as bitmask fields when the high bit is set. #jira UE-30040 Change 2958730 on 2016/04/28 by Phillip.Kavan [UE-23087] Don't apply near-zero delta values while drag-scaling inside the Blueprint editor's preview viewport. #jira UE-23087 Change 2958566 on 2016/04/27 by Marcus.Wassmer Fix material preview and PostProcessAmbient #jira UE-29994 Change 2958459 on 2016/04/27 by mason.seay Test assets for Sound Class Override #jira UE-29618 Change 2958399 on 2016/04/27 by Owen.Stupka #jira UE-29924 Back out CL 2958355, change was in wrong position. Change 2958395 on 2016/04/27 by Aaron.McLeran Duplicating CL#2950482 from //UE4/Dev-Framework #jira FORT-22973 SoundMix Fade Time not fading audio properly - Bug was due to bApplyToChildren case where the FSoundClassAdjuster wasn't getting the interpolated value before calling RecursiveApplyAdjuster in the case of non-overriden sound mixes. #tests Apply a sound mix using a child sound class with apply-to-children enabled. Sound mix properly interpolates. Change 2958387 on 2016/04/27 by Aaron.McLeran Duplicating CL#2954865 from //UE4/Dev-Framework #jira UE-29763 Use HMD audio device only in VR preview mode, not for other PIE session types. #tests run editor in PIE with HMD connected, audio only plays on PC, then run in VR-Preview with HMD connected, audio plays on HMD audio device Change 2958381 on 2016/04/27 by Josh.Adams - Fixed compile error in IOSDeviceHelperMac.cpp #lockdown nick.penwarden #jira UE-30037 Change 2958355 on 2016/04/27 by Owen.Stupka #jira UE-29924 Fix for UAT issues on Mac. Change 2958351 on 2016/04/27 by Aaron.McLeran Duplicating CL#2957953 from //UE4/Dev-Framework #jira UE-30018 Fixing up audio component ref-counting to prevent triggering notifications when an audio component is still active after a sound finishes playing. #tests run audio component with auto-activate, call play, setup notification callback in BP, note that only triggered once Change 2958344 on 2016/04/27 by Taizyd.Korambayil #jira UE-29720 Resaved Audio Files to fix NodeGUID Warnings Change 2958342 on 2016/04/27 by mitchell.wilson #jira UE-29618 updating shot_002 to fix an issue with snapping. Change 2958315 on 2016/04/27 by Marc.Audy No longer use component pooling, but instead spawn Actors for thumbnail display #jira UE-17453 Change 2958289 on 2016/04/27 by Marc.Audy Don't crash rerunning construction script on a child actor that belongs to a ownerless child actor component #jira UE-30033 Change 2958280 on 2016/04/27 by Taizyd.Korambayil #jira UE-29723 Resaved Maps and Audio Files Change 2958237 on 2016/04/27 by Taizyd.Korambayil #jira UE-29687 Resaved Some Assets to Fix Build Warnings Change 2958176 on 2016/04/27 by Taizyd.Korambayil #jira UE-29701 Resaved Some Assets to Fix Build Warnings Change 2958172 on 2016/04/27 by Ori.Cohen Back out changelist 2955134 #JIRA UE-30030 Change 2958121 on 2016/04/27 by Taizyd.Korambayil #jira UE-29706 Resaved Some Assets to Fix Build Warnings Change 2958070 on 2016/04/27 by Peter.Sauerbrei fix for launch on to tvOS from PC properly filter out tvOS devices when launching to IOS and vice versa #jira UE-29928 Change 2958029 on 2016/04/27 by Andrew.Rodham Fixed SMenuAnchor::bIsCollapsedByParent not being respected #jira UE-30016 Change 2957962 on 2016/04/27 by Alexis.Matte #jira UE-29984 Pixel inspector crash Fix the viewport id Change 2957908 on 2016/04/27 by Andrew.Rodham Sequencer: Fixed being unable to render out 4K image sequences using matinee or sequencer #jira UE-29171 Change 2957880 on 2016/04/27 by Peter.Sauerbrei fix for metal not being enabled in iOS 8 added some checks for bSupportsResourceOptions in Lock/Unlock #jira UE-29268 Change 2957860 on 2016/04/27 by Gareth.Martin Fixed landscape grass not updating when using a material instance as the landscape material and changing parameters #jira UE-29471 Change 2957833 on 2016/04/27 by Taizyd.Korambayil #jira UE-29707 Replaced Deprecated Nodes and Resaved Audio Files to Fix Build Warnings Change 2957805 on 2016/04/27 by Max.Chen Sequencer: Fix crash in UMG when a property changes and there's no movie scene. #jira UE-30008 Change 2957803 on 2016/04/27 by Taizyd.Korambayil #jira UE-29718 Resaved Audio Files and Maps to Fix NodeGuid Warnings Change 2957799 on 2016/04/27 by Max.Chen Sequencer: Fix visibility track name so that it says "Visibility" #jira UE-29996 Change 2957777 on 2016/04/27 by Allan.Bentham Workaround ES31 HQ DoF producing no effect with vulkan rhi. #jira UE-30006 Change 2957763 on 2016/04/27 by Taizyd.Korambayil #jira UE-29678 Resaved Maps to Fix Build Errors Change 2957740 on 2016/04/27 by Taizyd.Korambayil #jira UE-29628 Resaved Maps to fix Build Warnings Change 2957713 on 2016/04/27 by Taizyd.Korambayil #jira UE-29715 Resaved Maps to Fix Build Warnings Change 2957678 on 2016/04/27 by Taizyd.Korambayil #jira UE-29677 Fixed up AnimBP and resaved some assets to fix Build Warnings Change 2957627 on 2016/04/27 by Frank.Fella UMG - Sequencer - Fix material animation for materials on struct properties e.g. style materials, and fix the naming so that it's [Original Name]_Animated #Jira UE-29319 #Jira UE-29321 Change 2957625 on 2016/04/27 by Taizyd.Korambayil #jira UE-29689 Replaced deprecated Nodes and Resaved some assets to Fix Warnings Change 2957603 on 2016/04/27 by mitchell.wilson #jira UE-29618 updating Test-Animation for UMG test. Adding M_SequenceUMG material for UMG testing Change 2957577 on 2016/04/27 by Ben.Marsh EC: Increase the number of changes queried to display the EC dashboard. Some changes are getting filtered out. Change 2957569 on 2016/04/27 by Maciej.Mroz #jira UE-27735 Enumerators are not set correctly in packaged games if Nativize Blueprint Assets is set to true merged from Dev-Blueprints 2957564 Change 2957565 on 2016/04/27 by Taizyd.Korambayil #jira UE-29721 Resaved Some Content to Fix Empty Engine Version Error Change 2957558 on 2016/04/27 by Matthew.Griffin Updated Installed Engine Filters now that Linux has dropped the architecture from its .target files #jira UE-29899 Change 2957504 on 2016/04/27 by Marc.Audy Persist component instance data cache through blueprint construction that results in "disaster recovery mode" #jira UE-20385 Change 2957162 on 2016/04/26 by Dmitriy.Dyomin Fixed: Some Unicode letters are not properly displayed with FCanvasTextItem in Android device #jira UE-25861 Change 2957117 on 2016/04/26 by Dan.Oconnor PR #2289: Exposing "IsValidIndex" Array function to Blueprints (Contributed by eXifreXi) Modifications: typo fix in Array.h, made blueprint description consistent with native function, removed redundant nullptr check, added P_NATIVE timer macros, added custom thunk implementation for cpp backend #jira UE-29563 Change 2957057 on 2016/04/26 by Dan.Oconnor Tweak logic used to make variable nodes more accessible Motivation was PR#2202 by Lucyberad #jira UE-28802 Change 2956884 on 2016/04/26 by Jamie.Dale Removed an assert that can be triggered by certain IMEs #jira UE-19744 Change 2956876 on 2016/04/26 by Dan.Oconnor PR #2288: Adjustment of RInterpTo and RInterpTo_Constant descriptions to match function. (Contributed by CelPlays) #jira UE-29495 Change 2956860 on 2016/04/26 by Max.Preussner Sockets: Fixed incorrect socket timeout when value < 1 ms (UE-29973) #jira: UE-29973 Change 2956801 on 2016/04/26 by Rolando.Caloca UE4.12 - vk - Added r.Vulkan.SubmitOnCopyToResolve to help track down submit issues #jira UE-28140 Change 2956679 on 2016/04/26 by Andrew.Rodham Editor: Fixed not being able to switch between cinematic/default viewport types #jira UE-29942 Change 2956674 on 2016/04/26 by James.Fox Updated Blueprint Bitmask test asset to include Bitwise OR. #jira UE-29618 Change 2956573 on 2016/04/26 by Rolando.Caloca UE4.12 - vk - Added TRANSFER_BIT to swapchain images since it's required for clearing #jira UE-28140 Change 2956572 on 2016/04/26 by Rolando.Caloca UE4.12 - vk - Added alignment to buffer offsets depending on usage #jira UE-28140 Change 2956502 on 2016/04/26 by Peter.Sauerbrei fix for missing particles on iPhone 5 when compiling for size re-enable compile for size for Match 3 #jira UE-28721 Change 2956445 on 2016/04/26 by Taizyd.Korambayil #jira UE-29691 Resaved some Animation Assets to Fix Build Warnings Change 2956382 on 2016/04/26 by Taizyd.Korambayil #jira UE-29688 Resaved Maps in Infiltrator Demo t oFix Some Build Warnings Change 2956332 on 2016/04/26 by Patrick.Donovan Adding physics asset set up for Capsule shadows for easy testing of capsule shadows in VR and with instanced stereo enabled. #jira UE-29618 Change 2956301 on 2016/04/26 by Ben.Marsh Disable notification emails for warnings in Rocket sample builds. Change 2956264 on 2016/04/26 by Peter.Sauerbrei fix for binary release generation of bp-only project files for IOS on Mac #jira UE-29934 Change 2956247 on 2016/04/26 by Jurre.deBaare Fix for Mac compile #jira UE-123ABC Change 2956192 on 2016/04/26 by Jurre.deBaare - Changed signatures for merging static mesh (LOD index now incorporated in merge data structure) - Proxy mesh and Mesh merging now just merges one specific LOD index per input mesh (instead of looping over all LOD levels) - Moved SourceStaticMesh and addex ExportLODIndex to FMeshMergeData structure - LightMap Index for merged static meshes is now set correctly - Added enum to MaterialProxySettings for distinction between (non-)Simplygon uses of the struct - Move MergeActor tab spawner out of experimental (removed option from config) and moved into Developer Tools/Misc #jira UE-28319 Change 2956183 on 2016/04/26 by mitchell.wilson #jira UE-29618 Adding new sequence for assign actor testing. Updating sequencer levels for assign actor testing Change 2956152 on 2016/04/26 by Lina.Halper - removed invalid ensure because it doesn't check recursive, it does have different value with validation #jira : UE-29945 Change 2956034 on 2016/04/26 by Andrew.Rodham Sequencer: Skeletal animation tracks now evaluate the nearest section where no animation section is present - This is more consistent with how other tracks evaluate, and guarantees a deterministic animated state #jira UE-28073 Change 2956002 on 2016/04/26 by Taizyd.Korambayil #jira UE-29729 Resaved Blueprints to Fix Build Warnings Change 2955999 on 2016/04/26 by Max.Chen Sequencer: Refresh instances when done recording. This fixes a bug where spawned recorded actors aren't visible when done recording. #jira UE-29841 Change 2955983 on 2016/04/26 by Andrew.Rodham Removing Saved, Intermediate, and DerivedDataCache folders from SubwaySequencer sample project. #jira UE-29938 Change 2955979 on 2016/04/26 by Taizyd.Korambayil #jira UE-29728 Resaved Some assets to Fix Build Warnings Change 2955941 on 2016/04/26 by Taizyd.Korambayil #jira UE-29730 Resaved Maps to Fix Build Warnings Change 2955937 on 2016/04/26 by Andrew.Rodham Sequencer: When recording actors as spawnables, we no longer duplicate the object, rather create a new instance of the same class - This fixes issues caused by undersiable state being saved into the spawnable defaults Merged from //UE4/Dev-Sequencer/...@2952610 #jira UE-29774 Change 2955888 on 2016/04/26 by mitchell.wilson #jira UE-29618 Updating shots for sequencer testing Change 2955635 on 2016/04/26 by Max.Chen Sequencer: Fix filtering so that folders that contain filtered nodes will also appear. #jira UE-28213 [CL 2969385 by Matthew Griffin in Main branch]
2016-05-06 15:20:28 -04:00
// Device output log
if (bDeviceOutputLog)
{
MenuBuilder.AddMenuEntry(
LOCTEXT("DeviceOutputLogMenuLabel", "Device Output Log"),
LOCTEXT("DeviceOutputLogToolTip", "Open the Device Output Log tab."),
FSlateIcon(FEditorStyle::GetStyleSetName(), "Log.TabIcon"),
FUIAction(FExecuteAction::CreateStatic(&FMainMenu::OpenDeviceOutputLog))
);
}
Window menu refactor & polish - Window menu is now sectioned and labeled based on the current editor. There's now a local workspace root member in FTabManager and a workspace category in FAssetEditorToolkit (both are FWorkspaceItem objects). Individual editors attach their local category to the tab manager's local root. Workflow app modes have their own category members that are swapped out when the mode changes. - Finally, the AssetEditorCategory of FWorkspaceMenuStructure has been removed entirely. - Replaced the AddMenuSeparator() call in FTabManager::PopulateSpawnerMenu_Helper() with a section of the same title as the workspace category. - Tab spawner menu entries for the local editor now properly show the icon of the associated tab. To accomplish this it was necessary to change FWorkflowTabFactory::TabIcon to be an FSlateIcon instead of an FSlateBrush*. All factory instances have been updated accordingly. - Added & updated lots of icons! (those missing will be TTP'd) - The nomad tab spawner section (named "General" in the menu) has been largely compressed into the Developer Tools submenu, which has also been organized into sections for readability. - Unreal frontend options were also moved into a context menu within the General section - Moved all experimental tools to their own section of the Window menu. When they're no longer experimental they should register as nomads in the appropriate category - Undo history now under Edit menu [CL 2324285 by Dan Hertzka in Main branch]
2014-10-09 12:34:55 -04:00
}
MenuBuilder.EndSection();
}
}
MenuBuilder.BeginSection("WindowLayout", NSLOCTEXT("MainAppMenu", "LayoutManagementHeader", "Layout"));
{
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().ResetLayout);
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().SaveLayout);
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().ToggleFullscreen);
}
MenuBuilder.EndSection();
}
#undef LOCTEXT_NAMESPACE
void FMainMenu::FillHelpMenu( FMenuBuilder& MenuBuilder, const TSharedRef< FExtender > Extender )
{
MenuBuilder.BeginSection("HelpOnline", NSLOCTEXT("MainHelpMenu", "Online", "Online"));
{
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3152045) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3106449 on 2016/08/30 by Michael.Dupuis #jira UETOOL-229 Added generic command icons used in Edit Menu (including contextual menu) Change 3133997 on 2016/09/21 by Alex.Delesky #jira UE-34079 - FSceneView parameter for FBatchedElements::Draw is no longer an optional parameter. Change 3134132 on 2016/09/21 by Jamie.Dale Added the "unattended" flag when running the localzation commandlets via UAT Change 3134147 on 2016/09/21 by Frank.Fella Core - Add multitouch support to windows. Change 3134349 on 2016/09/21 by Michael.Dupuis #jira UE-36151 Update the title bar to display the branch also Change 3134355 on 2016/09/21 by Michael.Dupuis #jira UE-36041 When initially creating a projet and trying to add everything to source control, also add the uproject file Change 3134447 on 2016/09/21 by Alexis.Matte #jira UE-36064 The SpriteComponent is now properly reused when duplicating a light. Change 3134451 on 2016/09/21 by Alexis.Matte #jira UE-22782 Make sure when we re-import we dont try to match the mesh name if the option bCombineToSingle is true Change 3134457 on 2016/09/21 by Jamie.Dale FInternationalization::Leetify now deals with escape sequences correctly. This also changes it to mark all leetified text with the start and end marker, and the unit tests have been updated accordingly. Change 3134685 on 2016/09/21 by Matt.Kuhlenschmidt Cleaned up some of the UI for the new material slot workflow (part 1) Change 3134743 on 2016/09/21 by Matt.Kuhlenschmidt Fix crash clicking OK to the import mesh dialog in persona when a path is not selected. The OK button is now disabled until a valid path is selected Change 3134760 on 2016/09/21 by Matt.Kuhlenschmidt Guard against cascade crash if cascade was shutdown but there is an old cascade particle system component in the undo buffer that attempts to refresh cascade Change 3134837 on 2016/09/21 by Matt.Kuhlenschmidt Fix static analysis warnings in this file Change 3134939 on 2016/09/21 by Nick.Darnell Automation - Moving the functional testing hooks for the editor into a plugin, the goal is to make it so you don't have to see all the extra stuff automation adds to the editor until the game project needs it. Refactoring the way automation messages are serialized, no longer relying on a comma delimited string to serialize automation data. Improving the filter for automation window so it lets you put in a path, and find it that way. Fixing RunTests from the commandline so that it properly finds the tests, instead of jumping out of the loop as soon as it finds any one match. Change 3134941 on 2016/09/21 by Nick.Darnell Automation - Functional tests now support warnings as errors on a per test basis. Continued itteration on screenshot comparison. Change 3135051 on 2016/09/21 by Matt.Kuhlenschmidt Fixed size of material slots in persona details panel Change 3135076 on 2016/09/21 by Nick.Darnell Automation - Adding a missing file. Change 3135584 on 2016/09/22 by Gareth.Martin Removed unused ULandscapeInfo::BeginDestroy Slight cleanup to FLandscapeEditDataInterface::DeleteLayer Change 3135585 on 2016/09/22 by Gareth.Martin New Count algo Const'd Copy/Accumulate/Transform Change 3135599 on 2016/09/22 by Gareth.Martin Resolve crash if a Landscape Layer Info object is force deleted while it is in use :( #jira UE-35709 Change 3135724 on 2016/09/22 by Michael.Dupuis #jira UE-32662 Remove old migration code that was causing this side effect Change 3135726 on 2016/09/22 by Nick.Darnell Slate - Removing the SLATE_PRE_MULTIPLY macro. Change 3135730 on 2016/09/22 by Nick.Darnell UMG - Exposing the 2D hit location that the WidgetInteractionComponent hit on the WidgetComponent. Change 3135738 on 2016/09/22 by Matt.Kuhlenschmidt Ensure any handles to the backbuffer are released before the backbuffer is resized https://jira.it.epicgames.net/browse/UE-30488 Change 3135810 on 2016/09/22 by Ben.Marsh Build: Compile tools before running automated tests. Change 3135993 on 2016/09/22 by Matt.Kuhlenschmidt Ensure you can unpause after toggling play/pause with a keyboard shortcut. We were processing the keybinding on key down AND up which caused the unpause to instantly pause again https://jira.it.epicgames.net/browse/UE-36276 Change 3136257 on 2016/09/22 by Matt.Kuhlenschmidt Fixed assign of materials to components not working if you multi-select multiple components of a blueprint and assign the material. The construction script was running before all the material had been set on all components. Change 3136318 on 2016/09/22 by Alex.Delesky #jira UE-7405 - Forcing the mouse cursor to show and then clicking inside the viewport will no longer cause the mouse to lose focus Change 3136494 on 2016/09/22 by Matt.Kuhlenschmidt Fix crash restarting a mission in Odin Change 3136741 on 2016/09/22 by Cody.Albert Fixed SButton and SWidget to not multiply color and opacity, since that's already being done by SCompoundWidget #jira UE-36322 Change 3137711 on 2016/09/23 by Matt.Kuhlenschmidt Added guard against slate rendering with deleted materials. In this will now be caught with a looged with the deleted material name. Change 3137713 on 2016/09/23 by Matt.Kuhlenschmidt Removed the pooled draw elements stuff which is not used Change 3137791 on 2016/09/23 by Nick.Darnell MediaPlayer - Removing .png from one of the style files, as that's not required. Was causing warnings to be logged on load. Change 3137793 on 2016/09/23 by Nick.Darnell Localization - Adjusting some log statements to say with instead of w/ Change 3137796 on 2016/09/23 by Nick.Darnell Slate - Adding missing and replacing corrupted style files in the editor. Change 3137864 on 2016/09/23 by Matt.Kuhlenschmidt Fixed "actors are referenced are you sure you want to delete" dialog appearing when you are copying a lot of actors to another level Change 3137876 on 2016/09/23 by Jamie.Dale Added allocation tagging to MProf2 This hooks into the existing FScopeCycleCounterUObject used by the stats system to track object tags (object, package, and class) when an allocation is made. Tags should be in the format "Category:Tag", and the "Tag" part may include "/" to create levels in the tag hierarchy (as shown in the MProf2 tool). #jira UETOOL-950 Change 3137982 on 2016/09/23 by Gareth.Martin Added Invoke() support to CopyIf Change 3137983 on 2016/09/23 by Gareth.Martin Added ULandscapeInfo::ForAllLandscapeProxies to clean up a lot of horrible code - Removed some dependencies on ALandscape and ALandscapeStreamingProxy in the process :) Also made FLandscapeEditorLayerSettings's constructor explicit to clean up some other horrible code Change 3138053 on 2016/09/23 by Matt.Kuhlenschmidt Fixed Child Actor Template properties not visible after changing Child Actor Class Change 3138079 on 2016/09/23 by Jamie.Dale Fixing some Clang warnings Change 3138087 on 2016/09/23 by Jamie.Dale Added GetResourceSizeEx and GetResourceSizeBytes, and deprecated GetResourceSize GetResourceSizeEx populates a struct which reports not only how much memory is allocated, but also which arenas the memory was allocated from. GetResourceSizeBytes just wraps a call to GetResourceSizeEx and returns the total size from all arenas (this has the same behavior as the now deprecated GetResourceSize). Classes that used to override GetResourceSize should instead override GetResourceSizeEx and report their allocations as appropriate. #jira UETOOL-952 Change 3138127 on 2016/09/23 by Gareth.Martin Fixed crash when merging levels containing landscape #jira UE-36267 Change 3138821 on 2016/09/23 by Stephan.Jiang Fixes "Select all input node" doesn't work properly on output node. #jira UE-36335 Change 3138915 on 2016/09/23 by Stephan.Jiang Disable "select all linked nodes" for output nodes in material editor Change 3139341 on 2016/09/25 by Nick.Darnell Automation - Moving the Blueprint Compiler Tests into the RuntimeTests plugin, and making the context client only since that's the only valid place to runt these tests. Change 3139342 on 2016/09/25 by Nick.Darnell Landscape - Fixing some compiler errors on mac. Change 3139345 on 2016/09/25 by Nick.Darnell Automation - Spelling and cleanup. Change 3139346 on 2016/09/25 by Nick.Darnell Engine - Changing a check to an ensure, there's no reason to crash if this happens. Change 3139347 on 2016/09/25 by Nick.Darnell Automation - Making EFunctionalTestResult a BlueprintType Change 3139348 on 2016/09/25 by Nick.Darnell Automation - Adding another test map. Change 3139676 on 2016/09/26 by Michael.Dupuis #jira UE-32335 If we are a config object simply permit the transaction for undo/redo Change 3139702 on 2016/09/26 by Nick.Darnell UMG - Making GetLocalHitLocation on UWidgetComponent virtual. Change 3139760 on 2016/09/26 by Alexis.Matte Make sure we remove override materials from the list when the mesh point by the component has less materials. #jira UE-28845 Change 3139761 on 2016/09/26 by Alex.Delesky Added additional validation code to FPropertyNode to now properly validate TMap value and key nodes. #jira none Change 3139843 on 2016/09/26 by Alex.Delesky #jira UE-36066 - Clearing all options from a ComboBox String when selecting an option will now also clear out the selected text correctly. Change 3139880 on 2016/09/26 by Frank.Fella QAGame - Update multitouch test with less crashy assets? Change 3139908 on 2016/09/26 by Matt.Kuhlenschmidt Fix selections having the potential to be out of sync after undo/redo Change 3139928 on 2016/09/26 by Nick.Darnell Automation - tweaking the test maps some more. Change 3140646 on 2016/09/26 by Matt.Kuhlenschmidt Fix false positive with the test for vaild materials being rendered by slate. Change 3140912 on 2016/09/26 by Frank.Fella Core - Fix multitouch ifdef which was preventing it from actually being enabled.Also update test level blueprint so that it's actually testable. Change 3141218 on 2016/09/27 by Matt.Kuhlenschmidt PR #2798: BP open anim interferes with mouse movement (Contributed by projectgheist) Change 3141223 on 2016/09/27 by Jamie.Dale Updated UTextProperty::Identical to no longer compare display strings all the time It was supposed to compare the identity at runtime as the display string can change at runtime. This was preventing FText properties from being used in TSet/TMap as the hash needs to be consistent. #jira UE-36456 Change 3141242 on 2016/09/27 by Richard.TalbotWatkin Fixed various issues where making changes to components in the Blueprint Editor could cause a crash if there is an active component in the component visualizer. #jira UE-36402 - Editor crash when adding a spline component after having deleted another spline component Duplicated CL 3139370 from //UE4/Release-4.13 Duplicated CL 3139878 from //UE4/Release-4.13 Change 3141323 on 2016/09/27 by Michael.Dupuis #jira UE-35081 Enable bDisplayEngineVersionInBadge by default Change 3141798 on 2016/09/27 by tim.gautier Added UMG_DisplayWidget Change 3143038 on 2016/09/28 by Jamie.Dale Added extra context to FTableRowBase::OnPostDataImport It now takes the owning data table and the row name as parameters. This allows is to do more useful fix-up that depends on the context of where it's used (such as stabilized text keys). Change 3143039 on 2016/09/28 by Jamie.Dale Optimized UTextProperty::Identical to use a pointer comparison rather than read out the identity Only texts which have the same display string pointer can have the same identity, so this is a much faster check. Change 3143098 on 2016/09/28 by Gareth.Martin Fixed crash when loading duplicated landscape levels #jira UE-34890 Change 3143300 on 2016/09/28 by Gareth.Martin Fixed crash when duplicating a level containing a landscape through the content browser #jira UE-34890 Change 3143389 on 2016/09/28 by Jamie.Dale LastResort is no longer staged in shipping builds You can now use the Content/SlateDebug folder to store any Slate resources that shouldn't be used in a shipping build (either for the Engine or for a game). This also removes the old bUsesSlateEditorStyle hack as everything should have migrated away from that now. Change 3143565 on 2016/09/28 by Matt.Kuhlenschmidt Fixed this file Change 3143717 on 2016/09/28 by Michael.Dupuis Fixed lowercase Change 3143798 on 2016/09/28 by Matt.Kuhlenschmidt Fixed StreamingPauseRendering code to not attempt to tick the scene viewport on the slate loading thread while where are blocked on level streaming. The viewport is rendered once and the render target is passed to slate instead of the entire viewport Change 3143820 on 2016/09/28 by Alexis.Matte Use the PersonaToolikit to get the mesh Change 3143833 on 2016/09/28 by Matt.Kuhlenschmidt Added guard for UE-36499 Change 3144144 on 2016/09/28 by Matt.Kuhlenschmidt Fix constructor init order Change 3144821 on 2016/09/29 by Jamie.Dale Fixed feedback loop in FSlateEditableTextLayout::ComputeDesiredSize If the wrapping width is less than the scrollbar width, the scrollbar could constantly re-appear and then disappear. Change 3144867 on 2016/09/29 by Matt.Kuhlenschmidt Added a commandlet to allow command line importing of any asset type the engine supports. - Intermediate checkin Change 3144875 on 2016/09/29 by Nick.Darnell Automation - Adding CornellBox example map, fixing some additional tests, removing the Movement Test. Change 3144975 on 2016/09/29 by Matt.Kuhlenschmidt Disable auto-applying of scalability settings The user will still be asked if the settings should be applied but if they do nothing the notification will just go away without setting stuff. Change 3145274 on 2016/09/29 by Jamie.Dale New asset menu no longer has a scrollbar on most displays Change 3146004 on 2016/09/29 by Matt.Barnes Adding two FBX test files to help facilitate QA coverage on the new material/section workflow. Change 3146377 on 2016/09/30 by Gareth.Martin Fixed landscape rendering errors after using the "change component size" tool - also affected initial import of a landscape+weightmaps #jira UE-34518 Change 3146455 on 2016/09/30 by Jamie.Dale Fixing more menus that had scrollbars due to only being able to use half the vertical resolution Change 3146466 on 2016/09/30 by Gareth.Martin Fixed not being able to erase foliage attached to BSP #jira UE-36297 Change 3146471 on 2016/09/30 by Jamie.Dale Can no longer localize sequences via the Content Browser Change 3146569 on 2016/09/30 by Jamie.Dale Fixed UGatherTextFromSourceCommandlet::ParseSourceText being able to underflow while parsing Change 3147116 on 2016/09/30 by Michael.Dupuis #jira UE-33068 Update selection once after the bulk operation so the AssetContextMenu will have a proper selection, but only perform this if we're not in UserSearchingMode (which mean AssetPicker) Change 3148091 on 2016/10/01 by Matt.Barnes Adding a map and relevant assets to facilitate testing around the new material blueprint nodes - GetMaterialSlotNames, GetMaterialIndex, and SetMaterialByName, respectively Change 3148714 on 2016/10/03 by Nick.Darnell PR #2770: [Git plugin] Fix bug where history and merging do not work if the user has format.pretty settings in their gitconfig (Contributed by SRombauts) #jira UE-35568 Change 3148793 on 2016/10/03 by Nick.Darnell Automation - TPS for SM_Cornellbox Change 3148801 on 2016/10/03 by Nick.Darnell PR #2820: [WidgetBlueprintLibrary] Throwing Essential-Functionality-Understanding PIE Errors when Player Controller ptr not supplied (Contributed by EverNewJoy) #jira UE-36711 Change 3148805 on 2016/10/03 by Nick.Darnell PR #2822: Add missing base includes and forward declarations for UProgressBar and UTextBlock (Contributed by error454) #jira UE-36715 Change 3148813 on 2016/10/03 by Nick.Darnell UMG - The retainer now contains the SVirtualWindow directly in the hierarchy. This should now make it possible to reliably focus elements inside the retainer widget. Change 3148855 on 2016/10/03 by Gareth.Martin Fixed performance regression when importing landscape heightmaps #jira UE-36659 Change 3149482 on 2016/10/03 by Cody.Albert Added link to Support landing page to Help menu #jira UE-36603 Change 3149520 on 2016/10/03 by tim.gautier Edited UMG_Behavior - Collapsed now has a toggleable state to demonstrate functionality. Change 3149945 on 2016/10/04 by Gareth.Martin Fixed invisible landscape components when using tessellation on landscape material #jira UE-35494 Change 3149951 on 2016/10/04 by Gareth.Martin Reduced material update log spam when creating and editing landscapes - Some will remain, landscape fundementally manipulates a lot of material instances #jira UE-34440 Change 3150143 on 2016/10/04 by Matt.Kuhlenschmidt Fix not crashing when trying to clear objects which have a specific class filter in the property settings https://jira.it.epicgames.net/browse/UE-36692 Change 3150614 on 2016/10/04 by Nick.Darnell Git - Disabling some logging in non-debug builds of the git source control plugin. Change 3151647 on 2016/10/05 by Matt.Kuhlenschmidt Fix loc warnings in these files (duplicate loc keys) Change 3151679 on 2016/10/05 by Nick.Darnell Editor - Fixing the build, removing the VREditor module from the dynamically loaded list. Change 3151722 on 2016/10/05 by Gareth.Martin Fix breakage to LandscapeEdModeSplineTools.cpp caused by Dev-VREditor from main integration Change 3151816 on 2016/10/05 by Gareth.Martin Fixed more breakage to Landscape caused by Dev-VREditor from main integration [CL 3152072 by Matt Kuhlenschmidt in Main branch]
2016-10-05 13:23:01 -04:00
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().VisitSupportWebSite);
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().VisitForums);
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().VisitSearchForAnswersPage);
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().VisitWiki);
const FText SupportWebSiteLabel = NSLOCTEXT("MainHelpMenu", "VisitUnrealEngineSupportWebSite", "Unreal Engine Support Web Site...");
MenuBuilder.AddMenuSeparator("EpicGamesHelp");
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().VisitEpicGamesDotCom, "VisitEpicGamesDotCom");
MenuBuilder.AddMenuSeparator("Credits");
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().CreditsUnrealEd);
}
MenuBuilder.EndSection();
#if !PLATFORM_MAC // Handled by app's menu in menu bar
MenuBuilder.BeginSection("HelpApplication", NSLOCTEXT("MainHelpMenu", "Application", "Application"));
{
const FText AboutWindowTitle = NSLOCTEXT("MainHelpMenu", "AboutUnrealEditor", "About Unreal Editor...");
MenuBuilder.AddMenuEntry(FMainFrameCommands::Get().AboutUnrealEd, "AboutUnrealEd", AboutWindowTitle);
}
MenuBuilder.EndSection();
#endif
}
TSharedRef<SWidget> FMainMenu::MakeMainMenu(const TSharedPtr<FTabManager>& TabManager, const TSharedRef< FExtender > Extender)
{
#define LOCTEXT_NAMESPACE "MainMenu"
// Put the toolbox into our menus
{
const IWorkspaceMenuStructure& MenuStructure = WorkspaceMenu::GetMenuStructure();
IToolboxModule& ToolboxModule = FModuleManager::LoadModuleChecked<IToolboxModule>("Toolbox");
ToolboxModule.RegisterSpawners(MenuStructure.GetDeveloperToolsDebugCategory(), MenuStructure.GetDeveloperToolsMiscCategory());
}
// Cache all project names once
FMainFrameActionCallbacks::CacheProjectNames();
FMenuBarBuilder MenuBuilder(FMainFrameCommands::ActionList, Extender);
{
// File
MenuBuilder.AddPullDownMenu(
LOCTEXT("FileMenu", "File"),
LOCTEXT("FileMenu_ToolTip", "Open the file menu"),
FNewMenuDelegate::CreateStatic(&FMainMenu::FillFileMenu, Extender),
"File",
FName(TEXT("FileMenu"))
);
// Edit
MenuBuilder.AddPullDownMenu(
LOCTEXT("EditMenu", "Edit"),
LOCTEXT("EditMenu_ToolTip", "Open the edit menu"),
FNewMenuDelegate::CreateStatic(&FMainMenu::FillEditMenu, Extender, TabManager),
"Edit"
,
FName(TEXT("EditMenu"))
);
// Window
MenuBuilder.AddPullDownMenu(
LOCTEXT("WindowMenu", "Window"),
LOCTEXT("WindowMenu_ToolTip", "Open new windows or tabs."),
FNewMenuDelegate::CreateStatic(&FMainMenu::FillWindowMenu, Extender, TabManager),
"Window"
);
// Help
MenuBuilder.AddPullDownMenu(
LOCTEXT("HelpMenu", "Help"),
LOCTEXT("HelpMenu_ToolTip", "Open the help menu"),
FNewMenuDelegate::CreateStatic(&FMainMenu::FillHelpMenu, Extender),
"Help"
);
}
// Create the menu bar!
TSharedRef<SWidget> MenuBarWidget = MenuBuilder.MakeWidget();
// Tell tab-manager about the multi-box for platforms with a global menu bar
TabManager->SetMenuMultiBox(MenuBuilder.GetMultiBox());
return MenuBarWidget;
}
#undef LOCTEXT_NAMESPACE
#define LOCTEXT_NAMESPACE "MainTabMenu"
TSharedRef< SWidget > FMainMenu::MakeMainTabMenu( const TSharedPtr<FTabManager>& TabManager, const TSharedRef< FExtender > UserExtender )
{ struct Local
{
static void FillProjectMenuItems( FMenuBuilder& MenuBuilder )
{
MenuBuilder.BeginSection( "FileProject", LOCTEXT("ProjectHeading", "Project") );
{
MenuBuilder.AddMenuEntry( FMainFrameCommands::Get().NewProject );
MenuBuilder.AddMenuEntry( FMainFrameCommands::Get().OpenProject );
const bool bUseShortIDEName = true;
FText ShortIDEName = FSourceCodeNavigation::GetSuggestedSourceCodeIDE(bUseShortIDEName);
MenuBuilder.AddMenuEntry( FMainFrameCommands::Get().AddCodeToProject,
NAME_None,
TAttribute<FText>(),
FText::Format(LOCTEXT("AddCodeToProjectTooltip", "Adds C++ code to the project. The code can only be compiled if you have {0} installed."), ShortIDEName)
);
MenuBuilder.AddSubMenu(
LOCTEXT("PackageProjectSubMenuLabel", "Package Project"),
LOCTEXT("PackageProjectSubMenuToolTip", "Compile, cook and package your project and its content for distribution."),
FNewMenuDelegate::CreateStatic( &FPackageProjectMenu::MakeMenu ), false, FSlateIcon(FEditorStyle::GetStyleSetName(), "MainFrame.PackageProject")
);
/*
MenuBuilder.AddMenuEntry( FMainFrameCommands::Get().LocalizeProject,
NAME_None,
TAttribute<FText>(),
LOCTEXT("LocalizeProjectToolTip", "Gather text from your project and import/export translations.")
);
*/
/*
MenuBuilder.AddSubMenu(
LOCTEXT("CookProjectSubMenuLabel", "Cook Project"),
LOCTEXT("CookProjectSubMenuToolTip", "Cook your project content for debugging"),
FNewMenuDelegate::CreateStatic( &FCookContentMenu::MakeMenu ), false, FSlateIcon()
);
*/
FString SolutionPath;
if(FDesktopPlatformModule::Get()->GetSolutionPath(SolutionPath))
{
MenuBuilder.AddMenuEntry( FMainFrameCommands::Get().RefreshCodeProject,
NAME_None,
FText::Format(LOCTEXT("RefreshCodeProjectLabel", "Refresh {0} Project"), ShortIDEName),
FText::Format(LOCTEXT("RefreshCodeProjectTooltip", "Refreshes your C++ code project in {0}."), ShortIDEName)
);
MenuBuilder.AddMenuEntry( FMainFrameCommands::Get().OpenIDE,
NAME_None,
FText::Format(LOCTEXT("OpenIDELabel", "Open {0}"), ShortIDEName),
FText::Format(LOCTEXT("OpenIDETooltip", "Opens your C++ code in {0}."), ShortIDEName)
);
}
else
{
MenuBuilder.AddMenuEntry( FMainFrameCommands::Get().RefreshCodeProject,
NAME_None,
FText::Format(LOCTEXT("GenerateCodeProjectLabel", "Generate {0} Project"), ShortIDEName),
FText::Format(LOCTEXT("GenerateCodeProjectTooltip", "Generates your C++ code project in {0}."), ShortIDEName)
);
}
// @hack GDC: this should be moved somewhere else and be less hacky
ITargetPlatform* RunningTargetPlatform = GetTargetPlatformManager()->GetRunningTargetPlatform();
if (RunningTargetPlatform != nullptr)
{
const FName CookedPlatformName = *(RunningTargetPlatform->PlatformName() + TEXT("NoEditor"));
const FText CookedPlatformText = FText::FromString(RunningTargetPlatform->PlatformName());
FUIAction Action(
FExecuteAction::CreateStatic(&FMainFrameActionCallbacks::CookContent, CookedPlatformName),
FCanExecuteAction::CreateStatic(&FMainFrameActionCallbacks::CookContentCanExecute, CookedPlatformName)
);
MenuBuilder.AddMenuEntry(
FText::Format(LOCTEXT("CookContentForPlatform", "Cook Content for {0}"), CookedPlatformText),
FText::Format(LOCTEXT("CookContentForPlatformTooltip", "Cook your game content for debugging on the {0} platform"), CookedPlatformText),
FSlateIcon(),
Action
);
}
}
MenuBuilder.EndSection();
}
static void FillRecentFileAndExitMenuItems( FMenuBuilder& MenuBuilder )
{
MenuBuilder.BeginSection("FileRecentFiles");
{
if (GetDefault<UEditorStyleSettings>()->bShowProjectMenus && FMainFrameActionCallbacks::ProjectNames.Num() > 0)
{
MenuBuilder.AddSubMenu(
LOCTEXT("SwitchProjectSubMenu", "Recent Projects"),
LOCTEXT("SwitchProjectSubMenu_ToolTip", "Select a project to switch to"),
FNewMenuDelegate::CreateStatic(&FRecentProjectsMenu::MakeMenu), false, FSlateIcon(FEditorStyle::GetStyleSetName(), "MainFrame.RecentProjects")
);
}
}
MenuBuilder.EndSection();
#if !PLATFORM_MAC // Handled by app's menu in menu bar
MenuBuilder.AddMenuSeparator();
MenuBuilder.AddMenuEntry( FMainFrameCommands::Get().Exit, "Exit" );
#endif
}
};
FExtensibilityManager ExtensibilityManager;
ExtensibilityManager.AddExtender( UserExtender );
{
TSharedRef< FExtender > Extender( new FExtender() );
IMainFrameModule& MainFrameModule = FModuleManager::GetModuleChecked<IMainFrameModule>("MainFrame");
if (GetDefault<UEditorStyleSettings>()->bShowProjectMenus)
{
Extender->AddMenuExtension(
"FileLoadAndSave",
EExtensionHook::After,
MainFrameModule.GetMainFrameCommandBindings(),
FMenuExtensionDelegate::CreateStatic(&Local::FillProjectMenuItems));
}
Extender->AddMenuExtension(
"FileLoadAndSave",
EExtensionHook::After,
MainFrameModule.GetMainFrameCommandBindings(),
FMenuExtensionDelegate::CreateStatic( &Local::FillRecentFileAndExitMenuItems ) );
ExtensibilityManager.AddExtender( Extender );
}
TSharedRef< SWidget > MenuBarWidget = FMainMenu::MakeMainMenu( TabManager, ExtensibilityManager.GetAllExtenders().ToSharedRef() );
return MenuBarWidget;
}
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#undef LOCTEXT_NAMESPACE