Files
UnrealEngineUWP/Engine/Source/Editor/ContentBrowser/Private/AssetViewWidgets.cpp

1856 lines
54 KiB
C++
Raw Normal View History

// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
#include "AssetViewWidgets.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 "UObject/UnrealType.h"
#include "Widgets/SOverlay.h"
#include "Engine/GameViewportClient.h"
#include "SlateOptMacros.h"
#include "Framework/Application/SlateApplication.h"
#include "Widgets/Images/SImage.h"
#include "Materials/Material.h"
#include "ISourceControlProvider.h"
#include "ISourceControlModule.h"
#include "EditorFramework/AssetImportData.h"
#include "Engine/Texture2D.h"
#include "ARFilter.h"
#include "AssetRegistryModule.h"
#include "IAssetTools.h"
#include "AssetToolsModule.h"
#include "CollectionManagerTypes.h"
#include "ICollectionManager.h"
#include "CollectionManagerModule.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 "AssetViewTypes.h"
#include "SThumbnailEditModeTools.h"
#include "AutoReimport/AssetSourceFilenameCache.h"
#include "CollectionViewUtils.h"
#include "DragAndDrop/AssetDragDropOp.h"
#include "DragAndDrop/AssetPathDragDropOp.h"
#include "DragDropHandler.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 "Internationalization/BreakIterator.h"
#include "Widgets/Text/SInlineEditableTextBlock.h"
#include "Misc/EngineBuildSettings.h"
#define LOCTEXT_NAMESPACE "ContentBrowser"
///////////////////////////////
// FAssetViewModeUtils
///////////////////////////////
FReply FAssetViewModeUtils::OnViewModeKeyDown( const TSet< TSharedPtr<FAssetViewItem> >& SelectedItems, const FKeyEvent& InKeyEvent )
{
// All asset views use Ctrl-C to copy references to assets
if ( InKeyEvent.IsControlDown() && InKeyEvent.GetCharacter() == 'C' )
{
FAssetRegistryModule& AssetRegistryModule = FModuleManager::LoadModuleChecked<FAssetRegistryModule>(TEXT("AssetRegistry"));
TArray<FAssetData> SelectedAssets;
for ( auto ItemIt = SelectedItems.CreateConstIterator(); ItemIt; ++ItemIt)
{
const TSharedPtr<FAssetViewItem>& Item = *ItemIt;
if(Item.IsValid())
{
if(Item->GetType() == EAssetItemType::Folder)
{
// we need to recurse & copy references to all folder contents
FARFilter Filter;
Filter.PackagePaths.Add(*StaticCastSharedPtr<FAssetViewFolder>(Item)->FolderPath);
// Add assets found in the asset registry
AssetRegistryModule.Get().GetAssets(Filter, SelectedAssets);
}
else
{
SelectedAssets.Add(StaticCastSharedPtr<FAssetViewAsset>(Item)->Data);
}
}
}
ContentBrowserUtils::CopyAssetReferencesToClipboard(SelectedAssets);
return FReply::Handled();
}
return FReply::Unhandled();
}
///////////////////////////////
// FAssetViewModeUtils
///////////////////////////////
TSharedRef<SWidget> FAssetViewItemHelper::CreateListItemContents(SAssetListItem* const InListItem, const TSharedRef<SWidget>& InThumbnail, FName& OutItemShadowBorder)
{
return CreateListTileItemContents(InListItem, InThumbnail, OutItemShadowBorder);
}
TSharedRef<SWidget> FAssetViewItemHelper::CreateTileItemContents(SAssetTileItem* const InTileItem, const TSharedRef<SWidget>& InThumbnail, FName& OutItemShadowBorder)
{
return CreateListTileItemContents(InTileItem, InThumbnail, OutItemShadowBorder);
}
template <typename T>
TSharedRef<SWidget> FAssetViewItemHelper::CreateListTileItemContents(T* const InTileOrListItem, const TSharedRef<SWidget>& InThumbnail, FName& OutItemShadowBorder)
{
TSharedRef<SOverlay> ItemContentsOverlay = SNew(SOverlay);
if (InTileOrListItem->IsFolder())
{
OutItemShadowBorder = FName("NoBorder");
TSharedPtr<FAssetViewFolder> AssetFolderItem = StaticCastSharedPtr<FAssetViewFolder>(InTileOrListItem->AssetItem);
ECollectionShareType::Type CollectionFolderShareType = ECollectionShareType::CST_All;
if (AssetFolderItem->bCollectionFolder)
{
ContentBrowserUtils::IsCollectionPath(AssetFolderItem->FolderPath, nullptr, &CollectionFolderShareType);
}
const FSlateBrush* FolderBaseImage = AssetFolderItem->bDeveloperFolder
? FEditorStyle::GetBrush("ContentBrowser.ListViewDeveloperFolderIcon.Base")
: FEditorStyle::GetBrush("ContentBrowser.ListViewFolderIcon.Base");
const FSlateBrush* FolderTintImage = AssetFolderItem->bDeveloperFolder
? FEditorStyle::GetBrush("ContentBrowser.ListViewDeveloperFolderIcon.Mask")
: FEditorStyle::GetBrush("ContentBrowser.ListViewFolderIcon.Mask");
// Folder base
ItemContentsOverlay->AddSlot()
[
SNew(SImage)
.Image(FolderBaseImage)
.ColorAndOpacity(InTileOrListItem, &T::GetAssetColor)
];
if (AssetFolderItem->bCollectionFolder)
{
FLinearColor IconColor = FLinearColor::White;
switch(CollectionFolderShareType)
{
case ECollectionShareType::CST_Local:
IconColor = FColor(196, 15, 24);
break;
case ECollectionShareType::CST_Private:
IconColor = FColor(192, 196, 0);
break;
case ECollectionShareType::CST_Shared:
IconColor = FColor(0, 136, 0);
break;
default:
break;
}
auto GetCollectionIconBoxSize = [InTileOrListItem]() -> FOptionalSize
{
return FOptionalSize(InTileOrListItem->GetThumbnailBoxSize().Get() * 0.3f);
};
auto GetCollectionIconBrush = [=]() -> const FSlateBrush*
{
const TCHAR* IconSizeSuffix = (GetCollectionIconBoxSize().Get() <= 16.0f) ? TEXT(".Small") : TEXT(".Large");
return FEditorStyle::GetBrush(ECollectionShareType::GetIconStyleName(CollectionFolderShareType, IconSizeSuffix));
};
// Collection share type
ItemContentsOverlay->AddSlot()
.HAlign(HAlign_Center)
.VAlign(VAlign_Center)
[
SNew(SBox)
.WidthOverride_Lambda(GetCollectionIconBoxSize)
.HeightOverride_Lambda(GetCollectionIconBoxSize)
[
SNew(SImage)
.Image_Lambda(GetCollectionIconBrush)
.ColorAndOpacity(IconColor)
]
];
}
// Folder tint
ItemContentsOverlay->AddSlot()
[
SNew(SImage)
.Image(FolderTintImage)
];
}
else
{
OutItemShadowBorder = FName("ContentBrowser.ThumbnailShadow");
// The actual thumbnail
ItemContentsOverlay->AddSlot()
[
InThumbnail
];
// Source control state
ItemContentsOverlay->AddSlot()
.HAlign(HAlign_Right)
.VAlign(VAlign_Top)
[
SNew(SBox)
.WidthOverride(InTileOrListItem, &T::GetSCCImageSize)
.HeightOverride(InTileOrListItem, &T::GetSCCImageSize)
[
SNew(SImage)
.Image(InTileOrListItem, &T::GetSCCStateImage)
]
];
// Dirty state
ItemContentsOverlay->AddSlot()
.HAlign(HAlign_Left)
.VAlign(VAlign_Bottom)
[
SNew(SImage)
.Image(InTileOrListItem, &T::GetDirtyImage)
];
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3379190) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3342222 on 2017/03/10 by Nick.Darnell UMG - Adding a GetContent to the UContentWidget. Change 3342228 on 2017/03/10 by Nick.Darnell Project Launcher - Always consume mouse wheel vertically so it stops scrolling to the right. Change 3342310 on 2017/03/10 by Nick.Darnell UMG - Cleaning up some extra class references. Change 3343382 on 2017/03/13 by Jamie.Dale Applying optimization to FChunkManifestGenerator::ContainsMap Change 3343523 on 2017/03/13 by Mike.Fricker New details view option: "Show Hidden Properties while Playing" - Enabling this allows you to see every property on selected objects that belong to a simulating world, even non-visible and non-editable properties. Very useful for inspection and debugging. - Remember to change World Outliner to show you actors in the "Play World" if you want to select and inspect those objects first! - This setting is saved for your entire project, similar to "Show All Advanced" Change 3343573 on 2017/03/13 by Mike.Fricker New details view option: "Show Hidden Properties while Playing" (part 2) - Fixed missing include / unity issue Change 3343709 on 2017/03/13 by Jamie.Dale Some fixes for gathering cached dependency data - We no longer load dependency data that doesn't have the correct package name. - We no longer populate the dependency results when bGatherDependsData is false. Change 3343900 on 2017/03/13 by Alexis.Matte fix crash when creating too much LOD at import #jira UE-42785 Change 3344104 on 2017/03/13 by Alexis.Matte Add a boolean to the static mesh socket so we know if the socket was imported or created in UE4. This allow us to not impact editor socket when we re-import a fbx #jira UE-42736 Change 3344802 on 2017/03/14 by Michael.Dupuis #jira UE-42244 : added missing nullptr so render thread wont try to access global var when we're no longer in landscape mode Changed the sync method between graphic resource from render thread and game thread to prevent desync Change 3346061 on 2017/03/14 by Jamie.Dale Adding const& and && overloads of FText::Format Change 3346192 on 2017/03/14 by Arciel.Rekman Linux: fix VHACD to retain bincompat with the baseline (UE-42895). - It is now compiled against libc++ instead of libstdc++ in the toolchain. Change 3347083 on 2017/03/15 by Andrew.Rodham Fixed crash when changing anchors on a background blur widget Change 3347359 on 2017/03/15 by Michael.Dupuis #jira UE-38193: Added Rename, Delete, New Folder, Size Map, Show In Explorer for folder and asset in the path view and asset view Change 3347382 on 2017/03/15 by Michael.Dupuis missing include incremental Change 3347500 on 2017/03/15 by Alex.Delesky #jira UE-41231 - Selecting multiple text widgets in UMG will now allow you to set their value correctly, and the "Multiple Values" text will no longer be set in the widgets instead. Change 3347920 on 2017/03/15 by Jamie.Dale Fixing some places passing tooltips as FString rather than FText #jira UE-42603 Change 3347925 on 2017/03/15 by Jamie.Dale Re-saving some assets so their tooltips can be gathered #jira UE-42603 Change 3348788 on 2017/03/15 by Jamie.Dale Updated the Windows platform to use the newer Vista+ style browser dialogs, rather than the older XP style dialogs Change 3349187 on 2017/03/16 by Andrew.Rodham Sequencer: Added the ability to specify additional event receivers for level sequence actors - Such actors will receive events from event tracks Change 3349194 on 2017/03/16 by Andrew.Rodham Sequencer: Reset compiled templates on load in the editor, and ensure correct serialization of generation ledger - Resetting on load means that we guarantee up-to-date templates, even if underlying compilation logic changes. #jira UE-42198 #jira UE-40969 Change 3349210 on 2017/03/16 by Andrew.Rodham Sequencer: Event tracks can now be defined to trigger events at the start of evaluation, after objects are spawned, or at the end of evaluation Change 3349211 on 2017/03/16 by Andrew.Rodham Sequencer: Add ability to retrieve bound objects from blueprint Change 3349398 on 2017/03/16 by Nick.Darnell UMG - Fixing a flashing hierarchy view. Looks like assets continuing to stream in causing the object change notification to continue to fire, and the widget designer refreshed any time it happened. Now limit to only if widgets are changing. Change 3349420 on 2017/03/16 by Alex.Delesky #jira UE-40720 - Multiline editable text boxes can now be set to Read-Only. Change 3349548 on 2017/03/16 by Alexis.Matte Fbx importer, when importing a staticmesh with combine mesh option check and the fbx file contain some "MultiSub Material" the materialinstance are now always hook properly. Change 3349818 on 2017/03/16 by Cody.Albert Fixed constructor for FNavigationMetaData Change 3350047 on 2017/03/16 by Cody.Albert Removed unneeded check so that children actors are never orphaned when their parent is moved into a newly created folder in the world outliner Change 3350072 on 2017/03/16 by Arciel.Rekman ShaderCompiler: make sure strings are at least 4-byte aligned. - Can crash wcscpy() under Linux otherwise (reported by a licensee). Change 3350146 on 2017/03/16 by Arciel.Rekman Fix CodeLite project generation (UE-42921). - Reportedly causes a crash in CodeLite 10.x Change 3350235 on 2017/03/16 by Arciel.Rekman Fix memory leak in address symbolication on Linux. - Makes MallocProfiler work again. - Also add progress update in MallocProfiler since symbolication is still slow. Merging CL 3338764 from Fortnite to Dev-Editor. Change 3350382 on 2017/03/16 by Arciel.Rekman Linux: fix incorrect cast of rlimit in i686. Change 3350471 on 2017/03/16 by Jamie.Dale Enabling loc dashboard by default for new projects Change 3350516 on 2017/03/16 by Jamie.Dale Enabling content hot-reloading by default Change 3350582 on 2017/03/16 by Cody.Albert Corrected Widget Interaction Component to use current impact point instead of last impact point Change 3350945 on 2017/03/16 by Jamie.Dale Gave FConfigFile::FindOrAddSection API linkage Change 3351441 on 2017/03/17 by Michael.Dupuis #jira UE-42843: Fixed Transaction begin/end order issue happening with min slider passing max slider value Add support for multiple selection value display Change 3351558 on 2017/03/17 by Michael.Dupuis #jira UE-42845: Always refresh the detail panel to properly update for selection change, delete, etc. Change 3351657 on 2017/03/17 by Matt.Kuhlenschmidt Adding USD Third Party dependencies Change 3351665 on 2017/03/17 by Matt.Kuhlenschmidt Added experimental USD Importer Plugin This plugin supports basic static mesh importing and scene creation of actors using static meshes Change 3351682 on 2017/03/17 by Matt.Kuhlenschmidt Enabling USD importer in engine test project for automation tests Change 3351749 on 2017/03/17 by Alexis.Matte Make sure the selection proxy is off for the skeletal mesh component. UE4 use the selection outline instead #jira UE-41677 Change 3351831 on 2017/03/17 by Michael.Dupuis #jira UETOOL-1102: Added HSV controls to Color Grading Some look improvement for RGV/HSV Color Grading refactor Group Reset bug fix (relevant only to color grading) Change 3352041 on 2017/03/17 by Matt.Kuhlenschmidt Updated USD plugin whitelisting Change 3352093 on 2017/03/17 by Michael.Dupuis when FREEZERENDERING is called, stop the foliage culling too Change 3352211 on 2017/03/17 by Alexis.Matte Fix the physic asset missing skeleton warning #jira UE-43006 Change 3352336 on 2017/03/17 by Alexis.Matte We now allow a negative W value of the ScreenPoint vector in the ScreenToPixel function. In this case we simply reverse the W value to kept the manipulator direction on the good side. #jira UE-37458 Change 3352947 on 2017/03/17 by Phillip.Kavan #jira UE-42510 - Instanced static mesh transform edits are now reflected in the Blueprint editor's preview scene. Change summary: - Added IPropertyHandle::GetValueBaseAddress() (interface). - Modified IPropertyHandle::NotifyPostChange() to include EPropertyChangeType as an optional input. - Added FPropertyHandleBase::GetValueBaseAddress() (implementation). - Modified FPropertyHandleBase::NotifyPostChange() to include the optional input arg in the property change event. - Modified FPropertyHandleBase::CreatePropertyNameWidget() to clear the override text after temporarily replacing display name/tooltip text for the creation of the SPropertyNameWidget. This was done to allow for transactions to be named according to the property that's being modified. - Modified FMathStructProxyCustomization::OnValueCommitted() to only apply the input value while not interactively editing via spinbox as well as when not post-processing an undo/redo (which can trigger a focus loss). - Modified the FMathStructProxyCustomization::OnEndSliderMovement() delegate to include property handle and proxy value input parameters, as well as to call FlushValues() as part of the implementation. - Modified FlushValues() for each of FMatrixStructCustomization, FTransformStructCustomization and FQuatStructCustomization to explicitly handle both propagation and transaction processing. - Modified UInstancedStaticMeshComponent::UpdateInstanceTransform() to call Modify() prior to applying changes (so that the previous state is recorded when inside a transaction context). - Modified FInstanceStaticMeshSCSEditorCustomization::HandleViewportDrag() to propagate changes to all instances of the ISMC archetype. Known issues: - Using the spinbox to edit instanced mesh transform values in the Blueprint editor will not apply the change to instances in the level editor until after you release the mouse button (i.e. - it will not be shown as a "live" update). Change 3353678 on 2017/03/20 by Michael.Dupuis properly unfreeze the culling of foliage when toggling the freezerendering command Change 3353747 on 2017/03/20 by Matt.Kuhlenschmidt PR #3372: Git plugin: fix update status on directories hotfix (still) slightly broken in master (UE4.16) (Contributed by SRombauts) Change 3353749 on 2017/03/20 by Matt.Kuhlenschmidt PR #3373: Git Plugin: hotfix for regression off Visual Diffs with older version of Git in master (UE4.16) (Contributed by SRombauts) Change 3353754 on 2017/03/20 by Matt.Kuhlenschmidt PR #3390: Allow OBJ imports to change if materials and textures are also imported (Contributed by mmdanggg2) Change 3353909 on 2017/03/20 by Matt.Kuhlenschmidt Fixed actors showing thumbnails in details panel and made a few other tweeks to thumbnail displays in details panels - The color of the accepted type is now shown properly - All object based properties now have thumbnails on by default. Change 3353948 on 2017/03/20 by Nick.Darnell UMG - Updating the background blur widget's upgrade code to use the custom version, and handling older cases that were continuing to generate blur slots, even when already upgraded. Change 3354335 on 2017/03/20 by Nick.Darnell Paragon - Excluding Archetype objects from reporting references, which causes crashes in the fast template mode. Change 3354495 on 2017/03/20 by Nick.Darnell Core - Making it so order that outers are discovered does not matter, initializing the chain of outers if hasn't been created when instancing subobjects. Change 3354578 on 2017/03/20 by Nick.Darnell Slate - There's now a console variable option, Slate.VerifyHitTestVisibility (off by default) which enables additional visibility checks for widgets. Normally this isn't nessesary, but if you're changing the visibility of widgets during a frame, and several hit tests need to be performed that frame there's a chance that a button could be clicked twice in one frame. Enabling this mode will make all hit testing more expensive, so for now it's off by default, but available for licensees that need the extra testing. Change 3354737 on 2017/03/20 by Nick.Darnell Core - Adding a fix to Dev-Editor from that enables objects in the same package being requested to also be loaded. This came about during async streaming callbacks alerting that a requested class was done loading, but there were still other assets in the package 'not loaded' but were available, just needed post load called on them. Change 3355923 on 2017/03/21 by Yannick.Lange VR Editor: - Remove unnecessary cleanup functions. - Initialize with VR Mode and remove SetOwner function, since it shouldn't be possible to reset the VR Mode afterwards. Change 3355959 on 2017/03/21 by Yannick.Lange VR Editor: - Rename VREditorWorldInteraction to VREditorPlacement, to avoid confusion with ViewportWorldInteraction. VREditorPlacement will only handle placing objects from content browser in the VR Mode. - Removed SnapSelectedActorsToGround to VREditorMode. Change 3355965 on 2017/03/21 by Yannick.Lange VR Editor: Forgot to add files to previous submit 3355959. Change 3355977 on 2017/03/21 by Yannick.Lange VR Editor: Remove function to add a new extension with TSubclassOf<UEditorWorldExtension>. Change 3356017 on 2017/03/21 by Yannick.Lange VR Editor: - UI system check owner VRMode. - UI system fix check on VRMode on shutdown. Change 3356028 on 2017/03/21 by Nick.Darnell Slate - SButton now correctly releases mouse capture even if it becomes disabled while pressed, but before 'click' has been fired. #jira UE-42777 Change 3356071 on 2017/03/21 by Yannick.Lange VR Editor: Copy of change 3353663. - Fix having to press once on the landscape to see the visuals for landscape editing. - Fix when sculpting/painting the position wouldn't update. - Fix inverted action for brushes while holding down shift or modifier on motioncontroller. - Cleanup FLandscapeToolInteractorPosition. - Change from 3353663: Use TStrokeClass::UseContinuousApply and TimeSinceLastInteractorMove to decide when to apply ToolStroke on tick. Change 3356180 on 2017/03/21 by Michael.Dupuis Added ShowFlag Foliage Occlusion Bounds Fixed non initialized variable Expose changing Min Occlusion Bounds instead of assuming 6 #rn none Change 3356347 on 2017/03/21 by Nick.Darnell UMG - Introducing a faster CreateWidget. When cooking, the widget compiler now generates a widget template/archetype that is stored in the same package as the generated blueprint class. During compiling we generate a nearly fully initialized widget tree including all sub userwidgets and their trees, hookup all member variables, initialize named slots, setup any animations...etc. This nearly fully constructed widget can be instanced using it as an archetype in the NewObject call, and does not have to use the correspondingly slow StaticDuplicateObject path. There are restrictions on this method, part of the compiling step for widgets now inspects if the instancing would be successful, or if there would be GLEO references after instancing because a user forgot to setup Instanced on a subobject property. Luckily that should be few and far between, all UVisuals (Widgets & Slots) are now DefaultToInstanced, which takes care of the overwhelming cases that demand the instanced flag. Especially given the bulk of cases using BindWidget in native code. UMG - Removing a lot of deprecated functions from 4.8 on UUserWidget. Change 3356357 on 2017/03/21 by Nick.Darnell Build - Fixing some IWYU issues on the incremental build. Change 3356461 on 2017/03/21 by Nick.Darnell Build - Fixing linux build errors. Change 3356468 on 2017/03/21 by Jamie.Dale STextPropertyEditableTextBox now handles empty texts correctly Change 3356916 on 2017/03/21 by Matt.Kuhlenschmidt Fixed a crash when a material render proxy on a preview node is deleted when it is in flight on the render thread #jira UE-40556 Change 3357033 on 2017/03/21 by Alexis.Matte Fix crash when importing file with import commandlet Make sure path are combine properly to avoid crash Add some missing pointer check Make sure the asset are save when there is no source control #jira UE-42334 Change 3357176 on 2017/03/21 by Alex.Delesky #jira UE-42445 - TMaps now support editing the values of structs that act as map keys. TMaps with struct keys will now show the types of their elements in the details panel as well, and structs will now also display numbers next to set elements. Change 3357197 on 2017/03/21 by Alex.Delesky #jira none - Fixing build issue for TMap key struct change. Change 3357205 on 2017/03/21 by Michael.Dupuis Forgot to reset min granularity to 6 from testing Change 3357340 on 2017/03/21 by Arciel.Rekman Mark FMallocAnsi (standard libc malloc) thread-safe on Linux. Change 3357413 on 2017/03/21 by matt.kuhlenschmidt Added '/Game/Effects/Fort_Effects/Materials/Smoke/M_Main_Smoke_Puff.M_Main_Smoke_Puff' to collection 'MattKTest' Upgraded collection 'MattKTest' (was version 1, now version 2) Change 3357505 on 2017/03/21 by Alexis.Matte Fix to avoid changing the CDO of FbxAssetImportData. The UI was saving the Config which was saving the CDO. But already serialized data will be reload badly if the CDO change since we serialize only the diff. #jira UE-42947 Change 3357825 on 2017/03/21 by Arciel.Rekman Clean up the large thread pool on exit. - Seems like the destruction was missed in the original CL 2785131 (12/1/15). - Fixes problems when threads were allocated in memory that is being cleaned up in another place on exit. Change 3358086 on 2017/03/22 by Yannick.Lange VR Editor: - Fix gizmo scaling down when dragging the world. - Fix gizmo scaling down when dragging rotation handle. Change 3358175 on 2017/03/22 by Andrew.Rodham Sequencer: Made ALevelSequenceActor::AdditionalEventReceivers advanced display Change 3358367 on 2017/03/22 by tim.gautier Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters Change 3358457 on 2017/03/22 by Yannick.Lange VR Editor: Deleting unused UI assets. Change 3358801 on 2017/03/22 by Matt.Kuhlenschmidt Guard against crash if the level editor is shut down when the object system has already been shut down #jira UE-35605 Change 3358897 on 2017/03/22 by matt.barnes Checking in WIP test content for UEQATC-1635 (UMG Navigation) Change 3358976 on 2017/03/22 by Alex.Delesky #jira none - Fixing an issue where ItemPropertyNode could potentially dereference a null property Change 3358987 on 2017/03/22 by Yannick.Lange VR Editor: Fix warning: Can't find file for asset '/Engine/VREditor/UI/VRButtonBackground' while loading ../../../Engine/Content/VREditor/Devices/Vive/VivePreControllerMaterial.uasset. Change 3359067 on 2017/03/22 by Yannick.Lange VR Editor: Fix Radial Menu remains on controller after exiting VR Preview #jira UE-42885 Change 3359179 on 2017/03/22 by Matt.Kuhlenschmidt Fixed "Multiple Values" in Body Setup when single bone has multiple bodies #jira UE-41546 Change 3359626 on 2017/03/22 by Arciel.Rekman Linux: pool OS allocations. - Add a TMemoryPool and TMemoryPoolArray classes that can be used with any type of OS allocator functions. - Add ability to bypass CachedOSPageAllocator for given sizes. Also, corrected the condition on AllocImpl to match one on FreeImpl. - Switch Linux to pool mmap()/munmap() by default (helps 32-bit Linux and also speeds up 64-bit one), except 64-bit servers. - Add a test to TestPAL to check performance and thread safety. - Misc. fixes. Change 3359989 on 2017/03/23 by Andrew.Rodham Sequencer: Binding overrides improvements - Added the ability to override spawnable bindings - Added the ability to override bindings in sub sequences - Deprecated "Get Sequence Bindings" node in favor of "Get Sequence Binding", which is more robust, and provides a better UI/UX for selecting single bindings #jira UE-42470 Change 3360369 on 2017/03/23 by Alexis.Matte Fix the staticmesh conversion from UE4 4.13 to earlier UE4 versions #jira UE-42731 Change 3360556 on 2017/03/23 by Andrew.Rodham Sequencer: Added drag/drop support for binding overrides - You can now drag and drop sequencer object binding nodes into blueprint graphs (to create 'Get Sequence Binding' nodes), and onto binding overrides specified on level sequence actors. Change 3360618 on 2017/03/23 by Arciel.Rekman Make Binned2 work on Mac. - Game/server will use Binned2 by default. Change 3360838 on 2017/03/23 by Nick.Darnell CommonUI - Making the SingleMaterialStyleMID property transient. It had been serialized mistakenly onto several widgets when it appears the intent is to dynamically allocate it upon demand. Change 3360841 on 2017/03/23 by Nick.Darnell UMG - Updating the editor to use DuplicateAndInitializeFromWidgetTree, so that Initialize is properly called when duplicating sub widget trees. Change 3362561 on 2017/03/24 by Matt.Kuhlenschmidt Fixed text outlines being cropped at large sizes #jira UE-42647 Change 3362565 on 2017/03/24 by Matt.Kuhlenschmidt Added automation test for font outlines Change 3362567 on 2017/03/24 by Matt.Kuhlenschmidt Resaved this file to fix 0 engine version warnings Change 3362582 on 2017/03/24 by Yannick.Lange VR Editor: - Fix log warnings when teleporting. - Fix undo/redo when using teleport scaling. - Improved teleport scaling and push/pull input. #jira UE-43214 Change 3362631 on 2017/03/24 by Jamie.Dale Split the monolithic culture concept in UE4 UE4 has historically only supported the concept of a single monolithic "culture" that applied to both text localization and internationalization, as well as all asset localization. Typically the "culture" was set to the "locale" of the OS, however that could be undesirable or incorrect on platforms (such as newer versions of Windows) that have a distinct concept of "language" (for localization) and "locale" (for internationalization). This change splits the concept of "culture" into "language" and "locale", and also adds the concept of "asset groups". The language is now used to work out which localization we should use, and the locale is used to control how numbers/dates/times/etc are formatted within our internationalization library. Asset groups expand on the language used by asset localization and allow you to create a group of asset classes that can be assigned a different culture than the main game language. A typical use-case of this would be creating an "audio" group that could, for example, be set to Japanese while the rest of the game runs in English. If your game doesn't care about the distinction between language and locale, and doesn't need to use asset groups, then you're able to continue to use "culture" as you always have. If, however, you do care about those things, then you'll likely want to avoid using the "culture" directly (as it's now a very aggressive setting that overrides all others), and instead favor using language/locale (games will typically treat these as the same) and asset groups as separate concepts (both in settings, and in your in-game UI). The language or locale for a game can be controlled by settings within the "Internationalization" section of your configs (this would typically be set in your GameUserSettings config, in the same way that "culture" works), eg) [Internationalization] language=fr locale=fr The asset groups for a game can be controlled by settings within the "Internationalization.AssetGroupClasses" and "Internationalization.AssetGroupCultures" sections of your configs (the asset group class definition would typically be set in your DefaultGame config, and the cultures the groups use would typically be set in your GameUserSettings config), eg) [Internationalization.AssetGroupClasses] +Audio=SoundWave +Audio=DialogueWave [Internationalization.AssetGroupCultures] +Audio=ja #jira UE-38418 #jira UE-43014 Change 3362798 on 2017/03/24 by Nick.Darnell UMG - Putting the finishing touches on the hardware cursor system. Can now load them from blueprints, and there are options for setting them up in the project settings. UMG - Deprecating the old properties for software widget cursors. They've been moved into a map that can handle any of the mouse cursors as the enum key, which was always the intent/desire but maps couldn't be used as UProperties then. Change 3362805 on 2017/03/24 by Jamie.Dale PR #3397: Allow empty source to override display string (Contributed by jorgenpt) Change 3363039 on 2017/03/24 by Jamie.Dale Use the pre-scaled font height where possible to avoid an extra multiply Change 3363188 on 2017/03/24 by Joe.Graf Added support for -iterate for content plugins that require path remapping during cook/packaging #CodeReview: matt.kuhlenschmidt #rb: matt.kuhlenschmidt Change 3363355 on 2017/03/24 by Nick.Darnell UMG - Removing the CookAdditionalFiles function in UserInterfaceSettings. Change 3363672 on 2017/03/24 by Matt.Kuhlenschmidt Material thumbnails now respect used particle system sprites flag and show a quad insead of a sphere by default. For this change I added the ability to have per asset type override for the default thumbnail shape and I added a way to reset thumbnails to default. All existinging particle system materials that have not had a custom thumbnail will have to be reloaded and resaved for this to work #jira UE-42410 Change 3363699 on 2017/03/24 by Mike.Fricker VR Editor: Improved extensibility (for mesh editor) - This was merged from CL 3352612 and re-opened for edit before commit - All mesh editor changes were stripped before merging Change 3363784 on 2017/03/24 by Matt.Barnes Adding content for tests following UEQATC-3548 Change 3363872 on 2017/03/24 by Arciel.Rekman Linux: require user to setup clang/clang++ for building hlslcc. - Earlier we tried to handle most common scenarios since libhlslcc needed to be built during the setup. Now that we supply a prebuilt version we don't need to be as user friendly, especially given that the attempts to second guess the compiler started to look complicated. Change 3364089 on 2017/03/24 by Matt.Kuhlenschmidt Fix CIS Change 3364381 on 2017/03/24 by JeanMichel.Dignard UV Packing optim - Use horizontal segments instead of checking texel by texel to fit source chart in layout. - Skip a couple of rasterize by flipping either the X texels or the Y texels when possible. - Keep the best chart raster so that we don't need to reraster when adding the chart to the layout. - Added a lightmap UV version in StaticMesh so that we don't invalidate the lighting cache. Only use the new lightmap UV generation when going through UStaticMesh::Build which invalidates the lighting. Change 3364587 on 2017/03/24 by Arciel.Rekman Fix ordered comparison warning from clang 4.0. Change 3364596 on 2017/03/24 by Arciel.Rekman Linux: fix editor being stuck (hack). - Rebuilt hlslcc in Debug. Change 3364863 on 2017/03/25 by Max.Chen Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3364864 on 2017/03/25 by Max.Chen Sequencer: Integrating fix from licensee to ensure FVirtualTrackArea::HitTestSection checks the row of the section Change 3364865 on 2017/03/25 by Max.Chen Cine Camera: Default post process depth of field method to CircleDOF and use that setting in UpdateCameraLens. #jira UE-40621 Change 3364866 on 2017/03/25 by Max.Chen GitHub #3183: Conversion to base class is inaccessible. Change 3364869 on 2017/03/25 by Max.Chen Sequencer: Changed the time snapping interval in the toolbar ui so that it no longer additionally updates the sequencer setting. The setting is only used to initialize the time snapping interval of the level sequence. Added translate keys with ctrl and left-right arrows. #jira UE-41009 #jira UE-41210 Change 3364870 on 2017/03/25 by Max.Chen Sequencer: Added translate keys with ctrl and left-right arrows. #jira UE-41210 Change 3364871 on 2017/03/25 by Max.Chen Sequencer: Add level sequence actor customization to open sequencer from the details panel. For matinee parity. #jira UE-41459 Change 3364879 on 2017/03/25 by Max.Chen Sequencer: Duplicate shot should put the duplicate on the next available row, keeping the start/end times the same. #jira UE-41289 Change 3364880 on 2017/03/25 by Max.Chen Sequencer: Opening the API for MovieSceneAudio-related classes along with some minor functionality additions: - Adding _API specifiers to MovieSceneAudioTrack, MovieSceneAudioSection, and FAudioTrackEditor so they can be subclassed in other modules. - Made GetSoundDuration function in MovieSceneAudioTrack.cpp a member function so it's functionaliy could be reused by subclasses. - Adding ability to specify delegates for OnQueueSubtitles, OnAudioFinished, and OnAudioPlaybackPercent in a MovieSceneAudioSection, and have them automatically assigned to any AudioComponents that are played by the MovieSceneAudioTemplate Change 3364884 on 2017/03/25 by Max.Chen Sequencer fbx import - Removed the PostRotation compensation as it was setuped for 3ds max. - On import, add a rotation to camera and light animation keys like we do on export. - Merge the component local transform with the ActorNode transform when exporting only one component that isn't the root component in fbx since we're not creating child nodes in that case. #jira UE-34692 Change 3364885 on 2017/03/25 by Max.Chen Sequence Recorder: Fix crash when clearing properties to record. #jira UE-41873 Change 3364886 on 2017/03/25 by Max.Chen Sequencer: Add error when attempting to add a circularly dependent level sequence #jira UE-22358 Change 3364890 on 2017/03/26 by Max.Chen Sequencer: Added ability to specify a 'notify' function to property instance bindings - When specified, the (parameterless) function will be called after a property is set Change 3364891 on 2017/03/26 by Max.Chen Sequencer: Various fixes to thumbnails - Fixed alpha blending being used when presenting the full screen quad for thumbnails Change 3364892 on 2017/03/26 by Max.Chen Sequencer: PreRoll and PostRoll is now exposed at the section level, for all sections - For the majority of sections this will be unimplemented, but it will allow for some tracks to set up their data ahead of time Change 3364896 on 2017/03/26 by Max.Chen Sequencer: Add segment flags to equality operator for movie scene evaluation segments - This prevents them from being accumulated into adjacent segments of the same index and forced time, but differing flags Change 3364897 on 2017/03/26 by Max.Chen Sequencer: Fixed "Evaluate in preroll" and "Evaluate in Postroll" options - Pre and postroll flags now come through on compiled segments, so the previous manual logic for sub sections is obsolete; we can just use the compiled segment data directly. Change 3364898 on 2017/03/26 by Max.Chen Sequencer: Moved track options to be accessible on all nodes, and operate on all selected tracks Change 3364902 on 2017/03/26 by Max.Chen Sequencer: Ensure evaluation flags are considered when compiling segments from external sequences - This ensures that preroll regions in sub sequences are correctly evaluated when their parent section has preroll - Changed high pass blending to always allow preroll Change 3364903 on 2017/03/26 by Max.Chen Engine: Moved proxy mesh transform update out of camera view computation code - GetCameraView can happen as part of end of frame updates, which will assert if any changes of transform happen during its processing Change 3364908 on 2017/03/26 by Max.Chen Sequencer: Added visualization of pre and postroll on sections Change 3364909 on 2017/03/26 by Max.Chen Sequencer: Prevent MovieSceneCompiler from removing preroll segments Change 3364910 on 2017/03/26 by Max.Chen Sequencer: MediaPlayer PreRoll/PostRoll fix - Handle PreRoll/PostRoll on sub scenes that have a start offset Change 3364922 on 2017/03/26 by Max.Chen Sequencer: Add check for valid property before dereferencing. #jira UE-40951 Change 3364923 on 2017/03/26 by Max.Chen Sequencer: Fix MovieScene preroll so that it seeks to the start correct frame before the preroll. Change 3364924 on 2017/03/26 by Max.Chen Sequencer - change default behavior for pre/post roll evaluation - MovieSceneTracks are NOT evaluated by default Change 3364925 on 2017/03/26 by Max.Chen Sequencer: Shot track rows now consider pre and post roll when being compiled Change 3364926 on 2017/03/26 by Max.Chen Sequencer: Added the ability to define shared execution tokens, identifyable with a unique identifier, and sortable based on a sort order (<=0: before standard tokens, >0: after other tokens) Change 3364927 on 2017/03/26 by Max.Chen Sequencer: Added the ability to selectively restore state for specific anim type IDs for a given object - This allows us to specifically restore one particular type of animation for a given object (ie, transform, skeletal animation control, or motion blur) Change 3364928 on 2017/03/26 by Max.Chen Sequencer: Fixed sub-sub tracks not being present in master sequences - In order to correctly handle preroll in inner-inner sequences, we need to have access to those tracks when compiling intermediate sub sections. By caching off all the inner templates, we can have access to these tracks to check whether they want to be evaluated in pre/post roll in the master sequence Change 3364937 on 2017/03/26 by Max.Chen Sequencer: Update cine camera component debug focus plane on tick, rather than in GetCameraView #jira UE-41332 Change 3364938 on 2017/03/26 by Max.Chen Sequencer: Fix crash inserting a level sequence with an invalid shot. #jira UE-41481 Change 3364940 on 2017/03/26 by Max.Chen Sequencer: Made handling of pre and post roll more consistent between explicit section pre/post roll and pre/post roll inherited from an outer sub section Change 3364942 on 2017/03/26 by Max.Chen Movie Scene Capture: Move EDL generation to setup instead of close to ensure it gets written out when capturing as a separate process. #jira UE-41703 Change 3364943 on 2017/03/26 by Max.Chen Sequencer: Prevent capturing movies in editor while a PIE session is running #jira UE-41399 Change 3364944 on 2017/03/26 by Max.Chen CIS fixes Change 3364951 on 2017/03/26 by Max.Chen Sequencer: Fix autokey not setting a keyframe for slate color with specified color. #jira UE-41645 Change 3364952 on 2017/03/26 by Max.Chen Sequencer: Level sequence frame snapshots now take account of fixed-frame interval offsets, and overlapping shot sections on the same row #jira UE-41684 Change 3364953 on 2017/03/26 by Max.Chen Sequencer: Fix edl so that it doesn't write out when a shot is out of range. Also fixed not writing the EDL with the correct frame rate when exporting from the track. Reworked the cmx EDL so that its encoded in the same edit time space, including a blank slug at the beginning of the edit. #jira UE-41925 Change 3364954 on 2017/03/26 by Max.Chen Sequencer - Allow animating parameters on cascade effect components which aren't owned by an AEmitter. Change 3364955 on 2017/03/26 by Max.Chen Sequencer: Fixed sequencer anim instance not being used in the case where one was requested, but a different anim instance was already set This fixes an issue when rendering in seaprate process, animations that were set up to use the sequencer instance would be controlled using montage animation instead. Change 3364963 on 2017/03/26 by Max.Chen Sequencer: Fix filtering to include child nodes. #jira UE-42068 Change 3364964 on 2017/03/26 by Max.Chen Sequencer: Enable UseCustomStartFrame and UseCustomEndFrame when rendering a single shot from the menu. #jira UE-42021 Change 3364965 on 2017/03/26 by Max.Chen Sequencer: Set the fade color in the track display Change 3364966 on 2017/03/26 by Max.Chen Sequencer: Show actor attached to label in attach section. Change 3364967 on 2017/03/26 by Max.Chen Sequencer: Fix static analysis warnings Change 3364968 on 2017/03/26 by Max.Chen Sequencer: Fix crash on converting to spawnable. The previous implementation purported to allow null objects to set up spawnable defaults but it actually needed to compare the spawned object to the supported type. This new mechanism now allows the spawner to indicate that it accepts null objects and doesn't crash. #jira UE-42069 Change 3364969 on 2017/03/26 by Max.Chen Sequencer: Fixed crash caused by holding onto stale properties through a raw ptr #jira UE-42072 Change 3364977 on 2017/03/26 by Max.Chen Sequencer: Convert FLinearColor to FColor for fade. #jira UE-41990 Change 3364978 on 2017/03/26 by Max.Chen Sequencer: Limit GetAllSections to the sections that actually correspond to the track #jira UE-42167 Change 3364979 on 2017/03/26 by Max.Chen Sequencer: Filter root nodes too #jira UE-42068 Change 3364980 on 2017/03/26 by Max.Chen Sequencer: Filter relevant material parameters #jira UE-40712 Change 3364982 on 2017/03/26 by Max.Chen Sequencer: Remove audio range bounds which clamps to the section bounds (needed for evaluating in pre and post roll) Change 3364983 on 2017/03/26 by Max.Chen Sequencer: Add socket name to attach track section. Change 3364984 on 2017/03/26 by Max.Chen Sequencer: Fix sub track node deletion so that all the sub tracks aren't deleted, only the row being requested. #jira UE-40955 Change 3364988 on 2017/03/26 by Max.Chen Sequencer: Invalidate expired objects when blueprints are compiled. Fix actor references now handles sections that need to have their guids updated (ie. attach tracks). Change 3364994 on 2017/03/26 by Max.Chen Sequencer: Audio waveforms now show peak samples with smoothed RMS in the center - Audio row heights are now also resizable by dragging on the bottom end of the track lane in the track area view Change 3364995 on 2017/03/26 by Max.Chen UMG: Fix crash on undo #jira UE-42210 Change 3365000 on 2017/03/26 by Max.Chen Sequencer: Fix crash from GetCurrentValue. Change 3365001 on 2017/03/26 by Max.Chen Sequencer: Split "Snap to the Dragged Key" option into two options, pressed key and dragged key. #jira UE-42382 Change 3365002 on 2017/03/26 by Max.Chen Sequencer: Downgraded check to ensure for FMovieSceneEvalTemplateBase::GetScriptStructImpl() Change 3365003 on 2017/03/26 by Max.Chen Sequencer: Fixed section template script struct - Because the cpp is not parsed by UHT, the empty template had its parent struct, rather than its own - We now just return null, and handle empty segments correctly in the segment remapper as part of the track compilation Change 3365013 on 2017/03/26 by Max.Chen Sequencer: Added data validation on compiled template loads, and extra guards against misuse of movie scene types Change 3365014 on 2017/03/26 by Max.Chen Sequencer: Sequencer now re-evaluates when starting PIE or Simulate - This can be disabled by disabling "Bind Sequencer to PIE" and "Bind Sequencer to Simulate" in PIE advanced settings Change 3365015 on 2017/03/26 by Max.Chen Sequencer: Fix edl files so that they don't write out empty range shots Change 3365017 on 2017/03/26 by Max.Chen Sequencer: Set max tick rate when in game. #jira UE-41078 Change 3365018 on 2017/03/26 by Max.Chen Sequencer: When finishing a scrub, playback status is now correctly set to stopped rather than stepping - This fixes a hack that was previously in place from the old PostTickRenderFixup that caused it to run that step after scrubbing bad finished. This is no longer necessary, and actually breaks clicking to set the scrub position, as it now means that we step across the entire range between the previous and current time. Change 3365022 on 2017/03/26 by Max.Chen Sequencer: Insert shot now creates a shot at the current time and puts it on the next available row. #jira UE-41480, UE-27699 Change 3365023 on 2017/03/26 by Max.Chen Sequencer: Add loop selection range. If there is no selection range, loop mode is restricted to loop or no loop. #jira UE-42285 Change 3365029 on 2017/03/26 by Max.Chen Sequencer: Add hotkeys to set the selection range to the next and previous shot (page up, page down). Also, added hotkey to set the playback range to all the shots (end) Change 3365030 on 2017/03/26 by Max.Chen Sequencer: Fix particle system restore state so that it gets the proper initial active state of the particle system. #jira UE-42861, UE-42859 Change 3365031 on 2017/03/26 by Max.Chen Sequencer: Snap time when changing time snapping intervals. #jira UE-42590 Change 3365032 on 2017/03/26 by Max.Chen Sequencer: Add When Finished state to sections. By default, sections now restore state. #jira UE-41991, UE-31569 Change 3365033 on 2017/03/26 by Max.Chen #jira UE-42028 "DialogueWave playback calls OnQueueSubtitles multiple times" Only queue subtitles once per wave instance playback Change 3365041 on 2017/03/26 by Max.Chen Sequencer: Subscene hierarchical bias Tracks can now be prioritized based on their subscene hierarhical bias value. Higher bias values take precedence. #jira UE-42078 Change 3365042 on 2017/03/26 by Max.Chen Sequencer: Generic paste menu for master (root) tracks. Change 3365043 on 2017/03/26 by Max.Chen Sequencer: Hierarchical bias for level visibility track #jira UE-43024 Change 3365044 on 2017/03/26 by Max.Chen Sequencer: Prevent throttling on editing keys/sections. Change 3365045 on 2017/03/26 by Max.Chen Sequencer: Set sequencer audio components bIsUISound to false so that they don't continue playing when the game is paused. #jira UE-39391 Change 3365046 on 2017/03/26 by Max.Chen Sequencer: Add missing BindLevelEditorCommands() Change 3365049 on 2017/03/26 by Max.Chen Sequencer: Set tick prerequites for spawnables when they are spawned. #jira UE-43009 Change 3365050 on 2017/03/26 by Max.Chen Sequencer: Jump to Start and End of playback shortcuts. Rewind renamed to Jump to Start. Shortcut - up arrow. Jump to End Shortcut - ctrl up arrow. #jira UE-43224 Change 3365051 on 2017/03/26 by Max.Chen Sequencer: Add last range to playback Change 3365057 on 2017/03/26 by Max.Chen Sequencer: Fix master sequence subscene generation times. Change 3365058 on 2017/03/26 by Max.Chen Sequencer: Fix paste so that it doesn't paste both onto object nodes and master tracks. Change 3365059 on 2017/03/26 by Max.Chen Sequencer: Fix crash pasting audio track. Change 3365060 on 2017/03/26 by Max.Chen Sequencer: Cache player fade state so that restore state will return the values to the pre animated state. #jira UE-43313 Change 3365061 on 2017/03/26 by Max.Chen Sequencer: Filter hidden functions. This fixes a bug where the field of view property for a cinematic camera appears to be animatable. It should be hidden just like it is in the property editor. #jira UE-41461 Change 3365065 on 2017/03/26 by Max.Chen Sequencer: Support component hierarchies when drawing animation paths #jira UE-39500 Change 3365066 on 2017/03/26 by Max.Chen Sequencer: Refine pause behaviour in sequencer to always evaluate the next frame - This ensures that we get a full frame's worth of evaluation so that the paused frame is of a good quality (and avoids us evaluating a tiny range) Change 3365075 on 2017/03/26 by Max.Chen Sequencer: Fix add shot not setting next row. Change 3365076 on 2017/03/26 by Max.Chen Sequencer: Export MovieSceneTrackEditor #jira UE-41641 Change 3365472 on 2017/03/27 by Yannick.Lange VR Editor landscape. Back out changelist 3356071 with new proper fixes. CL 3356071 introduced another bug and it wasn't correct because of removing FLandscapeToolInteractorPosition. This changelist fixes the same and additional bugs for VREditor Landscape mode. - Fix when sculpting/painting the position wouldn't update. - Fix inverted action for brushes while holding down shift or modifier on motioncontroller. - Fix VREditor Landscape Texture Painting does not paint continuously - Fix having to press once on the landscape to see the visuals for landscape editing. - Removed Interactor parameter from BeginTool. #jira UE-42780, UE-42779 Change 3365497 on 2017/03/27 by Matt.Kuhlenschmidt Fix texture importing when an FBX file incorrectly reports absolute path as relative. First we try absolute, then we try fbx reported relative, then we try relative to parent FBX file. Change 3365498 on 2017/03/27 by Matt.Kuhlenschmidt Fix attempting to load a package in FBX scene import when the import path is empty. This greatly reduces FBX scene import time Change 3365504 on 2017/03/27 by Yannick.Lange VR Editor landscape fix ensure in when starting to paint/sculpt. Mousemove on tool should only be called when the tool is actually active, not when hovering. Change 3365551 on 2017/03/27 by Matt.Kuhlenschmidt PR #3425: Added Scrollbar customization to SComboBox (Contributed by Altrue) #jira UE-43338 Change 3365580 on 2017/03/27 by Matt.Kuhlenschmidt PR #3409: Add support for per-Category filtering in Output Log (Contributed by thagberg) Change 3365672 on 2017/03/27 by Andrew.Rodham Sequencer: Preanimated state producers can now produce null tokens - Doing so implies no preanimated state should be saved Change 3365791 on 2017/03/27 by Andrew.Rodham Sequencer: Added Material Parameter Collection track Change 3365806 on 2017/03/27 by Max.Chen Sequencer: Add option to instance sub sequences. #jira UE-43307 Change 3365822 on 2017/03/27 by Matt.Kuhlenschmidt Subdue the output log font color a bit Change 3365846 on 2017/03/27 by Jamie.Dale Added package redirection on load/find Change 3365852 on 2017/03/27 by Jamie.Dale Adding a way to mark a package as no longer missing Change 3365896 on 2017/03/27 by Jamie.Dale Adding GlobalNotification to Slate This is the guts of the GlobalEditorNotification, so it can be used by code that doesn't link to UnrealEd. Change 3365900 on 2017/03/27 by Jamie.Dale Prevent the default cooked sandbox from trying to read non-cooked assets Change 3366550 on 2017/03/27 by Max.Chen Sequencer: Fix case Change 3367301 on 2017/03/28 by Andrew.Rodham Tests: Added test actor with a variety of properties for testing purposes Change 3367303 on 2017/03/28 by Andrew.Rodham Tests: Enabled ActorSequenceEditor plugin in EngineTest project Change 3367304 on 2017/03/28 by Andrew.Rodham Tests: Added several functional testing maps for sequencer - SequencerTest_Properties - tests animating various property types - SequencerTest_Events - tests basic event triggering functionality (including additional event receivers and event ordering) - SequencerTest_BindingOverrides - tests overriding possessable and spawnable bindings, along with bindings in sub sequences - SequencerTest_ActorSequence - tests basic actor sequence functionality Change 3367465 on 2017/03/28 by Max.Chen Sequencer: Set Bind Sequencer to PIE off by default, Bind Sequencer to Simulate remains on by default. Change 3367515 on 2017/03/28 by Matt.Kuhlenschmidt Guard against visual studio accessor crash #jira UE-43368 Change 3368118 on 2017/03/28 by Alexis.Matte Fix the staticmesh conversion from 4.13. There was a error in the LOD loop we where not remapping the LOD 0. #jira UE-42731 Change 3368485 on 2017/03/28 by Alex.Delesky #jira UE-42207 - Updated SVN Binaries for MacOSX 64-bit: - Subversion 1.9.4 -> 1.9.5 - OpenSSL 1.0.2h -> 1.0.2k - BerkeleyDB 5.3.15 -> 6.2.23 - Java 8u101 -> 8u121 - Sqlite 3.13.0 -> 3.17.0 - Serf 1.3.8 -> 1.3.9 - Swig 3.0.10 -> 3.0.12 - ZLib 1.2.9 -> 1.2.11 Change 3368495 on 2017/03/28 by Alex.Delesky #jira UE-42207 - Updated SVN Binaries for Windows 64-bit: - Subversion 1.9.4 -> 1.9.5 - OpenSSL 1.0.2h -> 1.0.2k - BerkeleyDB 5.3.15 -> 6.2.23 - Java 8u101 -> 8u121 - Sqlite 3.13.0 -> 3.17.0 - Serf 1.3.8 -> 1.3.9 - Swig 3.0.10 -> 3.0.12 - ZLib 1.2.9 -> 1.2.11 Change 3368501 on 2017/03/28 by Alex.Delesky #jira UE-42207 - SVN Build instructions for Windows and Mac 64-bit libraries, and license files for Mac libraries Change 3368782 on 2017/03/28 by Nick.Darnell UMG - Improving some logging for fast widget creation. Change 3368826 on 2017/03/28 by Nick.Darnell Slate - Slate Application now maintains seperate tracking for each pointer being utilized for drag drop, so now multiple fingers on multiple widgets can now simultaneously be attempting a drag, however once one of them becomes successful, we clear all state of all other tracking since only one Drag Drop operation is possible at a time. Slate - bFoldTick is now removed from the codebase, we haven't supported the other (non-folded) code path for awhile, so there was no point in maintaining the switch. Slate - Users have noticed issues where the cursor does not appear when changing visibility (through toggling the way the cursor appears). This was rooted in how the OS requested cursor changes, WM_SETCURSOR on Windows only asks for new cursors when the mouse moves, but often cursors change just because mouse capture changes. So now the path has been centralized in Slate Tick to only handle the cursor changes in one place, and several places that need to refresh the cursor state, now set a flag to handle it on next tick. #jira UE-40486 Change 3368917 on 2017/03/28 by Arciel.Rekman Linux: allow building with clang 4.0. Change 3369074 on 2017/03/28 by Nick.Darnell UMG - Fixing some spelling on the hardware cursor tip. UMG - Changed some checks to ensure now that users can input the wrong data from the editor. Adding some clamping to the editor interface so that users are not tempted to enter incorrect hotspot ranges for their cursors. #jira UE-43419 #jira UE-43425 Change 3369137 on 2017/03/28 by Max.Chen Sequencer: Add given master track sets the outer to the movie scene. Change 3369360 on 2017/03/29 by Andrew.Rodham Sequencer: Reconciled 3349194 and 3365041 with animphys merge Change 3369410 on 2017/03/29 by Alexis.Matte Fix the select filename in the FileDialog "Desktop window platform" #jira UE-43319 Change 3369475 on 2017/03/29 by Nick.Darnell PR #3413: UE-37710: Proper scaling of WebBrowserViewport (Contributed by projectgheist) Modified - you can't use the clip rect to decide on how large you should be. #jira UE-37710 Change 3369775 on 2017/03/29 by Max.Chen ControlRig: Fix crash on exit. #jira UE-43411 Change 3370466 on 2017/03/29 by Nick.Darnell AsyncLoading - Adding USoundBase to the set of CDOs that have a particular fixed boot order. StreamableManager - Only showing the duplicate load error in debug builds, it's not a real error. #jira UE-43409 Change 3370570 on 2017/03/29 by Nick.Darnell Slate - Fixing a bug with ZOrder being discarded on the SOverlay Slot. #jira UE-43431 Change 3370644 on 2017/03/29 by Andrew.Rodham Temporarily disabling sequencer functional test "Event Position" Change 3370713 on 2017/03/29 by Nick.Darnell PR #3399: UE-42831: Anchor text ignores scale (Contributed by projectgheist) #jira UE-43156 #jira UE-42831 Change 3371243 on 2017/03/30 by Arciel.Rekman Linux: scale OS allocation pool to match memory size. - Number of distinct VMAs (contiguous virtual memory areas, i.e. mappings done via mmap()) is rather low (~64k) and we can run out of VMAs earlier than we will run into available memory. Larger pool makes this less likely. Change 3371262 on 2017/03/30 by Arciel.Rekman Linux: fix custom present. - PR #3383 contributed by yaakuro. Change 3371301 on 2017/03/30 by Arciel.Rekman Linux: fix copying to a non-existent directory during Setup. Change 3371307 on 2017/03/30 by Andrew.Rodham Editor: Added "Resave All" functionality to content browser folders Change 3371364 on 2017/03/30 by Andrew.Rodham Sequencer: Level streaming improvements - Tick prerequisites are now set up when any object binding is resolved, not at the start of the sequence. This unifies code between spawnables and possessables, and allows tick prerequisites to still be set up when levels are streamed in - Actor references are no longer resolved when a PIEInstance is specified on the package, and it cannot be fixed up to a different ptr than the original. This stops us resolving actors from one world into another. - Fixed level visibility request getting cleared when the cumulative total was 0 (it should only do this if there are no requests left) #jira UE-43225 Change 3371365 on 2017/03/30 by Andrew.Rodham Tests: Sequencer level streaming tests Change 3371493 on 2017/03/30 by Nick.Darnell PR #3408: UE-19980: Added FCanExecuteAction to prevent keyboard shortcut. (Contributed by projectgheist) Change 3371524 on 2017/03/30 by Nick.Darnell PR #2938: Minor UMG code fixups (Contributed by projectgheist), accepted most of the changes. Change 3371545 on 2017/03/30 by Nick.Darnell UMG - Fixing some minor issues with WidgetComponents not properly limiting input depending on what is supported with reguard to hardware input. Change 3371576 on 2017/03/30 by Matt.Kuhlenschmidt PR #3433: Fix for the Standalone D3D Slate Shader using the wrong value for the. (Contributed by megasjay) Change 3371590 on 2017/03/30 by Nick.Darnell UMG - Fixing widget alignment in the viewport when using the widget component with screen space, with an aspect ratio lock on the player's camera. The widgets should now show up in the right locations. Change 3371625 on 2017/03/30 by Alexis.Matte Fix the merge tool material id assignment #jira UE-43246 Change 3371666 on 2017/03/30 by Nick.Darnell UMG - Reducing logging, don't need to tell everyone all the time we're using the fast widget path. Change 3371687 on 2017/03/30 by Arciel.Rekman Linux: switch to new managed filehandles. Change 3371778 on 2017/03/30 by Matt.Kuhlenschmidt Fixed the animation to play property on skeletal meshes being too small to read anything #jira UE-43327 Change 3372709 on 2017/03/30 by Matt.Kuhlenschmidt Made slate loading widget / movie play back more thread safe by eliminating Slate applicaiton or the main window from being ticked directly on another thread. We now have a separate virtual window for ticking and painting the loading screen widgets in isolation Change 3372757 on 2017/03/30 by Nick.Darnell Paragon - Fixing cases where people were using PostLoad() where really it should have done when the widget was constructed or created. This is a side effect of the FastWidget creation path 'PostLoad()' is not called on newly constructed widgets, though it did before because part of duplicating the WidgetTree, required serialization, which would have called it. Change 3372777 on 2017/03/30 by Nick.Darnell Fixing fast widget template cooking so that it does the same logic as Initialize did, centralizing the code to find the first widgetblueprintclass. Change 3372949 on 2017/03/30 by Nick.Darnell UMG - Fixing some cooking crashes for the super class. Change 3373139 on 2017/03/30 by Jeff.Farris Added TimingPolicy option to WidgetComponent, so widgets can optionally tick in game time rather than real time. (Copy of CL 3279699 from Robo Recall to Dev-Editor) Change 3373235 on 2017/03/30 by Nick.Darnell Fixing a cooking issue, accidentally removed code that was properly loading some needed assets. Change 3373266 on 2017/03/30 by Matt.Kuhlenschmidt Made GetMoviePlayer thread safe. Simply accessing GetMoviePlayer is safe now as is checking IsLoadingFinished. However, most of the functions on movie player are only safe from the game thread! Change 3374026 on 2017/03/31 by Andrew.Rodham Sequencer: Moved evaluation group registration to IMovieSceneModule #jira UE-43420 Change 3374060 on 2017/03/31 by Yannick.Lange VR Editor: Collision on motion controllers in simulate. Change 3374185 on 2017/03/31 by Nick.Darnell Attempting to fix the build. Change 3374232 on 2017/03/31 by Max.Chen Sequencer: Fix audio not playing in editor #jira UE-43514 Change 3374322 on 2017/03/31 by Nick.Darnell UMG - SafeZone widget now has comments, and useful tips. Using the debugging console commands now trigger the broadcast that will cause controls like the SSafeZone widget to resample the display metrics to learn the new safezone ratio. Change 3374424 on 2017/03/31 by Max.Chen Updated test content so that the door animation is now set to "Keep State" for the When Finished property. #jira UE-43519 Change 3374447 on 2017/03/31 by Max.Chen Sequencer: Notify streaming system prior to camera cuts By default, this does nothing. Users will need to enable the preroll section of camera cuts for the streaming system to activate prior to cutting to cameras. #jira UE-42406 Change 3374571 on 2017/03/31 by Andrew.Rodham Sequencer: Unified global and object-bound pre animated state, added InitializeObjectForAnimation method to state producers Change 3374578 on 2017/03/31 by Andrew.Rodham Sequencer: Added unit tests for pre-animated state Change 3374592 on 2017/03/31 by Max.Chen Color Customization: Set curve color names. #jira UE-43405 Change 3374596 on 2017/03/31 by Andrew.Rodham Corrected documentation comment Change 3374671 on 2017/03/31 by Matt.Kuhlenschmidt Fix movie scene audio track not compiling outside of editor Change 3374689 on 2017/03/31 by Matt.Kuhlenschmidt Remove the slate thread masquerading as the game thread in IsInGameThread Change 3374730 on 2017/03/31 by Max.Chen Sequencer: Add check for null loaded level. Change 3374732 on 2017/03/31 by Max.Chen Sequencer: Remove null tracks on postload. Change 3374737 on 2017/03/31 by tim.gautier - Updated UMG_Optimization: Adjusted Variable names to resolve compile errors due to Widget Components and Variables sharing names (cannot be done with new compile improvements) - Set Level Blueprint for TM-UMG back to AllPalettes Change 3374987 on 2017/03/31 by Nick.Darnell UMG - Introducing a way to inform the widgets more information about the designer. There's now a DesignerChanged event sent to all design time widgets letting them know things like the current screen size and DPI scale. UMG - The SafeZone widget will now show the correct safe zone amount if you use the safezone command line options, which are now documented in the comment for the USafeZone class. Change 3375599 on 2017/03/31 by Max.Chen Cine Camera: Update camera debug plane when property changes, rather rely soley on tick. This fixes a bug where sliding the value on the details panel doesn't update the debug plane in the viewport simultaneously. #jira UE-43543 Change 3375601 on 2017/03/31 by Arciel.Rekman Linux: switch to v9 cross-toolchain. Change 3375856 on 2017/04/01 by Andrew.Rodham Sequencer: Fixed 'formal parameter with requested alignment of 16 won't be aligned' Change 3375870 on 2017/04/01 by Andrew.Rodham Sequencer: Fixed explicit template instantiation ocurring before the complete definition of type's members - This resulted such members not being instantiated (and hence exported) when compiled with clang Change 3376114 on 2017/04/02 by Arciel.Rekman Linux: make source code accessor aware of clang 3.9 and 4.0. Change 3376138 on 2017/04/02 by Arciel.Rekman Linux: add clang to fedora deps (UE-42123). - PR #3273 submitted by cpyarger. Change 3376159 on 2017/04/02 by Arciel.Rekman Linux: some support for building on Debian Sid or Stretch (UE-35841). - Basd on PR #2790 by haimat. Change 3376163 on 2017/04/02 by Arciel.Rekman Linux: install latest clang on Arch (UE-42341). - This undoes PR #1905. - PR #2897 by SiebenCorgie. - PR #3302 by awesomeness872. - PR #3341 by patrickelectric. Change 3376167 on 2017/04/02 by Arciel.Rekman Add FreeBSD mem info (courtesy support for the out of tree build) (UE-42994). - PR #3378 by mdcasey. Change 3376168 on 2017/04/02 by Arciel.Rekman Linux: fixed VHACD Makefile on a case sensitive fs (UE-42905). - PR #3381 by slonopotamus. Change 3376177 on 2017/04/02 by Arciel.Rekman SlateDlg: case-insensitive comparison of filter extensions (UE-39477). - PR #3019 by aknarts. Change 3376178 on 2017/04/02 by Arciel.Rekman WebRTC: only x86_64 version exists for Linux. Change 3376245 on 2017/04/03 by Andrew.Rodham Sequencer: Re-enabled event order test Change 3376339 on 2017/04/03 by Matt.Kuhlenschmidt Fix crash during loading movie playback on DX12 due to not ever cleaning up old resources #jira UE-27026 Change 3376481 on 2017/04/03 by Alex.Delesky #jira UE-43495 - TMaps will now support customized key properties correctly. Change 3376741 on 2017/04/03 by Matt.Kuhlenschmidt Fix crash flushing font cache when loading a movie. This is no longer save on the slate movie thread #jira UE-43567 Change 3376763 on 2017/04/03 by Shaun.Kime Material Reroute nodes do not work for Texture Object Parameters as they return a base output type. Modified logic to now support this node type. #jira UE-43521 Change 3376836 on 2017/04/03 by Jamie.Dale Fixed text format history being clobbered by reference collection #jira UE-37513 Change 3376852 on 2017/04/03 by Nick.Darnell Paragon - Found a case where a user had marked a BindWidget property as Transient which prevents serializing the property binding now for widget fast mode. #jira UE-43564 Change 3377207 on 2017/04/03 by Jamie.Dale Desktop platform directory pickers are expected to return absolute paths File pickers return relative paths though, and we should make this consistent at some point. #jira UE-43588 Change 3377214 on 2017/04/03 by Matt.Kuhlenschmidt Fix movie player shutdown crash in non-editor builds #jira UE-43577 Change 3377299 on 2017/04/03 by Michael.Dupuis #jira UE-43586 : properties should be non transactional #jira UE-43559 Change 3378333 on 2017/04/04 by Michael.Dupuis #jira UE-43585 #jira UE-43586 Revert back to purple color Change 3378633 on 2017/04/04 by Matt.Kuhlenschmidt Resaved this asset to avoid zero engine version warnings Change 3378958 on 2017/04/04 by Nick.Darnell Automation - Fixing the race condition to finish compiling shaders on screenshots for UI. [CL 3379345 by Matt Kuhlenschmidt in Main branch]
2017-04-04 15:35:21 -04:00
// Tools for thumbnail edit mode
ItemContentsOverlay->AddSlot()
[
SNew(SThumbnailEditModeTools, InTileOrListItem->AssetThumbnail)
.SmallView(!InTileOrListItem->CanDisplayPrimitiveTools())
.Visibility(InTileOrListItem, &T::GetThumbnailEditModeUIVisibility)
];
}
return ItemContentsOverlay;
}
///////////////////////////////
// Asset view item tool tip
///////////////////////////////
class SAssetViewItemToolTip : public SToolTip
{
public:
SLATE_BEGIN_ARGS(SAssetViewItemToolTip)
: _AssetViewItem()
{ }
SLATE_ARGUMENT(TSharedPtr<SAssetViewItem>, AssetViewItem)
SLATE_END_ARGS()
void Construct(const FArguments& InArgs)
{
AssetViewItem = InArgs._AssetViewItem;
SToolTip::Construct(
SToolTip::FArguments()
.TextMargin(1.0f)
.BorderImage(FEditorStyle::GetBrush("ContentBrowser.TileViewTooltip.ToolTipBorder"))
);
}
// IToolTip interface
virtual bool IsEmpty() const override
{
return !AssetViewItem.IsValid();
}
virtual void OnOpening() override
{
TSharedPtr<SAssetViewItem> AssetViewItemPin = AssetViewItem.Pin();
if (AssetViewItemPin.IsValid())
{
SetContentWidget(AssetViewItemPin->CreateToolTipWidget());
}
}
virtual void OnClosed() override
{
SetContentWidget(SNullWidget::NullWidget);
}
private:
TWeakPtr<SAssetViewItem> AssetViewItem;
};
///////////////////////////////
// Asset view modes
///////////////////////////////
FReply SAssetTileView::OnKeyDown( const FGeometry& InGeometry, const FKeyEvent& InKeyEvent )
{
FReply Reply = FAssetViewModeUtils::OnViewModeKeyDown(SelectedItems, InKeyEvent);
if ( Reply.IsEventHandled() )
{
return Reply;
}
else
{
return STileView<TSharedPtr<FAssetViewItem>>::OnKeyDown(InGeometry, InKeyEvent);
}
}
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 2912736) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2912513 on 2016/03/16 by David.Ratti attempted cook fix #rb none #tests compile Change 2912456 on 2016/03/16 by Zak.Middleton #ue4 - Move Replay client interpolation mode check to OnRegister(), out of TickComponent() so we don't check it constantly. #rb John.Pollard #tests Replays and MultiPIE vs AI Change 2912386 on 2016/03/16 by Ben.Marsh BuildGraph: Add quotes around custom build node lists, so we can support node names with spaces. Change 2912378 on 2016/03/16 by Ben.Marsh BuildGraph: Fix format of custom build arguments when running with buildgraph. Change 2912318 on 2016/03/16 by Marcus.Wassmer Fix mallocleakdetection false positives, and hash collision data corruption. #rb none #test leak finding on goldenpath Change 2912242 on 2016/03/16 by Lukasz.Furman CIS fix #rb none #tests none Change 2912239 on 2016/03/16 by Ben.Marsh UBT: Include the project "Build" folder in the generated project files. It's pretty common to want to edit configuration data that's stored there. #rb none #tests generated project files using UGS after making change Change 2912211 on 2016/03/16 by Ben.Marsh BuildFarm: Allow disabling the local DDC by setting the DDC override environment variable to "None". Testing performance of just using shared DDC for builders. #rb none #codereview Wes.Hunt #tests none Change 2912196 on 2016/03/16 by Mieszko.Zielinski Added a missing #pragma once to GameplayDebuggerCompat.h #Orion #rb Lukasz.Furman #test none Change 2912165 on 2016/03/16 by Lukasz.Furman new gameplay debugger and some replication fixes (disabled by default) uncommment debugger's setup line in FOrionGameModule::StartupModule to enable #orion #rb none #tests yes, a lot. #codereview Mieszko.Zielinski Change 2912065 on 2016/03/16 by Jason.Bestimt [AUTOMERGE] #ORION_MAIN - Copy of DevUI (POST MERGE) @ CL 2912016 #RB:none #Tests:none #CodeReview: matt.schembari -------- Integrated using branch //Orion/Main_to_//Orion/Dev-General of change#2912060 by Jason.Bestimt on 2016/03/16 15:32:56. Change 2912045 on 2016/03/16 by David.Ratti Add support for gameplay cues retrieiving the ability or gameplay effect level of the thing that instigated them. Also added level requirement settings in the addition particle system options in gameplay cues #rb DanY #tests PIE Change 2912030 on 2016/03/16 by Alex.Fennell Merging //Portal/Dev-LibCurl_update/Engine/Source/Runtime/Online/... to //Orion/Dev-General/Engine/Source/Runtime/Online/... support for cookies across curl easy handles in libcurl #TESTS: cookie support confirmed by using the http test targetting google.com #RB: david.nikdel #codereview: david.nikdel, jason.bestimt Change 2911870 on 2016/03/16 by Laurent.Delayen - Added FBranchingPointNotifyPayload used in AnimNotify and AnimNotifyState notifications. - FBranchingPointNotifyPayload includes MontageInstance InstanceID to uniquely identify which Montage it came from. - New notifications are backwards compatible with old. - Added bIsNativeBranchingPoint flag to notify classes to force them into branching points. #rb martin.wilson, frank.gigliotti #tests Kuro VS Rampage abilities in networked PIE Change 2911763 on 2016/03/16 by Nick.Atamas Prevents a re-entrancy crash caused by potentially complex thumbnail generators. In general, we should not be doing heavy lifting in the asset browser until the user has released their mouse. This is especially true when a user is clicking on the content browser tab to bring it to front for the first time. This is probably a good change regardless of the re-entrancy issue. #rb none #test Editor does not crash. #codereview Matt.Kuhlenschmidt Change 2911631 on 2016/03/16 by Dmitry.Rekman Fix AvgPing perfcounter being occasionally NaN (FORT-20523) - Prevent division by zero. #rb none [CL 2917701 by Andrew Grant in Main branch]
2016-03-21 21:11:39 -04:00
void SAssetTileView::Tick(const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime)
{
// Regreshing an asset view is an intensive task. Do not do this while a user
// is dragging arround content for maximum responsiveness.
// Also prevents a re-entrancy crash caused by potentially complex thumbnail generators.
if (!FSlateApplication::Get().IsDragDropping())
{
STileView<TSharedPtr<FAssetViewItem>>::Tick(AllottedGeometry, InCurrentTime, InDeltaTime);
}
}
FReply SAssetListView::OnKeyDown(const FGeometry& InGeometry, const FKeyEvent& InKeyEvent)
{
FReply Reply = FAssetViewModeUtils::OnViewModeKeyDown(SelectedItems, InKeyEvent);
if ( Reply.IsEventHandled() )
{
return Reply;
}
else
{
return SListView<TSharedPtr<FAssetViewItem>>::OnKeyDown(InGeometry, InKeyEvent);
}
}
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 2912736) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2912513 on 2016/03/16 by David.Ratti attempted cook fix #rb none #tests compile Change 2912456 on 2016/03/16 by Zak.Middleton #ue4 - Move Replay client interpolation mode check to OnRegister(), out of TickComponent() so we don't check it constantly. #rb John.Pollard #tests Replays and MultiPIE vs AI Change 2912386 on 2016/03/16 by Ben.Marsh BuildGraph: Add quotes around custom build node lists, so we can support node names with spaces. Change 2912378 on 2016/03/16 by Ben.Marsh BuildGraph: Fix format of custom build arguments when running with buildgraph. Change 2912318 on 2016/03/16 by Marcus.Wassmer Fix mallocleakdetection false positives, and hash collision data corruption. #rb none #test leak finding on goldenpath Change 2912242 on 2016/03/16 by Lukasz.Furman CIS fix #rb none #tests none Change 2912239 on 2016/03/16 by Ben.Marsh UBT: Include the project "Build" folder in the generated project files. It's pretty common to want to edit configuration data that's stored there. #rb none #tests generated project files using UGS after making change Change 2912211 on 2016/03/16 by Ben.Marsh BuildFarm: Allow disabling the local DDC by setting the DDC override environment variable to "None". Testing performance of just using shared DDC for builders. #rb none #codereview Wes.Hunt #tests none Change 2912196 on 2016/03/16 by Mieszko.Zielinski Added a missing #pragma once to GameplayDebuggerCompat.h #Orion #rb Lukasz.Furman #test none Change 2912165 on 2016/03/16 by Lukasz.Furman new gameplay debugger and some replication fixes (disabled by default) uncommment debugger's setup line in FOrionGameModule::StartupModule to enable #orion #rb none #tests yes, a lot. #codereview Mieszko.Zielinski Change 2912065 on 2016/03/16 by Jason.Bestimt [AUTOMERGE] #ORION_MAIN - Copy of DevUI (POST MERGE) @ CL 2912016 #RB:none #Tests:none #CodeReview: matt.schembari -------- Integrated using branch //Orion/Main_to_//Orion/Dev-General of change#2912060 by Jason.Bestimt on 2016/03/16 15:32:56. Change 2912045 on 2016/03/16 by David.Ratti Add support for gameplay cues retrieiving the ability or gameplay effect level of the thing that instigated them. Also added level requirement settings in the addition particle system options in gameplay cues #rb DanY #tests PIE Change 2912030 on 2016/03/16 by Alex.Fennell Merging //Portal/Dev-LibCurl_update/Engine/Source/Runtime/Online/... to //Orion/Dev-General/Engine/Source/Runtime/Online/... support for cookies across curl easy handles in libcurl #TESTS: cookie support confirmed by using the http test targetting google.com #RB: david.nikdel #codereview: david.nikdel, jason.bestimt Change 2911870 on 2016/03/16 by Laurent.Delayen - Added FBranchingPointNotifyPayload used in AnimNotify and AnimNotifyState notifications. - FBranchingPointNotifyPayload includes MontageInstance InstanceID to uniquely identify which Montage it came from. - New notifications are backwards compatible with old. - Added bIsNativeBranchingPoint flag to notify classes to force them into branching points. #rb martin.wilson, frank.gigliotti #tests Kuro VS Rampage abilities in networked PIE Change 2911763 on 2016/03/16 by Nick.Atamas Prevents a re-entrancy crash caused by potentially complex thumbnail generators. In general, we should not be doing heavy lifting in the asset browser until the user has released their mouse. This is especially true when a user is clicking on the content browser tab to bring it to front for the first time. This is probably a good change regardless of the re-entrancy issue. #rb none #test Editor does not crash. #codereview Matt.Kuhlenschmidt Change 2911631 on 2016/03/16 by Dmitry.Rekman Fix AvgPing perfcounter being occasionally NaN (FORT-20523) - Prevent division by zero. #rb none [CL 2917701 by Andrew Grant in Main branch]
2016-03-21 21:11:39 -04:00
void SAssetListView::Tick(const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime)
{
// Regreshing an asset view is an intensive task. Do not do this while a user
// is dragging arround content for maximum responsiveness.
// Also prevents a re-entrancy crash caused by potentially complex thumbnail generators.
if (!FSlateApplication::Get().IsDragDropping())
{
SListView<TSharedPtr<FAssetViewItem>>::Tick(AllottedGeometry, InCurrentTime, InDeltaTime);
}
}
FReply SAssetColumnView::OnKeyDown(const FGeometry& InGeometry, const FKeyEvent& InKeyEvent)
{
FReply Reply = FAssetViewModeUtils::OnViewModeKeyDown(SelectedItems, InKeyEvent);
if ( Reply.IsEventHandled() )
{
return Reply;
}
else
{
return SListView<TSharedPtr<FAssetViewItem>>::OnKeyDown(InGeometry, InKeyEvent);
}
}
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 2912736) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2912513 on 2016/03/16 by David.Ratti attempted cook fix #rb none #tests compile Change 2912456 on 2016/03/16 by Zak.Middleton #ue4 - Move Replay client interpolation mode check to OnRegister(), out of TickComponent() so we don't check it constantly. #rb John.Pollard #tests Replays and MultiPIE vs AI Change 2912386 on 2016/03/16 by Ben.Marsh BuildGraph: Add quotes around custom build node lists, so we can support node names with spaces. Change 2912378 on 2016/03/16 by Ben.Marsh BuildGraph: Fix format of custom build arguments when running with buildgraph. Change 2912318 on 2016/03/16 by Marcus.Wassmer Fix mallocleakdetection false positives, and hash collision data corruption. #rb none #test leak finding on goldenpath Change 2912242 on 2016/03/16 by Lukasz.Furman CIS fix #rb none #tests none Change 2912239 on 2016/03/16 by Ben.Marsh UBT: Include the project "Build" folder in the generated project files. It's pretty common to want to edit configuration data that's stored there. #rb none #tests generated project files using UGS after making change Change 2912211 on 2016/03/16 by Ben.Marsh BuildFarm: Allow disabling the local DDC by setting the DDC override environment variable to "None". Testing performance of just using shared DDC for builders. #rb none #codereview Wes.Hunt #tests none Change 2912196 on 2016/03/16 by Mieszko.Zielinski Added a missing #pragma once to GameplayDebuggerCompat.h #Orion #rb Lukasz.Furman #test none Change 2912165 on 2016/03/16 by Lukasz.Furman new gameplay debugger and some replication fixes (disabled by default) uncommment debugger's setup line in FOrionGameModule::StartupModule to enable #orion #rb none #tests yes, a lot. #codereview Mieszko.Zielinski Change 2912065 on 2016/03/16 by Jason.Bestimt [AUTOMERGE] #ORION_MAIN - Copy of DevUI (POST MERGE) @ CL 2912016 #RB:none #Tests:none #CodeReview: matt.schembari -------- Integrated using branch //Orion/Main_to_//Orion/Dev-General of change#2912060 by Jason.Bestimt on 2016/03/16 15:32:56. Change 2912045 on 2016/03/16 by David.Ratti Add support for gameplay cues retrieiving the ability or gameplay effect level of the thing that instigated them. Also added level requirement settings in the addition particle system options in gameplay cues #rb DanY #tests PIE Change 2912030 on 2016/03/16 by Alex.Fennell Merging //Portal/Dev-LibCurl_update/Engine/Source/Runtime/Online/... to //Orion/Dev-General/Engine/Source/Runtime/Online/... support for cookies across curl easy handles in libcurl #TESTS: cookie support confirmed by using the http test targetting google.com #RB: david.nikdel #codereview: david.nikdel, jason.bestimt Change 2911870 on 2016/03/16 by Laurent.Delayen - Added FBranchingPointNotifyPayload used in AnimNotify and AnimNotifyState notifications. - FBranchingPointNotifyPayload includes MontageInstance InstanceID to uniquely identify which Montage it came from. - New notifications are backwards compatible with old. - Added bIsNativeBranchingPoint flag to notify classes to force them into branching points. #rb martin.wilson, frank.gigliotti #tests Kuro VS Rampage abilities in networked PIE Change 2911763 on 2016/03/16 by Nick.Atamas Prevents a re-entrancy crash caused by potentially complex thumbnail generators. In general, we should not be doing heavy lifting in the asset browser until the user has released their mouse. This is especially true when a user is clicking on the content browser tab to bring it to front for the first time. This is probably a good change regardless of the re-entrancy issue. #rb none #test Editor does not crash. #codereview Matt.Kuhlenschmidt Change 2911631 on 2016/03/16 by Dmitry.Rekman Fix AvgPing perfcounter being occasionally NaN (FORT-20523) - Prevent division by zero. #rb none [CL 2917701 by Andrew Grant in Main branch]
2016-03-21 21:11:39 -04:00
void SAssetColumnView::Tick(const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime)
{
// Regreshing an asset view is an intensive task. Do not do this while a user
// is dragging arround content for maximum responsiveness.
// Also prevents a re-entrancy crash caused by potentially complex thumbnail generators.
if (!FSlateApplication::Get().IsDragDropping())
{
return SListView<TSharedPtr<FAssetViewItem>>::Tick(AllottedGeometry, InCurrentTime, InDeltaTime);
}
}
///////////////////////////////
// SAssetViewItem
///////////////////////////////
SAssetViewItem::~SAssetViewItem()
{
if ( AssetItem.IsValid() )
{
AssetItem->OnAssetDataChanged.RemoveAll( this );
}
OnItemDestroyed.ExecuteIfBound( AssetItem );
SetForceMipLevelsToBeResident(false);
}
void SAssetViewItem::Construct( const FArguments& InArgs )
{
AssetItem = InArgs._AssetItem;
OnRenameBegin = InArgs._OnRenameBegin;
OnRenameCommit = InArgs._OnRenameCommit;
OnVerifyRenameCommit = InArgs._OnVerifyRenameCommit;
OnItemDestroyed = InArgs._OnItemDestroyed;
ShouldAllowToolTip = InArgs._ShouldAllowToolTip;
ThumbnailEditMode = InArgs._ThumbnailEditMode;
HighlightText = InArgs._HighlightText;
OnAssetsDragDropped = InArgs._OnAssetsDragDropped;
OnPathsDragDropped = InArgs._OnPathsDragDropped;
OnFilesDragDropped = InArgs._OnFilesDragDropped;
OnGetCustomAssetToolTip = InArgs._OnGetCustomAssetToolTip;
OnVisualizeAssetToolTip = InArgs._OnVisualizeAssetToolTip;
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
OnAssetToolTipClosing = InArgs._OnAssetToolTipClosing;
bDraggedOver = false;
bPackageDirty = false;
OnAssetDataChanged();
AssetItem->OnAssetDataChanged.AddSP(this, &SAssetViewItem::OnAssetDataChanged);
AssetDirtyBrush = FEditorStyle::GetBrush("ContentBrowser.ContentDirty");
SCCStateBrush = nullptr;
// Set our tooltip - this will refresh each time it's opened to make sure it's up-to-date
SetToolTip(SNew(SAssetViewItemToolTip).AssetViewItem(SharedThis(this)));
SourceControlStateDelay = 0.0f;
bSourceControlStateRequested = false;
ISourceControlModule::Get().RegisterProviderChanged(FSourceControlProviderChanged::FDelegate::CreateSP(this, &SAssetViewItem::HandleSourceControlProviderChanged));
SourceControlStateChangedDelegateHandle = ISourceControlModule::Get().GetProvider().RegisterSourceControlStateChanged_Handle(FSourceControlStateChanged::FDelegate::CreateSP(this, &SAssetViewItem::HandleSourceControlStateChanged));
// Source control state may have already been cached, make sure the control is in sync with
// cached state as the delegate is not going to be invoked again until source control state
// changes. This will be necessary any time the widget is destroyed and recreated after source
// control state has been cached; for instance when the widget is killed via FWidgetGenerator::OnEndGenerationPass
// or a view is refreshed due to user filtering/navigating):
HandleSourceControlStateChanged();
}
void SAssetViewItem::Tick( const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime )
{
const float PrevSizeX = LastGeometry.Size.X;
LastGeometry = AllottedGeometry;
// Set cached wrap text width based on new "LastGeometry" value.
// We set this only when changed because binding a delegate to text wrapping attributes is expensive
if( PrevSizeX != AllottedGeometry.Size.X && InlineRenameWidget.IsValid() )
{
InlineRenameWidget->SetWrapTextAt( GetNameTextWrapWidth() );
}
UpdatePackageDirtyState();
UpdateSourceControlState((float)InDeltaTime);
}
Slate: Refactored core Slate implementation into SlateCore module in preparation for UMG. Other Updates: - The WidgetReflector is now in its own module as well. It will be converted to a plug-in later. - The Public API of both Slate and SlateCore has largely been reorganized for better discoverabilty. More cleanup work is needed. - Added a lot of missing API documentation and fixed existing ones. More and better documentation is needed. - Removed dead code, fixed a couple things I stubled upon, and conformed to coding guidelines (NULL vs nullptr, line breaks, etc.) Upgrade Notes: - The Slate Remote Server is currently disabled - will be re-enabled shortly! - If your module previously had a module dependency to 'Slate', it now also needs a PrivateModuleDependency to 'SlateCore' in its Build.cs file. - If your module exposes in any of its Public header files types that are now declared in SlateCore, it needs a PublicModuleDependency to 'SlateCore' - The ToolTip property type on SWidget has changed from SToolTip to IToolTip; change local variables to TSharedPtr<IToolTip> instead of TSharedPtr<SToolTip> where needed - IToolTip is not a widget. If you need access to the actual widget that represents the tool tip, use IToolTip::AsWidget(); If you need access to the tool tip's content, use IToolTip::GetContentWidget() Troubleshooting: - After syncing to this changelist you may have to clean your /Engine/Intermediate/Build/ directory and rebuild your entire project - If in your project you are getting linker errors for unresolved types that are now declared in SlateCore, you may be missing a dependency to 'SlateCore' - If in the Engine code you are getting linker errors for unresolved types that are now declared in SlateCore, you may need to rebuild the entire Engine [CL 2057118 by Max Preussner in Main branch]
2014-04-26 15:07:24 -04:00
TSharedPtr<IToolTip> SAssetViewItem::GetToolTip()
{
return ShouldAllowToolTip.Get() ? SCompoundWidget::GetToolTip() : NULL;
}
bool SAssetViewItem::ValidateDragDrop( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent, bool& OutIsKnownDragOperation ) const
{
OutIsKnownDragOperation = false;
return IsFolder() && DragDropHandler::ValidateDragDropOnAssetFolder(MyGeometry, DragDropEvent, StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderPath, OutIsKnownDragOperation);
}
void SAssetViewItem::OnDragEnter( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent )
{
ValidateDragDrop(MyGeometry, DragDropEvent, bDraggedOver); // updates bDraggedOver
}
void SAssetViewItem::OnDragLeave( const FDragDropEvent& DragDropEvent )
{
if(IsFolder())
{
TSharedPtr<FDragDropOperation> Operation = DragDropEvent.GetOperation();
if (Operation.IsValid())
{
Operation->SetCursorOverride(TOptional<EMouseCursor::Type>());
if (Operation->IsOfType<FAssetDragDropOp>())
{
TSharedPtr<FAssetDragDropOp> DragDropOp = StaticCastSharedPtr<FAssetDragDropOp>(Operation);
DragDropOp->ResetToDefaultToolTip();
}
}
bDraggedOver = false;
}
bDraggedOver = false;
}
FReply SAssetViewItem::OnDragOver( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent )
{
ValidateDragDrop(MyGeometry, DragDropEvent, bDraggedOver); // updates bDraggedOver
return (bDraggedOver) ? FReply::Handled() : FReply::Unhandled();
}
FReply SAssetViewItem::OnDrop( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent )
{
if (ValidateDragDrop(MyGeometry, DragDropEvent, bDraggedOver)) // updates bDraggedOver
{
bDraggedOver = false;
check(AssetItem->GetType() == EAssetItemType::Folder);
TSharedPtr<FDragDropOperation> Operation = DragDropEvent.GetOperation();
if (!Operation.IsValid())
{
return FReply::Unhandled();
}
if (Operation->IsOfType<FExternalDragOperation>())
{
TSharedPtr<FExternalDragOperation> DragDropOp = StaticCastSharedPtr<FExternalDragOperation>(Operation);
OnFilesDragDropped.ExecuteIfBound(DragDropOp->GetFiles(), StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderPath);
return FReply::Handled();
}
else if (Operation->IsOfType<FAssetPathDragDropOp>())
{
TSharedPtr<FAssetPathDragDropOp> DragDropOp = StaticCastSharedPtr<FAssetPathDragDropOp>(Operation);
OnPathsDragDropped.ExecuteIfBound(DragDropOp->PathNames, StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderPath);
return FReply::Handled();
}
else if (Operation->IsOfType<FAssetDragDropOp>())
{
TSharedPtr<FAssetDragDropOp> DragDropOp = StaticCastSharedPtr<FAssetDragDropOp>(Operation);
OnAssetsDragDropped.ExecuteIfBound(DragDropOp->AssetData, StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderPath);
return FReply::Handled();
}
}
if (bDraggedOver)
{
// We were able to handle this operation, but could not due to another error - still report this drop as handled so it doesn't fall through to other widgets
bDraggedOver = false;
return FReply::Handled();
}
return FReply::Unhandled();
}
bool SAssetViewItem::IsNameReadOnly() const
{
if (ThumbnailEditMode.Get())
{
// Read-only while editing thumbnails
return true;
}
if (!AssetItem.IsValid())
{
// Read-only if no valid asset item
return true;
}
if (AssetItem->GetType() != EAssetItemType::Folder)
{
// Read-only if we can't be renamed
return !ContentBrowserUtils::CanRenameAsset(StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data);
}
else
{
// Read-only if we can't be renamed
return !ContentBrowserUtils::CanRenameFolder(StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderPath);
}
return false;
}
void SAssetViewItem::HandleBeginNameChange( const FText& OriginalText )
{
OnRenameBegin.ExecuteIfBound(AssetItem, OriginalText.ToString(), LastGeometry.GetClippingRect());
}
void SAssetViewItem::HandleNameCommitted( const FText& NewText, ETextCommit::Type CommitInfo )
{
OnRenameCommit.ExecuteIfBound(AssetItem, NewText.ToString(), LastGeometry.GetClippingRect(), CommitInfo);
}
bool SAssetViewItem::HandleVerifyNameChanged( const FText& NewText, FText& OutErrorMessage )
{
return !OnVerifyRenameCommit.IsBound() || OnVerifyRenameCommit.Execute(AssetItem, NewText, LastGeometry.GetClippingRect(), OutErrorMessage);
}
void SAssetViewItem::OnAssetDataChanged()
{
CachePackageName();
AssetPackage = FindObjectSafe<UPackage>(NULL, *CachedPackageName);
UpdatePackageDirtyState();
AssetTypeActions.Reset();
if ( AssetItem->GetType() != EAssetItemType::Folder )
{
UClass* AssetClass = FindObject<UClass>(ANY_PACKAGE, *StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.AssetClass.ToString());
if (AssetClass)
{
FAssetToolsModule& AssetToolsModule = FModuleManager::LoadModuleChecked<FAssetToolsModule>(TEXT("AssetTools"));
AssetTypeActions = AssetToolsModule.Get().GetAssetTypeActionsForClass(AssetClass).Pin();
}
}
if ( InlineRenameWidget.IsValid() )
{
InlineRenameWidget->SetText( GetNameText() );
}
CacheToolTipTags();
}
void SAssetViewItem::DirtyStateChanged()
{
}
FText SAssetViewItem::GetAssetClassText() const
{
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3057646) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2840895 on 2016/01/23 by Max.Chen Sequencer: Moved key proxy handling from section into key area; added support for grouped keys; exposed color properties in context menu. Change 2937981 on 2016/04/08 by Max.Chen Sequencer: Refactored GetKeyHandles to take a time range for filtering keys Change 3051834 on 2016/07/15 by Max.Chen Sequencer: Adjust tooltips for autokeying and key all to be more descriptive. #jira UE-33081 Change 3053057 on 2016/07/17 by Max.Chen Sequencer: String track editor #jira UE-32141 Change 3053083 on 2016/07/18 by Max.Chen Sequence Recorder: Add an option to maximize the viewport when starting recording. Change 3053084 on 2016/07/18 by Max.Chen Added UnmapAction to FUICommandList Sequencer uses this to re-hook into the level editor commands without issue when it re-opens. Change 3053085 on 2016/07/18 by Max.Chen Sequence Recorder: Display name of next sequence in sequence recorder Also display on-screen during countdown Change 3053086 on 2016/07/18 by Max.Chen Sequence Recorder: Improved recording indicator icon, text & timer Also fixed a bug with record/stop button where they would not show/enable correctly if no animations were being recorded for a sequence. Change 3053089 on 2016/07/18 by Max.Chen Sequencer: Added hotkey for recording selected actors Alt+R now records selected actor into sequencer. Change 3055488 on 2016/07/19 by Max.Chen Sequencer: Fixed NotifyCameraCut() being erroneously called every frame (in FSequencer), and not being called at all in ULevelSequencePlayer Change 3056783 on 2016/07/19 by Max.Preussner PS4Media: Attempting to fix playlist advance on PS4 (UE-33481) #jira UE-33481 [CL 3057666 by Max Chen in Main branch]
2016-07-20 10:38:29 -04:00
if (!AssetItem.IsValid())
{
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3057646) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2840895 on 2016/01/23 by Max.Chen Sequencer: Moved key proxy handling from section into key area; added support for grouped keys; exposed color properties in context menu. Change 2937981 on 2016/04/08 by Max.Chen Sequencer: Refactored GetKeyHandles to take a time range for filtering keys Change 3051834 on 2016/07/15 by Max.Chen Sequencer: Adjust tooltips for autokeying and key all to be more descriptive. #jira UE-33081 Change 3053057 on 2016/07/17 by Max.Chen Sequencer: String track editor #jira UE-32141 Change 3053083 on 2016/07/18 by Max.Chen Sequence Recorder: Add an option to maximize the viewport when starting recording. Change 3053084 on 2016/07/18 by Max.Chen Added UnmapAction to FUICommandList Sequencer uses this to re-hook into the level editor commands without issue when it re-opens. Change 3053085 on 2016/07/18 by Max.Chen Sequence Recorder: Display name of next sequence in sequence recorder Also display on-screen during countdown Change 3053086 on 2016/07/18 by Max.Chen Sequence Recorder: Improved recording indicator icon, text & timer Also fixed a bug with record/stop button where they would not show/enable correctly if no animations were being recorded for a sequence. Change 3053089 on 2016/07/18 by Max.Chen Sequencer: Added hotkey for recording selected actors Alt+R now records selected actor into sequencer. Change 3055488 on 2016/07/19 by Max.Chen Sequencer: Fixed NotifyCameraCut() being erroneously called every frame (in FSequencer), and not being called at all in ULevelSequencePlayer Change 3056783 on 2016/07/19 by Max.Preussner PS4Media: Attempting to fix playlist advance on PS4 (UE-33481) #jira UE-33481 [CL 3057666 by Max Chen in Main branch]
2016-07-20 10:38:29 -04:00
return FText();
}
if (AssetItem->GetType() == EAssetItemType::Folder)
{
return LOCTEXT("FolderName", "Folder");
}
if (AssetTypeActions.IsValid())
{
FText Name = AssetTypeActions.Pin()->GetName();
if (!Name.IsEmpty())
{
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3057646) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2840895 on 2016/01/23 by Max.Chen Sequencer: Moved key proxy handling from section into key area; added support for grouped keys; exposed color properties in context menu. Change 2937981 on 2016/04/08 by Max.Chen Sequencer: Refactored GetKeyHandles to take a time range for filtering keys Change 3051834 on 2016/07/15 by Max.Chen Sequencer: Adjust tooltips for autokeying and key all to be more descriptive. #jira UE-33081 Change 3053057 on 2016/07/17 by Max.Chen Sequencer: String track editor #jira UE-32141 Change 3053083 on 2016/07/18 by Max.Chen Sequence Recorder: Add an option to maximize the viewport when starting recording. Change 3053084 on 2016/07/18 by Max.Chen Added UnmapAction to FUICommandList Sequencer uses this to re-hook into the level editor commands without issue when it re-opens. Change 3053085 on 2016/07/18 by Max.Chen Sequence Recorder: Display name of next sequence in sequence recorder Also display on-screen during countdown Change 3053086 on 2016/07/18 by Max.Chen Sequence Recorder: Improved recording indicator icon, text & timer Also fixed a bug with record/stop button where they would not show/enable correctly if no animations were being recorded for a sequence. Change 3053089 on 2016/07/18 by Max.Chen Sequencer: Added hotkey for recording selected actors Alt+R now records selected actor into sequencer. Change 3055488 on 2016/07/19 by Max.Chen Sequencer: Fixed NotifyCameraCut() being erroneously called every frame (in FSequencer), and not being called at all in ULevelSequencePlayer Change 3056783 on 2016/07/19 by Max.Preussner PS4Media: Attempting to fix playlist advance on PS4 (UE-33481) #jira UE-33481 [CL 3057666 by Max Chen in Main branch]
2016-07-20 10:38:29 -04:00
return Name;
}
}
Copying //UE4/Dev-Sequencer to //UE4/Dev-Main (Source: //UE4/Dev-Sequencer @ 3057646) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2840895 on 2016/01/23 by Max.Chen Sequencer: Moved key proxy handling from section into key area; added support for grouped keys; exposed color properties in context menu. Change 2937981 on 2016/04/08 by Max.Chen Sequencer: Refactored GetKeyHandles to take a time range for filtering keys Change 3051834 on 2016/07/15 by Max.Chen Sequencer: Adjust tooltips for autokeying and key all to be more descriptive. #jira UE-33081 Change 3053057 on 2016/07/17 by Max.Chen Sequencer: String track editor #jira UE-32141 Change 3053083 on 2016/07/18 by Max.Chen Sequence Recorder: Add an option to maximize the viewport when starting recording. Change 3053084 on 2016/07/18 by Max.Chen Added UnmapAction to FUICommandList Sequencer uses this to re-hook into the level editor commands without issue when it re-opens. Change 3053085 on 2016/07/18 by Max.Chen Sequence Recorder: Display name of next sequence in sequence recorder Also display on-screen during countdown Change 3053086 on 2016/07/18 by Max.Chen Sequence Recorder: Improved recording indicator icon, text & timer Also fixed a bug with record/stop button where they would not show/enable correctly if no animations were being recorded for a sequence. Change 3053089 on 2016/07/18 by Max.Chen Sequencer: Added hotkey for recording selected actors Alt+R now records selected actor into sequencer. Change 3055488 on 2016/07/19 by Max.Chen Sequencer: Fixed NotifyCameraCut() being erroneously called every frame (in FSequencer), and not being called at all in ULevelSequencePlayer Change 3056783 on 2016/07/19 by Max.Preussner PS4Media: Attempting to fix playlist advance on PS4 (UE-33481) #jira UE-33481 [CL 3057666 by Max Chen in Main branch]
2016-07-20 10:38:29 -04:00
return FText::FromName(StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.AssetClass);
}
const FSlateBrush* SAssetViewItem::GetSCCStateImage() const
{
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3379190) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3342222 on 2017/03/10 by Nick.Darnell UMG - Adding a GetContent to the UContentWidget. Change 3342228 on 2017/03/10 by Nick.Darnell Project Launcher - Always consume mouse wheel vertically so it stops scrolling to the right. Change 3342310 on 2017/03/10 by Nick.Darnell UMG - Cleaning up some extra class references. Change 3343382 on 2017/03/13 by Jamie.Dale Applying optimization to FChunkManifestGenerator::ContainsMap Change 3343523 on 2017/03/13 by Mike.Fricker New details view option: "Show Hidden Properties while Playing" - Enabling this allows you to see every property on selected objects that belong to a simulating world, even non-visible and non-editable properties. Very useful for inspection and debugging. - Remember to change World Outliner to show you actors in the "Play World" if you want to select and inspect those objects first! - This setting is saved for your entire project, similar to "Show All Advanced" Change 3343573 on 2017/03/13 by Mike.Fricker New details view option: "Show Hidden Properties while Playing" (part 2) - Fixed missing include / unity issue Change 3343709 on 2017/03/13 by Jamie.Dale Some fixes for gathering cached dependency data - We no longer load dependency data that doesn't have the correct package name. - We no longer populate the dependency results when bGatherDependsData is false. Change 3343900 on 2017/03/13 by Alexis.Matte fix crash when creating too much LOD at import #jira UE-42785 Change 3344104 on 2017/03/13 by Alexis.Matte Add a boolean to the static mesh socket so we know if the socket was imported or created in UE4. This allow us to not impact editor socket when we re-import a fbx #jira UE-42736 Change 3344802 on 2017/03/14 by Michael.Dupuis #jira UE-42244 : added missing nullptr so render thread wont try to access global var when we're no longer in landscape mode Changed the sync method between graphic resource from render thread and game thread to prevent desync Change 3346061 on 2017/03/14 by Jamie.Dale Adding const& and && overloads of FText::Format Change 3346192 on 2017/03/14 by Arciel.Rekman Linux: fix VHACD to retain bincompat with the baseline (UE-42895). - It is now compiled against libc++ instead of libstdc++ in the toolchain. Change 3347083 on 2017/03/15 by Andrew.Rodham Fixed crash when changing anchors on a background blur widget Change 3347359 on 2017/03/15 by Michael.Dupuis #jira UE-38193: Added Rename, Delete, New Folder, Size Map, Show In Explorer for folder and asset in the path view and asset view Change 3347382 on 2017/03/15 by Michael.Dupuis missing include incremental Change 3347500 on 2017/03/15 by Alex.Delesky #jira UE-41231 - Selecting multiple text widgets in UMG will now allow you to set their value correctly, and the "Multiple Values" text will no longer be set in the widgets instead. Change 3347920 on 2017/03/15 by Jamie.Dale Fixing some places passing tooltips as FString rather than FText #jira UE-42603 Change 3347925 on 2017/03/15 by Jamie.Dale Re-saving some assets so their tooltips can be gathered #jira UE-42603 Change 3348788 on 2017/03/15 by Jamie.Dale Updated the Windows platform to use the newer Vista+ style browser dialogs, rather than the older XP style dialogs Change 3349187 on 2017/03/16 by Andrew.Rodham Sequencer: Added the ability to specify additional event receivers for level sequence actors - Such actors will receive events from event tracks Change 3349194 on 2017/03/16 by Andrew.Rodham Sequencer: Reset compiled templates on load in the editor, and ensure correct serialization of generation ledger - Resetting on load means that we guarantee up-to-date templates, even if underlying compilation logic changes. #jira UE-42198 #jira UE-40969 Change 3349210 on 2017/03/16 by Andrew.Rodham Sequencer: Event tracks can now be defined to trigger events at the start of evaluation, after objects are spawned, or at the end of evaluation Change 3349211 on 2017/03/16 by Andrew.Rodham Sequencer: Add ability to retrieve bound objects from blueprint Change 3349398 on 2017/03/16 by Nick.Darnell UMG - Fixing a flashing hierarchy view. Looks like assets continuing to stream in causing the object change notification to continue to fire, and the widget designer refreshed any time it happened. Now limit to only if widgets are changing. Change 3349420 on 2017/03/16 by Alex.Delesky #jira UE-40720 - Multiline editable text boxes can now be set to Read-Only. Change 3349548 on 2017/03/16 by Alexis.Matte Fbx importer, when importing a staticmesh with combine mesh option check and the fbx file contain some "MultiSub Material" the materialinstance are now always hook properly. Change 3349818 on 2017/03/16 by Cody.Albert Fixed constructor for FNavigationMetaData Change 3350047 on 2017/03/16 by Cody.Albert Removed unneeded check so that children actors are never orphaned when their parent is moved into a newly created folder in the world outliner Change 3350072 on 2017/03/16 by Arciel.Rekman ShaderCompiler: make sure strings are at least 4-byte aligned. - Can crash wcscpy() under Linux otherwise (reported by a licensee). Change 3350146 on 2017/03/16 by Arciel.Rekman Fix CodeLite project generation (UE-42921). - Reportedly causes a crash in CodeLite 10.x Change 3350235 on 2017/03/16 by Arciel.Rekman Fix memory leak in address symbolication on Linux. - Makes MallocProfiler work again. - Also add progress update in MallocProfiler since symbolication is still slow. Merging CL 3338764 from Fortnite to Dev-Editor. Change 3350382 on 2017/03/16 by Arciel.Rekman Linux: fix incorrect cast of rlimit in i686. Change 3350471 on 2017/03/16 by Jamie.Dale Enabling loc dashboard by default for new projects Change 3350516 on 2017/03/16 by Jamie.Dale Enabling content hot-reloading by default Change 3350582 on 2017/03/16 by Cody.Albert Corrected Widget Interaction Component to use current impact point instead of last impact point Change 3350945 on 2017/03/16 by Jamie.Dale Gave FConfigFile::FindOrAddSection API linkage Change 3351441 on 2017/03/17 by Michael.Dupuis #jira UE-42843: Fixed Transaction begin/end order issue happening with min slider passing max slider value Add support for multiple selection value display Change 3351558 on 2017/03/17 by Michael.Dupuis #jira UE-42845: Always refresh the detail panel to properly update for selection change, delete, etc. Change 3351657 on 2017/03/17 by Matt.Kuhlenschmidt Adding USD Third Party dependencies Change 3351665 on 2017/03/17 by Matt.Kuhlenschmidt Added experimental USD Importer Plugin This plugin supports basic static mesh importing and scene creation of actors using static meshes Change 3351682 on 2017/03/17 by Matt.Kuhlenschmidt Enabling USD importer in engine test project for automation tests Change 3351749 on 2017/03/17 by Alexis.Matte Make sure the selection proxy is off for the skeletal mesh component. UE4 use the selection outline instead #jira UE-41677 Change 3351831 on 2017/03/17 by Michael.Dupuis #jira UETOOL-1102: Added HSV controls to Color Grading Some look improvement for RGV/HSV Color Grading refactor Group Reset bug fix (relevant only to color grading) Change 3352041 on 2017/03/17 by Matt.Kuhlenschmidt Updated USD plugin whitelisting Change 3352093 on 2017/03/17 by Michael.Dupuis when FREEZERENDERING is called, stop the foliage culling too Change 3352211 on 2017/03/17 by Alexis.Matte Fix the physic asset missing skeleton warning #jira UE-43006 Change 3352336 on 2017/03/17 by Alexis.Matte We now allow a negative W value of the ScreenPoint vector in the ScreenToPixel function. In this case we simply reverse the W value to kept the manipulator direction on the good side. #jira UE-37458 Change 3352947 on 2017/03/17 by Phillip.Kavan #jira UE-42510 - Instanced static mesh transform edits are now reflected in the Blueprint editor's preview scene. Change summary: - Added IPropertyHandle::GetValueBaseAddress() (interface). - Modified IPropertyHandle::NotifyPostChange() to include EPropertyChangeType as an optional input. - Added FPropertyHandleBase::GetValueBaseAddress() (implementation). - Modified FPropertyHandleBase::NotifyPostChange() to include the optional input arg in the property change event. - Modified FPropertyHandleBase::CreatePropertyNameWidget() to clear the override text after temporarily replacing display name/tooltip text for the creation of the SPropertyNameWidget. This was done to allow for transactions to be named according to the property that's being modified. - Modified FMathStructProxyCustomization::OnValueCommitted() to only apply the input value while not interactively editing via spinbox as well as when not post-processing an undo/redo (which can trigger a focus loss). - Modified the FMathStructProxyCustomization::OnEndSliderMovement() delegate to include property handle and proxy value input parameters, as well as to call FlushValues() as part of the implementation. - Modified FlushValues() for each of FMatrixStructCustomization, FTransformStructCustomization and FQuatStructCustomization to explicitly handle both propagation and transaction processing. - Modified UInstancedStaticMeshComponent::UpdateInstanceTransform() to call Modify() prior to applying changes (so that the previous state is recorded when inside a transaction context). - Modified FInstanceStaticMeshSCSEditorCustomization::HandleViewportDrag() to propagate changes to all instances of the ISMC archetype. Known issues: - Using the spinbox to edit instanced mesh transform values in the Blueprint editor will not apply the change to instances in the level editor until after you release the mouse button (i.e. - it will not be shown as a "live" update). Change 3353678 on 2017/03/20 by Michael.Dupuis properly unfreeze the culling of foliage when toggling the freezerendering command Change 3353747 on 2017/03/20 by Matt.Kuhlenschmidt PR #3372: Git plugin: fix update status on directories hotfix (still) slightly broken in master (UE4.16) (Contributed by SRombauts) Change 3353749 on 2017/03/20 by Matt.Kuhlenschmidt PR #3373: Git Plugin: hotfix for regression off Visual Diffs with older version of Git in master (UE4.16) (Contributed by SRombauts) Change 3353754 on 2017/03/20 by Matt.Kuhlenschmidt PR #3390: Allow OBJ imports to change if materials and textures are also imported (Contributed by mmdanggg2) Change 3353909 on 2017/03/20 by Matt.Kuhlenschmidt Fixed actors showing thumbnails in details panel and made a few other tweeks to thumbnail displays in details panels - The color of the accepted type is now shown properly - All object based properties now have thumbnails on by default. Change 3353948 on 2017/03/20 by Nick.Darnell UMG - Updating the background blur widget's upgrade code to use the custom version, and handling older cases that were continuing to generate blur slots, even when already upgraded. Change 3354335 on 2017/03/20 by Nick.Darnell Paragon - Excluding Archetype objects from reporting references, which causes crashes in the fast template mode. Change 3354495 on 2017/03/20 by Nick.Darnell Core - Making it so order that outers are discovered does not matter, initializing the chain of outers if hasn't been created when instancing subobjects. Change 3354578 on 2017/03/20 by Nick.Darnell Slate - There's now a console variable option, Slate.VerifyHitTestVisibility (off by default) which enables additional visibility checks for widgets. Normally this isn't nessesary, but if you're changing the visibility of widgets during a frame, and several hit tests need to be performed that frame there's a chance that a button could be clicked twice in one frame. Enabling this mode will make all hit testing more expensive, so for now it's off by default, but available for licensees that need the extra testing. Change 3354737 on 2017/03/20 by Nick.Darnell Core - Adding a fix to Dev-Editor from that enables objects in the same package being requested to also be loaded. This came about during async streaming callbacks alerting that a requested class was done loading, but there were still other assets in the package 'not loaded' but were available, just needed post load called on them. Change 3355923 on 2017/03/21 by Yannick.Lange VR Editor: - Remove unnecessary cleanup functions. - Initialize with VR Mode and remove SetOwner function, since it shouldn't be possible to reset the VR Mode afterwards. Change 3355959 on 2017/03/21 by Yannick.Lange VR Editor: - Rename VREditorWorldInteraction to VREditorPlacement, to avoid confusion with ViewportWorldInteraction. VREditorPlacement will only handle placing objects from content browser in the VR Mode. - Removed SnapSelectedActorsToGround to VREditorMode. Change 3355965 on 2017/03/21 by Yannick.Lange VR Editor: Forgot to add files to previous submit 3355959. Change 3355977 on 2017/03/21 by Yannick.Lange VR Editor: Remove function to add a new extension with TSubclassOf<UEditorWorldExtension>. Change 3356017 on 2017/03/21 by Yannick.Lange VR Editor: - UI system check owner VRMode. - UI system fix check on VRMode on shutdown. Change 3356028 on 2017/03/21 by Nick.Darnell Slate - SButton now correctly releases mouse capture even if it becomes disabled while pressed, but before 'click' has been fired. #jira UE-42777 Change 3356071 on 2017/03/21 by Yannick.Lange VR Editor: Copy of change 3353663. - Fix having to press once on the landscape to see the visuals for landscape editing. - Fix when sculpting/painting the position wouldn't update. - Fix inverted action for brushes while holding down shift or modifier on motioncontroller. - Cleanup FLandscapeToolInteractorPosition. - Change from 3353663: Use TStrokeClass::UseContinuousApply and TimeSinceLastInteractorMove to decide when to apply ToolStroke on tick. Change 3356180 on 2017/03/21 by Michael.Dupuis Added ShowFlag Foliage Occlusion Bounds Fixed non initialized variable Expose changing Min Occlusion Bounds instead of assuming 6 #rn none Change 3356347 on 2017/03/21 by Nick.Darnell UMG - Introducing a faster CreateWidget. When cooking, the widget compiler now generates a widget template/archetype that is stored in the same package as the generated blueprint class. During compiling we generate a nearly fully initialized widget tree including all sub userwidgets and their trees, hookup all member variables, initialize named slots, setup any animations...etc. This nearly fully constructed widget can be instanced using it as an archetype in the NewObject call, and does not have to use the correspondingly slow StaticDuplicateObject path. There are restrictions on this method, part of the compiling step for widgets now inspects if the instancing would be successful, or if there would be GLEO references after instancing because a user forgot to setup Instanced on a subobject property. Luckily that should be few and far between, all UVisuals (Widgets & Slots) are now DefaultToInstanced, which takes care of the overwhelming cases that demand the instanced flag. Especially given the bulk of cases using BindWidget in native code. UMG - Removing a lot of deprecated functions from 4.8 on UUserWidget. Change 3356357 on 2017/03/21 by Nick.Darnell Build - Fixing some IWYU issues on the incremental build. Change 3356461 on 2017/03/21 by Nick.Darnell Build - Fixing linux build errors. Change 3356468 on 2017/03/21 by Jamie.Dale STextPropertyEditableTextBox now handles empty texts correctly Change 3356916 on 2017/03/21 by Matt.Kuhlenschmidt Fixed a crash when a material render proxy on a preview node is deleted when it is in flight on the render thread #jira UE-40556 Change 3357033 on 2017/03/21 by Alexis.Matte Fix crash when importing file with import commandlet Make sure path are combine properly to avoid crash Add some missing pointer check Make sure the asset are save when there is no source control #jira UE-42334 Change 3357176 on 2017/03/21 by Alex.Delesky #jira UE-42445 - TMaps now support editing the values of structs that act as map keys. TMaps with struct keys will now show the types of their elements in the details panel as well, and structs will now also display numbers next to set elements. Change 3357197 on 2017/03/21 by Alex.Delesky #jira none - Fixing build issue for TMap key struct change. Change 3357205 on 2017/03/21 by Michael.Dupuis Forgot to reset min granularity to 6 from testing Change 3357340 on 2017/03/21 by Arciel.Rekman Mark FMallocAnsi (standard libc malloc) thread-safe on Linux. Change 3357413 on 2017/03/21 by matt.kuhlenschmidt Added '/Game/Effects/Fort_Effects/Materials/Smoke/M_Main_Smoke_Puff.M_Main_Smoke_Puff' to collection 'MattKTest' Upgraded collection 'MattKTest' (was version 1, now version 2) Change 3357505 on 2017/03/21 by Alexis.Matte Fix to avoid changing the CDO of FbxAssetImportData. The UI was saving the Config which was saving the CDO. But already serialized data will be reload badly if the CDO change since we serialize only the diff. #jira UE-42947 Change 3357825 on 2017/03/21 by Arciel.Rekman Clean up the large thread pool on exit. - Seems like the destruction was missed in the original CL 2785131 (12/1/15). - Fixes problems when threads were allocated in memory that is being cleaned up in another place on exit. Change 3358086 on 2017/03/22 by Yannick.Lange VR Editor: - Fix gizmo scaling down when dragging the world. - Fix gizmo scaling down when dragging rotation handle. Change 3358175 on 2017/03/22 by Andrew.Rodham Sequencer: Made ALevelSequenceActor::AdditionalEventReceivers advanced display Change 3358367 on 2017/03/22 by tim.gautier Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters Change 3358457 on 2017/03/22 by Yannick.Lange VR Editor: Deleting unused UI assets. Change 3358801 on 2017/03/22 by Matt.Kuhlenschmidt Guard against crash if the level editor is shut down when the object system has already been shut down #jira UE-35605 Change 3358897 on 2017/03/22 by matt.barnes Checking in WIP test content for UEQATC-1635 (UMG Navigation) Change 3358976 on 2017/03/22 by Alex.Delesky #jira none - Fixing an issue where ItemPropertyNode could potentially dereference a null property Change 3358987 on 2017/03/22 by Yannick.Lange VR Editor: Fix warning: Can't find file for asset '/Engine/VREditor/UI/VRButtonBackground' while loading ../../../Engine/Content/VREditor/Devices/Vive/VivePreControllerMaterial.uasset. Change 3359067 on 2017/03/22 by Yannick.Lange VR Editor: Fix Radial Menu remains on controller after exiting VR Preview #jira UE-42885 Change 3359179 on 2017/03/22 by Matt.Kuhlenschmidt Fixed "Multiple Values" in Body Setup when single bone has multiple bodies #jira UE-41546 Change 3359626 on 2017/03/22 by Arciel.Rekman Linux: pool OS allocations. - Add a TMemoryPool and TMemoryPoolArray classes that can be used with any type of OS allocator functions. - Add ability to bypass CachedOSPageAllocator for given sizes. Also, corrected the condition on AllocImpl to match one on FreeImpl. - Switch Linux to pool mmap()/munmap() by default (helps 32-bit Linux and also speeds up 64-bit one), except 64-bit servers. - Add a test to TestPAL to check performance and thread safety. - Misc. fixes. Change 3359989 on 2017/03/23 by Andrew.Rodham Sequencer: Binding overrides improvements - Added the ability to override spawnable bindings - Added the ability to override bindings in sub sequences - Deprecated "Get Sequence Bindings" node in favor of "Get Sequence Binding", which is more robust, and provides a better UI/UX for selecting single bindings #jira UE-42470 Change 3360369 on 2017/03/23 by Alexis.Matte Fix the staticmesh conversion from UE4 4.13 to earlier UE4 versions #jira UE-42731 Change 3360556 on 2017/03/23 by Andrew.Rodham Sequencer: Added drag/drop support for binding overrides - You can now drag and drop sequencer object binding nodes into blueprint graphs (to create 'Get Sequence Binding' nodes), and onto binding overrides specified on level sequence actors. Change 3360618 on 2017/03/23 by Arciel.Rekman Make Binned2 work on Mac. - Game/server will use Binned2 by default. Change 3360838 on 2017/03/23 by Nick.Darnell CommonUI - Making the SingleMaterialStyleMID property transient. It had been serialized mistakenly onto several widgets when it appears the intent is to dynamically allocate it upon demand. Change 3360841 on 2017/03/23 by Nick.Darnell UMG - Updating the editor to use DuplicateAndInitializeFromWidgetTree, so that Initialize is properly called when duplicating sub widget trees. Change 3362561 on 2017/03/24 by Matt.Kuhlenschmidt Fixed text outlines being cropped at large sizes #jira UE-42647 Change 3362565 on 2017/03/24 by Matt.Kuhlenschmidt Added automation test for font outlines Change 3362567 on 2017/03/24 by Matt.Kuhlenschmidt Resaved this file to fix 0 engine version warnings Change 3362582 on 2017/03/24 by Yannick.Lange VR Editor: - Fix log warnings when teleporting. - Fix undo/redo when using teleport scaling. - Improved teleport scaling and push/pull input. #jira UE-43214 Change 3362631 on 2017/03/24 by Jamie.Dale Split the monolithic culture concept in UE4 UE4 has historically only supported the concept of a single monolithic "culture" that applied to both text localization and internationalization, as well as all asset localization. Typically the "culture" was set to the "locale" of the OS, however that could be undesirable or incorrect on platforms (such as newer versions of Windows) that have a distinct concept of "language" (for localization) and "locale" (for internationalization). This change splits the concept of "culture" into "language" and "locale", and also adds the concept of "asset groups". The language is now used to work out which localization we should use, and the locale is used to control how numbers/dates/times/etc are formatted within our internationalization library. Asset groups expand on the language used by asset localization and allow you to create a group of asset classes that can be assigned a different culture than the main game language. A typical use-case of this would be creating an "audio" group that could, for example, be set to Japanese while the rest of the game runs in English. If your game doesn't care about the distinction between language and locale, and doesn't need to use asset groups, then you're able to continue to use "culture" as you always have. If, however, you do care about those things, then you'll likely want to avoid using the "culture" directly (as it's now a very aggressive setting that overrides all others), and instead favor using language/locale (games will typically treat these as the same) and asset groups as separate concepts (both in settings, and in your in-game UI). The language or locale for a game can be controlled by settings within the "Internationalization" section of your configs (this would typically be set in your GameUserSettings config, in the same way that "culture" works), eg) [Internationalization] language=fr locale=fr The asset groups for a game can be controlled by settings within the "Internationalization.AssetGroupClasses" and "Internationalization.AssetGroupCultures" sections of your configs (the asset group class definition would typically be set in your DefaultGame config, and the cultures the groups use would typically be set in your GameUserSettings config), eg) [Internationalization.AssetGroupClasses] +Audio=SoundWave +Audio=DialogueWave [Internationalization.AssetGroupCultures] +Audio=ja #jira UE-38418 #jira UE-43014 Change 3362798 on 2017/03/24 by Nick.Darnell UMG - Putting the finishing touches on the hardware cursor system. Can now load them from blueprints, and there are options for setting them up in the project settings. UMG - Deprecating the old properties for software widget cursors. They've been moved into a map that can handle any of the mouse cursors as the enum key, which was always the intent/desire but maps couldn't be used as UProperties then. Change 3362805 on 2017/03/24 by Jamie.Dale PR #3397: Allow empty source to override display string (Contributed by jorgenpt) Change 3363039 on 2017/03/24 by Jamie.Dale Use the pre-scaled font height where possible to avoid an extra multiply Change 3363188 on 2017/03/24 by Joe.Graf Added support for -iterate for content plugins that require path remapping during cook/packaging #CodeReview: matt.kuhlenschmidt #rb: matt.kuhlenschmidt Change 3363355 on 2017/03/24 by Nick.Darnell UMG - Removing the CookAdditionalFiles function in UserInterfaceSettings. Change 3363672 on 2017/03/24 by Matt.Kuhlenschmidt Material thumbnails now respect used particle system sprites flag and show a quad insead of a sphere by default. For this change I added the ability to have per asset type override for the default thumbnail shape and I added a way to reset thumbnails to default. All existinging particle system materials that have not had a custom thumbnail will have to be reloaded and resaved for this to work #jira UE-42410 Change 3363699 on 2017/03/24 by Mike.Fricker VR Editor: Improved extensibility (for mesh editor) - This was merged from CL 3352612 and re-opened for edit before commit - All mesh editor changes were stripped before merging Change 3363784 on 2017/03/24 by Matt.Barnes Adding content for tests following UEQATC-3548 Change 3363872 on 2017/03/24 by Arciel.Rekman Linux: require user to setup clang/clang++ for building hlslcc. - Earlier we tried to handle most common scenarios since libhlslcc needed to be built during the setup. Now that we supply a prebuilt version we don't need to be as user friendly, especially given that the attempts to second guess the compiler started to look complicated. Change 3364089 on 2017/03/24 by Matt.Kuhlenschmidt Fix CIS Change 3364381 on 2017/03/24 by JeanMichel.Dignard UV Packing optim - Use horizontal segments instead of checking texel by texel to fit source chart in layout. - Skip a couple of rasterize by flipping either the X texels or the Y texels when possible. - Keep the best chart raster so that we don't need to reraster when adding the chart to the layout. - Added a lightmap UV version in StaticMesh so that we don't invalidate the lighting cache. Only use the new lightmap UV generation when going through UStaticMesh::Build which invalidates the lighting. Change 3364587 on 2017/03/24 by Arciel.Rekman Fix ordered comparison warning from clang 4.0. Change 3364596 on 2017/03/24 by Arciel.Rekman Linux: fix editor being stuck (hack). - Rebuilt hlslcc in Debug. Change 3364863 on 2017/03/25 by Max.Chen Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3364864 on 2017/03/25 by Max.Chen Sequencer: Integrating fix from licensee to ensure FVirtualTrackArea::HitTestSection checks the row of the section Change 3364865 on 2017/03/25 by Max.Chen Cine Camera: Default post process depth of field method to CircleDOF and use that setting in UpdateCameraLens. #jira UE-40621 Change 3364866 on 2017/03/25 by Max.Chen GitHub #3183: Conversion to base class is inaccessible. Change 3364869 on 2017/03/25 by Max.Chen Sequencer: Changed the time snapping interval in the toolbar ui so that it no longer additionally updates the sequencer setting. The setting is only used to initialize the time snapping interval of the level sequence. Added translate keys with ctrl and left-right arrows. #jira UE-41009 #jira UE-41210 Change 3364870 on 2017/03/25 by Max.Chen Sequencer: Added translate keys with ctrl and left-right arrows. #jira UE-41210 Change 3364871 on 2017/03/25 by Max.Chen Sequencer: Add level sequence actor customization to open sequencer from the details panel. For matinee parity. #jira UE-41459 Change 3364879 on 2017/03/25 by Max.Chen Sequencer: Duplicate shot should put the duplicate on the next available row, keeping the start/end times the same. #jira UE-41289 Change 3364880 on 2017/03/25 by Max.Chen Sequencer: Opening the API for MovieSceneAudio-related classes along with some minor functionality additions: - Adding _API specifiers to MovieSceneAudioTrack, MovieSceneAudioSection, and FAudioTrackEditor so they can be subclassed in other modules. - Made GetSoundDuration function in MovieSceneAudioTrack.cpp a member function so it's functionaliy could be reused by subclasses. - Adding ability to specify delegates for OnQueueSubtitles, OnAudioFinished, and OnAudioPlaybackPercent in a MovieSceneAudioSection, and have them automatically assigned to any AudioComponents that are played by the MovieSceneAudioTemplate Change 3364884 on 2017/03/25 by Max.Chen Sequencer fbx import - Removed the PostRotation compensation as it was setuped for 3ds max. - On import, add a rotation to camera and light animation keys like we do on export. - Merge the component local transform with the ActorNode transform when exporting only one component that isn't the root component in fbx since we're not creating child nodes in that case. #jira UE-34692 Change 3364885 on 2017/03/25 by Max.Chen Sequence Recorder: Fix crash when clearing properties to record. #jira UE-41873 Change 3364886 on 2017/03/25 by Max.Chen Sequencer: Add error when attempting to add a circularly dependent level sequence #jira UE-22358 Change 3364890 on 2017/03/26 by Max.Chen Sequencer: Added ability to specify a 'notify' function to property instance bindings - When specified, the (parameterless) function will be called after a property is set Change 3364891 on 2017/03/26 by Max.Chen Sequencer: Various fixes to thumbnails - Fixed alpha blending being used when presenting the full screen quad for thumbnails Change 3364892 on 2017/03/26 by Max.Chen Sequencer: PreRoll and PostRoll is now exposed at the section level, for all sections - For the majority of sections this will be unimplemented, but it will allow for some tracks to set up their data ahead of time Change 3364896 on 2017/03/26 by Max.Chen Sequencer: Add segment flags to equality operator for movie scene evaluation segments - This prevents them from being accumulated into adjacent segments of the same index and forced time, but differing flags Change 3364897 on 2017/03/26 by Max.Chen Sequencer: Fixed "Evaluate in preroll" and "Evaluate in Postroll" options - Pre and postroll flags now come through on compiled segments, so the previous manual logic for sub sections is obsolete; we can just use the compiled segment data directly. Change 3364898 on 2017/03/26 by Max.Chen Sequencer: Moved track options to be accessible on all nodes, and operate on all selected tracks Change 3364902 on 2017/03/26 by Max.Chen Sequencer: Ensure evaluation flags are considered when compiling segments from external sequences - This ensures that preroll regions in sub sequences are correctly evaluated when their parent section has preroll - Changed high pass blending to always allow preroll Change 3364903 on 2017/03/26 by Max.Chen Engine: Moved proxy mesh transform update out of camera view computation code - GetCameraView can happen as part of end of frame updates, which will assert if any changes of transform happen during its processing Change 3364908 on 2017/03/26 by Max.Chen Sequencer: Added visualization of pre and postroll on sections Change 3364909 on 2017/03/26 by Max.Chen Sequencer: Prevent MovieSceneCompiler from removing preroll segments Change 3364910 on 2017/03/26 by Max.Chen Sequencer: MediaPlayer PreRoll/PostRoll fix - Handle PreRoll/PostRoll on sub scenes that have a start offset Change 3364922 on 2017/03/26 by Max.Chen Sequencer: Add check for valid property before dereferencing. #jira UE-40951 Change 3364923 on 2017/03/26 by Max.Chen Sequencer: Fix MovieScene preroll so that it seeks to the start correct frame before the preroll. Change 3364924 on 2017/03/26 by Max.Chen Sequencer - change default behavior for pre/post roll evaluation - MovieSceneTracks are NOT evaluated by default Change 3364925 on 2017/03/26 by Max.Chen Sequencer: Shot track rows now consider pre and post roll when being compiled Change 3364926 on 2017/03/26 by Max.Chen Sequencer: Added the ability to define shared execution tokens, identifyable with a unique identifier, and sortable based on a sort order (<=0: before standard tokens, >0: after other tokens) Change 3364927 on 2017/03/26 by Max.Chen Sequencer: Added the ability to selectively restore state for specific anim type IDs for a given object - This allows us to specifically restore one particular type of animation for a given object (ie, transform, skeletal animation control, or motion blur) Change 3364928 on 2017/03/26 by Max.Chen Sequencer: Fixed sub-sub tracks not being present in master sequences - In order to correctly handle preroll in inner-inner sequences, we need to have access to those tracks when compiling intermediate sub sections. By caching off all the inner templates, we can have access to these tracks to check whether they want to be evaluated in pre/post roll in the master sequence Change 3364937 on 2017/03/26 by Max.Chen Sequencer: Update cine camera component debug focus plane on tick, rather than in GetCameraView #jira UE-41332 Change 3364938 on 2017/03/26 by Max.Chen Sequencer: Fix crash inserting a level sequence with an invalid shot. #jira UE-41481 Change 3364940 on 2017/03/26 by Max.Chen Sequencer: Made handling of pre and post roll more consistent between explicit section pre/post roll and pre/post roll inherited from an outer sub section Change 3364942 on 2017/03/26 by Max.Chen Movie Scene Capture: Move EDL generation to setup instead of close to ensure it gets written out when capturing as a separate process. #jira UE-41703 Change 3364943 on 2017/03/26 by Max.Chen Sequencer: Prevent capturing movies in editor while a PIE session is running #jira UE-41399 Change 3364944 on 2017/03/26 by Max.Chen CIS fixes Change 3364951 on 2017/03/26 by Max.Chen Sequencer: Fix autokey not setting a keyframe for slate color with specified color. #jira UE-41645 Change 3364952 on 2017/03/26 by Max.Chen Sequencer: Level sequence frame snapshots now take account of fixed-frame interval offsets, and overlapping shot sections on the same row #jira UE-41684 Change 3364953 on 2017/03/26 by Max.Chen Sequencer: Fix edl so that it doesn't write out when a shot is out of range. Also fixed not writing the EDL with the correct frame rate when exporting from the track. Reworked the cmx EDL so that its encoded in the same edit time space, including a blank slug at the beginning of the edit. #jira UE-41925 Change 3364954 on 2017/03/26 by Max.Chen Sequencer - Allow animating parameters on cascade effect components which aren't owned by an AEmitter. Change 3364955 on 2017/03/26 by Max.Chen Sequencer: Fixed sequencer anim instance not being used in the case where one was requested, but a different anim instance was already set This fixes an issue when rendering in seaprate process, animations that were set up to use the sequencer instance would be controlled using montage animation instead. Change 3364963 on 2017/03/26 by Max.Chen Sequencer: Fix filtering to include child nodes. #jira UE-42068 Change 3364964 on 2017/03/26 by Max.Chen Sequencer: Enable UseCustomStartFrame and UseCustomEndFrame when rendering a single shot from the menu. #jira UE-42021 Change 3364965 on 2017/03/26 by Max.Chen Sequencer: Set the fade color in the track display Change 3364966 on 2017/03/26 by Max.Chen Sequencer: Show actor attached to label in attach section. Change 3364967 on 2017/03/26 by Max.Chen Sequencer: Fix static analysis warnings Change 3364968 on 2017/03/26 by Max.Chen Sequencer: Fix crash on converting to spawnable. The previous implementation purported to allow null objects to set up spawnable defaults but it actually needed to compare the spawned object to the supported type. This new mechanism now allows the spawner to indicate that it accepts null objects and doesn't crash. #jira UE-42069 Change 3364969 on 2017/03/26 by Max.Chen Sequencer: Fixed crash caused by holding onto stale properties through a raw ptr #jira UE-42072 Change 3364977 on 2017/03/26 by Max.Chen Sequencer: Convert FLinearColor to FColor for fade. #jira UE-41990 Change 3364978 on 2017/03/26 by Max.Chen Sequencer: Limit GetAllSections to the sections that actually correspond to the track #jira UE-42167 Change 3364979 on 2017/03/26 by Max.Chen Sequencer: Filter root nodes too #jira UE-42068 Change 3364980 on 2017/03/26 by Max.Chen Sequencer: Filter relevant material parameters #jira UE-40712 Change 3364982 on 2017/03/26 by Max.Chen Sequencer: Remove audio range bounds which clamps to the section bounds (needed for evaluating in pre and post roll) Change 3364983 on 2017/03/26 by Max.Chen Sequencer: Add socket name to attach track section. Change 3364984 on 2017/03/26 by Max.Chen Sequencer: Fix sub track node deletion so that all the sub tracks aren't deleted, only the row being requested. #jira UE-40955 Change 3364988 on 2017/03/26 by Max.Chen Sequencer: Invalidate expired objects when blueprints are compiled. Fix actor references now handles sections that need to have their guids updated (ie. attach tracks). Change 3364994 on 2017/03/26 by Max.Chen Sequencer: Audio waveforms now show peak samples with smoothed RMS in the center - Audio row heights are now also resizable by dragging on the bottom end of the track lane in the track area view Change 3364995 on 2017/03/26 by Max.Chen UMG: Fix crash on undo #jira UE-42210 Change 3365000 on 2017/03/26 by Max.Chen Sequencer: Fix crash from GetCurrentValue. Change 3365001 on 2017/03/26 by Max.Chen Sequencer: Split "Snap to the Dragged Key" option into two options, pressed key and dragged key. #jira UE-42382 Change 3365002 on 2017/03/26 by Max.Chen Sequencer: Downgraded check to ensure for FMovieSceneEvalTemplateBase::GetScriptStructImpl() Change 3365003 on 2017/03/26 by Max.Chen Sequencer: Fixed section template script struct - Because the cpp is not parsed by UHT, the empty template had its parent struct, rather than its own - We now just return null, and handle empty segments correctly in the segment remapper as part of the track compilation Change 3365013 on 2017/03/26 by Max.Chen Sequencer: Added data validation on compiled template loads, and extra guards against misuse of movie scene types Change 3365014 on 2017/03/26 by Max.Chen Sequencer: Sequencer now re-evaluates when starting PIE or Simulate - This can be disabled by disabling "Bind Sequencer to PIE" and "Bind Sequencer to Simulate" in PIE advanced settings Change 3365015 on 2017/03/26 by Max.Chen Sequencer: Fix edl files so that they don't write out empty range shots Change 3365017 on 2017/03/26 by Max.Chen Sequencer: Set max tick rate when in game. #jira UE-41078 Change 3365018 on 2017/03/26 by Max.Chen Sequencer: When finishing a scrub, playback status is now correctly set to stopped rather than stepping - This fixes a hack that was previously in place from the old PostTickRenderFixup that caused it to run that step after scrubbing bad finished. This is no longer necessary, and actually breaks clicking to set the scrub position, as it now means that we step across the entire range between the previous and current time. Change 3365022 on 2017/03/26 by Max.Chen Sequencer: Insert shot now creates a shot at the current time and puts it on the next available row. #jira UE-41480, UE-27699 Change 3365023 on 2017/03/26 by Max.Chen Sequencer: Add loop selection range. If there is no selection range, loop mode is restricted to loop or no loop. #jira UE-42285 Change 3365029 on 2017/03/26 by Max.Chen Sequencer: Add hotkeys to set the selection range to the next and previous shot (page up, page down). Also, added hotkey to set the playback range to all the shots (end) Change 3365030 on 2017/03/26 by Max.Chen Sequencer: Fix particle system restore state so that it gets the proper initial active state of the particle system. #jira UE-42861, UE-42859 Change 3365031 on 2017/03/26 by Max.Chen Sequencer: Snap time when changing time snapping intervals. #jira UE-42590 Change 3365032 on 2017/03/26 by Max.Chen Sequencer: Add When Finished state to sections. By default, sections now restore state. #jira UE-41991, UE-31569 Change 3365033 on 2017/03/26 by Max.Chen #jira UE-42028 "DialogueWave playback calls OnQueueSubtitles multiple times" Only queue subtitles once per wave instance playback Change 3365041 on 2017/03/26 by Max.Chen Sequencer: Subscene hierarchical bias Tracks can now be prioritized based on their subscene hierarhical bias value. Higher bias values take precedence. #jira UE-42078 Change 3365042 on 2017/03/26 by Max.Chen Sequencer: Generic paste menu for master (root) tracks. Change 3365043 on 2017/03/26 by Max.Chen Sequencer: Hierarchical bias for level visibility track #jira UE-43024 Change 3365044 on 2017/03/26 by Max.Chen Sequencer: Prevent throttling on editing keys/sections. Change 3365045 on 2017/03/26 by Max.Chen Sequencer: Set sequencer audio components bIsUISound to false so that they don't continue playing when the game is paused. #jira UE-39391 Change 3365046 on 2017/03/26 by Max.Chen Sequencer: Add missing BindLevelEditorCommands() Change 3365049 on 2017/03/26 by Max.Chen Sequencer: Set tick prerequites for spawnables when they are spawned. #jira UE-43009 Change 3365050 on 2017/03/26 by Max.Chen Sequencer: Jump to Start and End of playback shortcuts. Rewind renamed to Jump to Start. Shortcut - up arrow. Jump to End Shortcut - ctrl up arrow. #jira UE-43224 Change 3365051 on 2017/03/26 by Max.Chen Sequencer: Add last range to playback Change 3365057 on 2017/03/26 by Max.Chen Sequencer: Fix master sequence subscene generation times. Change 3365058 on 2017/03/26 by Max.Chen Sequencer: Fix paste so that it doesn't paste both onto object nodes and master tracks. Change 3365059 on 2017/03/26 by Max.Chen Sequencer: Fix crash pasting audio track. Change 3365060 on 2017/03/26 by Max.Chen Sequencer: Cache player fade state so that restore state will return the values to the pre animated state. #jira UE-43313 Change 3365061 on 2017/03/26 by Max.Chen Sequencer: Filter hidden functions. This fixes a bug where the field of view property for a cinematic camera appears to be animatable. It should be hidden just like it is in the property editor. #jira UE-41461 Change 3365065 on 2017/03/26 by Max.Chen Sequencer: Support component hierarchies when drawing animation paths #jira UE-39500 Change 3365066 on 2017/03/26 by Max.Chen Sequencer: Refine pause behaviour in sequencer to always evaluate the next frame - This ensures that we get a full frame's worth of evaluation so that the paused frame is of a good quality (and avoids us evaluating a tiny range) Change 3365075 on 2017/03/26 by Max.Chen Sequencer: Fix add shot not setting next row. Change 3365076 on 2017/03/26 by Max.Chen Sequencer: Export MovieSceneTrackEditor #jira UE-41641 Change 3365472 on 2017/03/27 by Yannick.Lange VR Editor landscape. Back out changelist 3356071 with new proper fixes. CL 3356071 introduced another bug and it wasn't correct because of removing FLandscapeToolInteractorPosition. This changelist fixes the same and additional bugs for VREditor Landscape mode. - Fix when sculpting/painting the position wouldn't update. - Fix inverted action for brushes while holding down shift or modifier on motioncontroller. - Fix VREditor Landscape Texture Painting does not paint continuously - Fix having to press once on the landscape to see the visuals for landscape editing. - Removed Interactor parameter from BeginTool. #jira UE-42780, UE-42779 Change 3365497 on 2017/03/27 by Matt.Kuhlenschmidt Fix texture importing when an FBX file incorrectly reports absolute path as relative. First we try absolute, then we try fbx reported relative, then we try relative to parent FBX file. Change 3365498 on 2017/03/27 by Matt.Kuhlenschmidt Fix attempting to load a package in FBX scene import when the import path is empty. This greatly reduces FBX scene import time Change 3365504 on 2017/03/27 by Yannick.Lange VR Editor landscape fix ensure in when starting to paint/sculpt. Mousemove on tool should only be called when the tool is actually active, not when hovering. Change 3365551 on 2017/03/27 by Matt.Kuhlenschmidt PR #3425: Added Scrollbar customization to SComboBox (Contributed by Altrue) #jira UE-43338 Change 3365580 on 2017/03/27 by Matt.Kuhlenschmidt PR #3409: Add support for per-Category filtering in Output Log (Contributed by thagberg) Change 3365672 on 2017/03/27 by Andrew.Rodham Sequencer: Preanimated state producers can now produce null tokens - Doing so implies no preanimated state should be saved Change 3365791 on 2017/03/27 by Andrew.Rodham Sequencer: Added Material Parameter Collection track Change 3365806 on 2017/03/27 by Max.Chen Sequencer: Add option to instance sub sequences. #jira UE-43307 Change 3365822 on 2017/03/27 by Matt.Kuhlenschmidt Subdue the output log font color a bit Change 3365846 on 2017/03/27 by Jamie.Dale Added package redirection on load/find Change 3365852 on 2017/03/27 by Jamie.Dale Adding a way to mark a package as no longer missing Change 3365896 on 2017/03/27 by Jamie.Dale Adding GlobalNotification to Slate This is the guts of the GlobalEditorNotification, so it can be used by code that doesn't link to UnrealEd. Change 3365900 on 2017/03/27 by Jamie.Dale Prevent the default cooked sandbox from trying to read non-cooked assets Change 3366550 on 2017/03/27 by Max.Chen Sequencer: Fix case Change 3367301 on 2017/03/28 by Andrew.Rodham Tests: Added test actor with a variety of properties for testing purposes Change 3367303 on 2017/03/28 by Andrew.Rodham Tests: Enabled ActorSequenceEditor plugin in EngineTest project Change 3367304 on 2017/03/28 by Andrew.Rodham Tests: Added several functional testing maps for sequencer - SequencerTest_Properties - tests animating various property types - SequencerTest_Events - tests basic event triggering functionality (including additional event receivers and event ordering) - SequencerTest_BindingOverrides - tests overriding possessable and spawnable bindings, along with bindings in sub sequences - SequencerTest_ActorSequence - tests basic actor sequence functionality Change 3367465 on 2017/03/28 by Max.Chen Sequencer: Set Bind Sequencer to PIE off by default, Bind Sequencer to Simulate remains on by default. Change 3367515 on 2017/03/28 by Matt.Kuhlenschmidt Guard against visual studio accessor crash #jira UE-43368 Change 3368118 on 2017/03/28 by Alexis.Matte Fix the staticmesh conversion from 4.13. There was a error in the LOD loop we where not remapping the LOD 0. #jira UE-42731 Change 3368485 on 2017/03/28 by Alex.Delesky #jira UE-42207 - Updated SVN Binaries for MacOSX 64-bit: - Subversion 1.9.4 -> 1.9.5 - OpenSSL 1.0.2h -> 1.0.2k - BerkeleyDB 5.3.15 -> 6.2.23 - Java 8u101 -> 8u121 - Sqlite 3.13.0 -> 3.17.0 - Serf 1.3.8 -> 1.3.9 - Swig 3.0.10 -> 3.0.12 - ZLib 1.2.9 -> 1.2.11 Change 3368495 on 2017/03/28 by Alex.Delesky #jira UE-42207 - Updated SVN Binaries for Windows 64-bit: - Subversion 1.9.4 -> 1.9.5 - OpenSSL 1.0.2h -> 1.0.2k - BerkeleyDB 5.3.15 -> 6.2.23 - Java 8u101 -> 8u121 - Sqlite 3.13.0 -> 3.17.0 - Serf 1.3.8 -> 1.3.9 - Swig 3.0.10 -> 3.0.12 - ZLib 1.2.9 -> 1.2.11 Change 3368501 on 2017/03/28 by Alex.Delesky #jira UE-42207 - SVN Build instructions for Windows and Mac 64-bit libraries, and license files for Mac libraries Change 3368782 on 2017/03/28 by Nick.Darnell UMG - Improving some logging for fast widget creation. Change 3368826 on 2017/03/28 by Nick.Darnell Slate - Slate Application now maintains seperate tracking for each pointer being utilized for drag drop, so now multiple fingers on multiple widgets can now simultaneously be attempting a drag, however once one of them becomes successful, we clear all state of all other tracking since only one Drag Drop operation is possible at a time. Slate - bFoldTick is now removed from the codebase, we haven't supported the other (non-folded) code path for awhile, so there was no point in maintaining the switch. Slate - Users have noticed issues where the cursor does not appear when changing visibility (through toggling the way the cursor appears). This was rooted in how the OS requested cursor changes, WM_SETCURSOR on Windows only asks for new cursors when the mouse moves, but often cursors change just because mouse capture changes. So now the path has been centralized in Slate Tick to only handle the cursor changes in one place, and several places that need to refresh the cursor state, now set a flag to handle it on next tick. #jira UE-40486 Change 3368917 on 2017/03/28 by Arciel.Rekman Linux: allow building with clang 4.0. Change 3369074 on 2017/03/28 by Nick.Darnell UMG - Fixing some spelling on the hardware cursor tip. UMG - Changed some checks to ensure now that users can input the wrong data from the editor. Adding some clamping to the editor interface so that users are not tempted to enter incorrect hotspot ranges for their cursors. #jira UE-43419 #jira UE-43425 Change 3369137 on 2017/03/28 by Max.Chen Sequencer: Add given master track sets the outer to the movie scene. Change 3369360 on 2017/03/29 by Andrew.Rodham Sequencer: Reconciled 3349194 and 3365041 with animphys merge Change 3369410 on 2017/03/29 by Alexis.Matte Fix the select filename in the FileDialog "Desktop window platform" #jira UE-43319 Change 3369475 on 2017/03/29 by Nick.Darnell PR #3413: UE-37710: Proper scaling of WebBrowserViewport (Contributed by projectgheist) Modified - you can't use the clip rect to decide on how large you should be. #jira UE-37710 Change 3369775 on 2017/03/29 by Max.Chen ControlRig: Fix crash on exit. #jira UE-43411 Change 3370466 on 2017/03/29 by Nick.Darnell AsyncLoading - Adding USoundBase to the set of CDOs that have a particular fixed boot order. StreamableManager - Only showing the duplicate load error in debug builds, it's not a real error. #jira UE-43409 Change 3370570 on 2017/03/29 by Nick.Darnell Slate - Fixing a bug with ZOrder being discarded on the SOverlay Slot. #jira UE-43431 Change 3370644 on 2017/03/29 by Andrew.Rodham Temporarily disabling sequencer functional test "Event Position" Change 3370713 on 2017/03/29 by Nick.Darnell PR #3399: UE-42831: Anchor text ignores scale (Contributed by projectgheist) #jira UE-43156 #jira UE-42831 Change 3371243 on 2017/03/30 by Arciel.Rekman Linux: scale OS allocation pool to match memory size. - Number of distinct VMAs (contiguous virtual memory areas, i.e. mappings done via mmap()) is rather low (~64k) and we can run out of VMAs earlier than we will run into available memory. Larger pool makes this less likely. Change 3371262 on 2017/03/30 by Arciel.Rekman Linux: fix custom present. - PR #3383 contributed by yaakuro. Change 3371301 on 2017/03/30 by Arciel.Rekman Linux: fix copying to a non-existent directory during Setup. Change 3371307 on 2017/03/30 by Andrew.Rodham Editor: Added "Resave All" functionality to content browser folders Change 3371364 on 2017/03/30 by Andrew.Rodham Sequencer: Level streaming improvements - Tick prerequisites are now set up when any object binding is resolved, not at the start of the sequence. This unifies code between spawnables and possessables, and allows tick prerequisites to still be set up when levels are streamed in - Actor references are no longer resolved when a PIEInstance is specified on the package, and it cannot be fixed up to a different ptr than the original. This stops us resolving actors from one world into another. - Fixed level visibility request getting cleared when the cumulative total was 0 (it should only do this if there are no requests left) #jira UE-43225 Change 3371365 on 2017/03/30 by Andrew.Rodham Tests: Sequencer level streaming tests Change 3371493 on 2017/03/30 by Nick.Darnell PR #3408: UE-19980: Added FCanExecuteAction to prevent keyboard shortcut. (Contributed by projectgheist) Change 3371524 on 2017/03/30 by Nick.Darnell PR #2938: Minor UMG code fixups (Contributed by projectgheist), accepted most of the changes. Change 3371545 on 2017/03/30 by Nick.Darnell UMG - Fixing some minor issues with WidgetComponents not properly limiting input depending on what is supported with reguard to hardware input. Change 3371576 on 2017/03/30 by Matt.Kuhlenschmidt PR #3433: Fix for the Standalone D3D Slate Shader using the wrong value for the. (Contributed by megasjay) Change 3371590 on 2017/03/30 by Nick.Darnell UMG - Fixing widget alignment in the viewport when using the widget component with screen space, with an aspect ratio lock on the player's camera. The widgets should now show up in the right locations. Change 3371625 on 2017/03/30 by Alexis.Matte Fix the merge tool material id assignment #jira UE-43246 Change 3371666 on 2017/03/30 by Nick.Darnell UMG - Reducing logging, don't need to tell everyone all the time we're using the fast widget path. Change 3371687 on 2017/03/30 by Arciel.Rekman Linux: switch to new managed filehandles. Change 3371778 on 2017/03/30 by Matt.Kuhlenschmidt Fixed the animation to play property on skeletal meshes being too small to read anything #jira UE-43327 Change 3372709 on 2017/03/30 by Matt.Kuhlenschmidt Made slate loading widget / movie play back more thread safe by eliminating Slate applicaiton or the main window from being ticked directly on another thread. We now have a separate virtual window for ticking and painting the loading screen widgets in isolation Change 3372757 on 2017/03/30 by Nick.Darnell Paragon - Fixing cases where people were using PostLoad() where really it should have done when the widget was constructed or created. This is a side effect of the FastWidget creation path 'PostLoad()' is not called on newly constructed widgets, though it did before because part of duplicating the WidgetTree, required serialization, which would have called it. Change 3372777 on 2017/03/30 by Nick.Darnell Fixing fast widget template cooking so that it does the same logic as Initialize did, centralizing the code to find the first widgetblueprintclass. Change 3372949 on 2017/03/30 by Nick.Darnell UMG - Fixing some cooking crashes for the super class. Change 3373139 on 2017/03/30 by Jeff.Farris Added TimingPolicy option to WidgetComponent, so widgets can optionally tick in game time rather than real time. (Copy of CL 3279699 from Robo Recall to Dev-Editor) Change 3373235 on 2017/03/30 by Nick.Darnell Fixing a cooking issue, accidentally removed code that was properly loading some needed assets. Change 3373266 on 2017/03/30 by Matt.Kuhlenschmidt Made GetMoviePlayer thread safe. Simply accessing GetMoviePlayer is safe now as is checking IsLoadingFinished. However, most of the functions on movie player are only safe from the game thread! Change 3374026 on 2017/03/31 by Andrew.Rodham Sequencer: Moved evaluation group registration to IMovieSceneModule #jira UE-43420 Change 3374060 on 2017/03/31 by Yannick.Lange VR Editor: Collision on motion controllers in simulate. Change 3374185 on 2017/03/31 by Nick.Darnell Attempting to fix the build. Change 3374232 on 2017/03/31 by Max.Chen Sequencer: Fix audio not playing in editor #jira UE-43514 Change 3374322 on 2017/03/31 by Nick.Darnell UMG - SafeZone widget now has comments, and useful tips. Using the debugging console commands now trigger the broadcast that will cause controls like the SSafeZone widget to resample the display metrics to learn the new safezone ratio. Change 3374424 on 2017/03/31 by Max.Chen Updated test content so that the door animation is now set to "Keep State" for the When Finished property. #jira UE-43519 Change 3374447 on 2017/03/31 by Max.Chen Sequencer: Notify streaming system prior to camera cuts By default, this does nothing. Users will need to enable the preroll section of camera cuts for the streaming system to activate prior to cutting to cameras. #jira UE-42406 Change 3374571 on 2017/03/31 by Andrew.Rodham Sequencer: Unified global and object-bound pre animated state, added InitializeObjectForAnimation method to state producers Change 3374578 on 2017/03/31 by Andrew.Rodham Sequencer: Added unit tests for pre-animated state Change 3374592 on 2017/03/31 by Max.Chen Color Customization: Set curve color names. #jira UE-43405 Change 3374596 on 2017/03/31 by Andrew.Rodham Corrected documentation comment Change 3374671 on 2017/03/31 by Matt.Kuhlenschmidt Fix movie scene audio track not compiling outside of editor Change 3374689 on 2017/03/31 by Matt.Kuhlenschmidt Remove the slate thread masquerading as the game thread in IsInGameThread Change 3374730 on 2017/03/31 by Max.Chen Sequencer: Add check for null loaded level. Change 3374732 on 2017/03/31 by Max.Chen Sequencer: Remove null tracks on postload. Change 3374737 on 2017/03/31 by tim.gautier - Updated UMG_Optimization: Adjusted Variable names to resolve compile errors due to Widget Components and Variables sharing names (cannot be done with new compile improvements) - Set Level Blueprint for TM-UMG back to AllPalettes Change 3374987 on 2017/03/31 by Nick.Darnell UMG - Introducing a way to inform the widgets more information about the designer. There's now a DesignerChanged event sent to all design time widgets letting them know things like the current screen size and DPI scale. UMG - The SafeZone widget will now show the correct safe zone amount if you use the safezone command line options, which are now documented in the comment for the USafeZone class. Change 3375599 on 2017/03/31 by Max.Chen Cine Camera: Update camera debug plane when property changes, rather rely soley on tick. This fixes a bug where sliding the value on the details panel doesn't update the debug plane in the viewport simultaneously. #jira UE-43543 Change 3375601 on 2017/03/31 by Arciel.Rekman Linux: switch to v9 cross-toolchain. Change 3375856 on 2017/04/01 by Andrew.Rodham Sequencer: Fixed 'formal parameter with requested alignment of 16 won't be aligned' Change 3375870 on 2017/04/01 by Andrew.Rodham Sequencer: Fixed explicit template instantiation ocurring before the complete definition of type's members - This resulted such members not being instantiated (and hence exported) when compiled with clang Change 3376114 on 2017/04/02 by Arciel.Rekman Linux: make source code accessor aware of clang 3.9 and 4.0. Change 3376138 on 2017/04/02 by Arciel.Rekman Linux: add clang to fedora deps (UE-42123). - PR #3273 submitted by cpyarger. Change 3376159 on 2017/04/02 by Arciel.Rekman Linux: some support for building on Debian Sid or Stretch (UE-35841). - Basd on PR #2790 by haimat. Change 3376163 on 2017/04/02 by Arciel.Rekman Linux: install latest clang on Arch (UE-42341). - This undoes PR #1905. - PR #2897 by SiebenCorgie. - PR #3302 by awesomeness872. - PR #3341 by patrickelectric. Change 3376167 on 2017/04/02 by Arciel.Rekman Add FreeBSD mem info (courtesy support for the out of tree build) (UE-42994). - PR #3378 by mdcasey. Change 3376168 on 2017/04/02 by Arciel.Rekman Linux: fixed VHACD Makefile on a case sensitive fs (UE-42905). - PR #3381 by slonopotamus. Change 3376177 on 2017/04/02 by Arciel.Rekman SlateDlg: case-insensitive comparison of filter extensions (UE-39477). - PR #3019 by aknarts. Change 3376178 on 2017/04/02 by Arciel.Rekman WebRTC: only x86_64 version exists for Linux. Change 3376245 on 2017/04/03 by Andrew.Rodham Sequencer: Re-enabled event order test Change 3376339 on 2017/04/03 by Matt.Kuhlenschmidt Fix crash during loading movie playback on DX12 due to not ever cleaning up old resources #jira UE-27026 Change 3376481 on 2017/04/03 by Alex.Delesky #jira UE-43495 - TMaps will now support customized key properties correctly. Change 3376741 on 2017/04/03 by Matt.Kuhlenschmidt Fix crash flushing font cache when loading a movie. This is no longer save on the slate movie thread #jira UE-43567 Change 3376763 on 2017/04/03 by Shaun.Kime Material Reroute nodes do not work for Texture Object Parameters as they return a base output type. Modified logic to now support this node type. #jira UE-43521 Change 3376836 on 2017/04/03 by Jamie.Dale Fixed text format history being clobbered by reference collection #jira UE-37513 Change 3376852 on 2017/04/03 by Nick.Darnell Paragon - Found a case where a user had marked a BindWidget property as Transient which prevents serializing the property binding now for widget fast mode. #jira UE-43564 Change 3377207 on 2017/04/03 by Jamie.Dale Desktop platform directory pickers are expected to return absolute paths File pickers return relative paths though, and we should make this consistent at some point. #jira UE-43588 Change 3377214 on 2017/04/03 by Matt.Kuhlenschmidt Fix movie player shutdown crash in non-editor builds #jira UE-43577 Change 3377299 on 2017/04/03 by Michael.Dupuis #jira UE-43586 : properties should be non transactional #jira UE-43559 Change 3378333 on 2017/04/04 by Michael.Dupuis #jira UE-43585 #jira UE-43586 Revert back to purple color Change 3378633 on 2017/04/04 by Matt.Kuhlenschmidt Resaved this asset to avoid zero engine version warnings Change 3378958 on 2017/04/04 by Nick.Darnell Automation - Fixing the race condition to finish compiling shaders on screenshots for UI. [CL 3379345 by Matt Kuhlenschmidt in Main branch]
2017-04-04 15:35:21 -04:00
return ThumbnailEditMode.Get() ? FEditorStyle::GetNoBrush() : SCCStateBrush;
}
void SAssetViewItem::HandleSourceControlProviderChanged(ISourceControlProvider& OldProvider, ISourceControlProvider& NewProvider)
{
OldProvider.UnregisterSourceControlStateChanged_Handle(SourceControlStateChangedDelegateHandle);
SourceControlStateChangedDelegateHandle = NewProvider.RegisterSourceControlStateChanged_Handle(FSourceControlStateChanged::FDelegate::CreateSP(this, &SAssetViewItem::HandleSourceControlStateChanged));
// Reset this so the state will be queried from the new provider on the next Tick
SourceControlStateDelay = 0.0f;
bSourceControlStateRequested = false;
SCCStateBrush = nullptr;
HandleSourceControlStateChanged();
}
void SAssetViewItem::HandleSourceControlStateChanged()
{
if ( ISourceControlModule::Get().IsEnabled() && AssetItem.IsValid() && (AssetItem->GetType() == EAssetItemType::Normal) && !AssetItem->IsTemporaryItem() && !FPackageName::IsScriptPackage(CachedPackageName) )
{
FSourceControlStatePtr SourceControlState = ISourceControlModule::Get().GetProvider().GetState(CachedPackageFileName, EStateCacheUsage::Use);
if(SourceControlState.IsValid())
{
SCCStateBrush = FEditorStyle::GetBrush(SourceControlState->GetIconName());
}
}
}
const FSlateBrush* SAssetViewItem::GetDirtyImage() const
{
return IsDirty() ? AssetDirtyBrush : NULL;
}
EVisibility SAssetViewItem::GetThumbnailEditModeUIVisibility() const
{
return !IsFolder() && ThumbnailEditMode.Get() == true ? EVisibility::Visible : EVisibility::Collapsed;
}
BEGIN_SLATE_FUNCTION_BUILD_OPTIMIZATION
TSharedRef<SWidget> SAssetViewItem::CreateToolTipWidget() const
{
if ( AssetItem.IsValid() )
{
if(OnGetCustomAssetToolTip.IsBound() && AssetItem->GetType() != EAssetItemType::Folder)
{
FAssetData& AssetData = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data;
return OnGetCustomAssetToolTip.Execute(AssetData);
}
else if(AssetItem->GetType() != EAssetItemType::Folder)
{
const FAssetData& AssetData = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data;
// The tooltip contains the name, class, path, and asset registry tags
const FText NameText = FText::FromName( AssetData.AssetName );
const FText ClassText = FText::Format( LOCTEXT("ClassName", "({0})"), GetAssetClassText() );
// Create a box to hold every line of info in the body of the tooltip
TSharedRef<SVerticalBox> InfoBox = SNew(SVerticalBox);
// Add Path
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3133954) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3077573 on 2016/08/04 by Nick.Darnell Removing some unused code, adding additional needed modules to editor tests. #rb none Change 3077580 on 2016/08/04 by Nick.Darnell Removing the test plugins, going to be recreating them in EngineTest. Change 3082659 on 2016/08/09 by Nick.Darnell Automation - Presets are now stored in json files stored in Config so they can be shared, and human readable. Working on screenshot automation, getting it where it needs to be to permit us to have repeatable tests for comarison. Removing the option to not take full size screenshots, that defeats the purpose of being able to compare them. #rb none Change 3082766 on 2016/08/09 by Jamie.Dale Fixed crashes when dealing with code-points outside the BMP on platforms with UTF-32 FStrings ICU always deals with its offsets as UTF-16 (as it always uses UTF-16 internally with icu::UnicodeString), so there were a couple of places in code (break iteration, and bidi detection) where we needed to adjust those UTF-16 offsets to UTF-32 offsets in the case where FString is UTF-32. #jira UE-33971 #rb James.Hopkin Change 3083067 on 2016/08/09 by Nick.Darnell Automation - Working on screenshot support, system now allows a lot more customization in terms of how large the shot is. #rb none Change 3084475 on 2016/08/10 by Richard.TalbotWatkin Fixed issue with ModelComponent replication in client/server PIE if BSP is rebuilt. ModelComponent now implements IsNameStableForNetworking and always returns true, as a level's model components will never be rebuilt during a game session. Brush poly normals are now only fixed up in Editor builds. #jira UE-34391 - No run animation on client that is not focused when running 2 player and dedicated server #codereview Matt.Kuhlenschmidt #rb none Change 3084661 on 2016/08/10 by Matt.Kuhlenschmidt Added grayscale texture importing support #rb none Change 3084774 on 2016/08/10 by Cody.Albert Adding controller support for ComboBox widget #jira UE-33826 #rb nick.darnell Change 3085716 on 2016/08/11 by Nick.Darnell UMG - Taking the Widget Component and Widget Interaction Components out of experimental. Removed old importing support for upgrading ancient versions of widget components. Removing parbola distortion, as users can now do whatever they want in their custom MID they can override the widget with. #rb none Change 3085733 on 2016/08/11 by Nick.Darnell UMG - Documenting the meta parameters allowed on widgets, like we do for regular UObjects. For binding widgets from blueprints you can now do BindWidget (unchanged), and to simplify binding widgets optionally, you can now just do (BindWidgetOptional), rather than the combination of BindWidget + OptionalWidget=true. Made generating the Design time wrapper call a little more efficent, by optimizing it away by force inlining a noop. Also added some additional checking when we forcefully set focus in UMG, to help people catch cases where they set focus, but didn't make the widget focusable. #rb none Change 3085734 on 2016/08/11 by Nick.Darnell Texture - Making GetDefaultMipMapBias a bit more efficent in the common case. #rb none Change 3085736 on 2016/08/11 by Nick.Darnell Static Lighting - Warning the user when they build lighting, but have bForceNoPrecomputedLighting set to true on the world settings. #rb none Change 3085737 on 2016/08/11 by Nick.Darnell Editor - code organization. #rb none Change 3085875 on 2016/08/11 by Nick.Darnell UMG - You can now use 'G' to toggle game mode on the designer so that you can disable and enable the dashed lines around containers. The option in the settings is now used as the default when you startup a designer. #rb none Change 3086209 on 2016/08/11 by Ben.Salem Make our automated test pass reporting more robust and pipe out to JSON in \saved\automation\logs\AutomationReport-{CL}-{Timestamp}.json format. #rb adric.worley, william.ewen Change 3086515 on 2016/08/11 by Nick.Darnell Editor - Fixing a crash in the curve table customization. If the row doesn't exist, it would crash, we now protect against that case. #rb Matt.Kuhlenschmidt Change 3087216 on 2016/08/12 by Jamie.Dale Fixed an issue where re-scanning a package file may leave old assets in the asset registry We didn't used to clear out anything associated with the old package before scanning the file, which could result in old assets being left if they'd since been removed from the package. This also exposes a PackageDeleted function to allow people to manually clear anything associated with a package (if doing some custom asset work). #rb Andrew.Rodham Change 3087219 on 2016/08/12 by Jamie.Dale Updated TextRenderComponent to support multiple font pages It used to use the correct UV data, but wouldn't set the correct texture page when rendering. It now creates MIDs for all of the texture pages used by the font, and will use these MIDs (which override the font page on the material) when rendering the text (batched on sequential index/vertex buffer data with the same texture page). #rb Matt.Kuhlenschmidt Change 3087308 on 2016/08/12 by Alex.Delesky #jira UE-14727 - Support for editing TSet properties in the editor's Details panel has been added. #rb Matt.Kuhlenschmidt Change 3089140 on 2016/08/15 by Jamie.Dale We now abort a directory watch if we lose access to the directory in question This prevents an infinite loop in the call to MsgWaitForMultipleObjectsEx if a watched directory is deleted. #jira UE-30172 #rb Andrew.Rodham Change 3089148 on 2016/08/15 by Alexis.Matte Allow fbx export of any actor type. #rb none #codereview dmitriy.dyomin Change 3089211 on 2016/08/15 by Jamie.Dale Unified access to the parent window for external dialogs A lot of places used to ad-hoc use the MainFrame window, even when they had access to a widget that may be belong to a different window. This could cause issues where an external dialog could appear behind a modal UE4 window (as it would appear above the MainFrame), and be inaccessible. You can now use IMainFrameModule::GetBestParentWindowHandleForDialogs to get the best window handle to use for an external dialog. This will either be the parent window for the given widget (if known), or failing that, the MainFrame window. #rb Andrew.Rodham Change 3089640 on 2016/08/15 by Jamie.Dale Wrapped UMaterialExpression::MenuCategories in WITH_EDITORONLY_DATA to avoid gathering it for game-only loc #rb none Change 3089661 on 2016/08/15 by Nick.Darnell Editor - There's a new view option "Show C++ Classes" in the content browser. Lets you hide all those C++ folders most folks probably don't care to see. #rb none Change 3089667 on 2016/08/15 by Cody.Albert Updating RoutePointerUpEvent to call OnDrop for touch events when dragging #jira UE-34709 #rb nick.darnell Change 3089694 on 2016/08/15 by Jamie.Dale Applied a fix to the ExcludeClasses setting in the loc gather #rb none Change 3089889 on 2016/08/15 by Nick.Darnell Automation - Continued work on the screenshot portion of the automation system. Going to start using the adapter information in the screenshots taken, otherwise we can't accurately test a plethora of devices sharing the same OS, with different capabilities. #rb none Change 3090256 on 2016/08/16 by Nick.Darnell Automation - working on screenshots. #rb none Change 3090322 on 2016/08/16 by Nick.Darnell Automation - Adding modified screenshot function. #rb none Change 3090335 on 2016/08/16 by Nick.Darnell Automation - The tests were determined to need to be shared afterall, but at least keeping them as plugins. Moved to Engine plugins. #rb none Change 3090881 on 2016/08/16 by Nick.Darnell Automation - Moving the content over and fixing up some code so that the AutoRimport tests work as expected. #rb none Change 3090884 on 2016/08/16 by Nick.Darnell Plugins - There's now support for generating a Content Only plugin from the new plugin wizard. #rb none Change 3090911 on 2016/08/16 by Nick.Darnell Feature Packs - If there's an error loading a manifest, it's now an error, not a warning. #rb none Change 3090913 on 2016/08/16 by Jamie.Dale Optimization and usability improvements of the MemoryProfiler2 tool - Optimized the processing of the Callgraph, Histogram, and Short lived allocations views. - The callgraph view is now using a virtualized tree view mapped to our own internal tree. This allows us to amortize the cost of adding nodes to the TreeView as the user views the nodes in the tree. In my own test, this took callgraph generation from ~45 seconds to ~5 seconds. - The Histogram view was vastly optimized via the use of a HashSet on the callstack filter, and the batch addition of unsorted callstacks that are sorted once at the end. In my own test, this took histogram generation from ~15 minutes to ~2 seconds. - The Short lived allocations view was optimized by avoiding redundant sorting, including maintaining a sorted order while inserting items, and instead doing a final sort at the end. The column selection was also optimized by avoiding copying the entire dataset just to resort it. In my own test, this took short lived allocation generation from ~1 minute to ~3 seconds. - Added a user-configurable list of allocator functions to trim (which now includes FMemory and operator new by default, and produces much cleaner callstacks). #jira UETOOL-948 #jira UETOOL-949 #rb James.Hopkin Change 3090962 on 2016/08/16 by Jamie.Dale Fixed double assignment of filter functions #rb none Change 3090989 on 2016/08/16 by Nick.Darnell Editor - Attempting to fix the build, non-unity issue I suspect. #rb none Change 3091754 on 2016/08/17 by Nick.Darnell FbxAutomationTestBuilder is now a plugin. Users won't see it unless they've enabled the plugin (so primarily internal QA). Reorganized the automation tools and testing menu to be a bit lower in the main menu, and gave them a more test sounding name. Additionally made some modifications to the workspace menu structure to allow generating just a subset of a workplace menu so that I could target where I wanted to insert all of the automation tool menu items, rather than just allowing the general placement of them under developer tools...etc. #rb none #codereview Alexis.Matte Change 3091758 on 2016/08/17 by Nick.Darnell Slate / Editor - Trying to make the editor less focus greedy. Now when there are notification popups and tabs attempt to grab your attention we now do a few activation ownership checks to ensure that it or a parent window actually owns activation. Not doing this has the nasty side effect of things like notifications and message log errors that popup while playing the game (if the game is in new window PIE), causing the game to be hidden, and focus returned to the editor. Ran into this a lot running the automation tests, the new PIE window that's launched to run tests is immediately hidden as soon as the tests log a warning or error or a notification about high res screenshots happens. #rb none #codereview Nick.Atamas,Matt.Kuhlenschmidt Change 3091829 on 2016/08/17 by Nick.Darnell Build - Attempting to repair the build. #rb none Change 3091920 on 2016/08/17 by Nick.Darnell Build - Another attempt at fixing the mac build. #rb none Change 3093380 on 2016/08/18 by Matt.Kuhlenschmidt Ignore group actors when checking for references to other actors when deleting. The check for references is designed for gameplay affecting references which groups are not. Having this show up for groups is annoying #rb none Change 3094474 on 2016/08/19 by Jamie.Dale Fixed PS4 error when building with USE_MALLOC_PROFILER, and optimized symbol name resolution for a build with USE_MALLOC_PROFILER enabled #jira UETOOL-951 #rb James.Hopkin Change 3094581 on 2016/08/19 by Jamie.Dale Added missing allocator filter needed by PS4 profiles #rb none Change 3094681 on 2016/08/19 by Richard.TalbotWatkin Fixed issue where painting override vertex colors on a SpeedTree mesh would cause its wind animation to cease. The OverrideVertexColors vertex factory needed to be registered with the SpeedTree renderer. #jira UE-32762 - Custom VertexPaint on SpeedTrees interferes with wind animation #rb none Change 3095163 on 2016/08/19 by Trung.Le #jira UE-20849: Added tooltips to the inputs of the Material final result node #rb matt.kuhlenschmidt Change 3095285 on 2016/08/19 by Trung.Le #jira UE-20849 In SGraphNodeMaterialResult, renamed ToolTip to ToolTipWidget so we're not hiding class member #rb none Change 3095344 on 2016/08/19 by Alexis.Matte #jira UE-34690 When using the optionnal matrix to change the scene root node, we have to flush the fbx evaluation engine. Add also a new option to allow the user to automatically convert the fbx scene to unreal unit (centimeter). #rb none #codereview matt.kuhlenschmidt Change 3096162 on 2016/08/22 by Alexis.Matte #jira UE-34763 Remove offending no-action combo box entry when the json file is readonly. Also clean up other combo box menu. #rb none #codereview matt.kuhlenschmidt Change 3096261 on 2016/08/22 by Alexis.Matte #jira UE-33121 Make sure re-import all and import all fix all the issue before starting the job. So it get not interrupt during the process. #rb lina.halper #codereview lina.halper Change 3096344 on 2016/08/22 by Jamie.Dale NSString conversion fix for UTF-32 strings containing characters outside of the BMP #jira UE-33971 #rb Peter.Sauerbrei, James.Hopkin Change 3096605 on 2016/08/22 by Alex.Delesky #jira UE-34787 - Dropdown menus in standalone programs will now correctly display tooltips if they have any. #rb Matt.Kuhlenschmidt Change 3096615 on 2016/08/22 by Alex.Delesky #jira UE-33334 - Scrolling up on the mouse wheel when using the orbit camera should no longer move away from the orbit point when the camera moves too close to the orbit origin. #rb Matt.Kuhlenschmidt Change 3096619 on 2016/08/22 by Alex.Delesky #jira UE-34084 - Structs containing an enum with a value that contains a whitespace character will now serialize correctly when copied from the Details Panel. #rb Matt.Kuhlenschmidt Change 3097644 on 2016/08/23 by Matt.Kuhlenschmidt PR #2729: Fix a typo in the comment (Contributed by adcentury) #rb none Change 3097648 on 2016/08/23 by Matt.Kuhlenschmidt PR #2726: Undef unused macros (Contributed by shrimpy56) #rb none Change 3097697 on 2016/08/23 by Matt.Kuhlenschmidt Guard against crash when details panels rebuild when their customizations have been torn down https://jira.ol.epicgames.net/browse/UE-35048 #rb none Change 3097757 on 2016/08/23 by Alex.Delesky #jira UE-14727 - Support for editing TMap properties in the editor's Details panel has been added. This change also removes the Duplicate option from TSet elements, and disallows entry of duplicates elements into a TSet or duplicate keys into a TMap #rb Matt.Kuhlenschmidt Change 3098164 on 2016/08/23 by Alexis.Matte #jira UE-34686 Fbx importer bImportMeshesInBoneHierarchy is used also by the animation. #rb none #codereview matt.kuhlenschmidt Change 3098502 on 2016/08/23 by Alexis.Matte #jira UE-30951 Fbx option dialog, we disable the option to bake pivot if transform vertex position is true #rb none #codereview matt.kuhlenschmidt Change 3099986 on 2016/08/24 by Jamie.Dale Fixing non-editor builds #rb none Change 3101138 on 2016/08/25 by Matt.Kuhlenschmidt Fixed viewport redraw callback not being called when certian property modifications occur in the details panel (reset to default, array size changes, etc) #rb none Change 3101280 on 2016/08/25 by Jamie.Dale Fixed crash when counting memory over internationalization meta-data - The serialization code only used to handle loading or saving, now it handles loading or not loading. - The Type of the meta-data wasn't set by all constructors. For safety it has been removed and replaced with a virtual function that the derived types override. #rb James.Hopkin Change 3101283 on 2016/08/25 by Jamie.Dale MProf2 platform and symbol parsing improvements - Updated ISymbolParser to work with lazy symbol resolution (handled via the UI when looking at full callstacks). - Added a PS4 symbol parser which handles performing full file/line resolution for symbols. - Removed all the V3 file format support and legacy platform handling. - Optimized FStreamInfo.GetNameIndex so it can be used by the lazy symbol fixup. #rb James.Hopkin Change 3101586 on 2016/08/25 by Jamie.Dale Small code cleanup and path normalization #rb James.Hopkin Change 3101837 on 2016/08/25 by Alexis.Matte #jira UE-35101 we now store the sourceanimationname to retrieve the correct animtrack when re-importing animations #rb none #codereview matt.kuhlenschmidt Change 3102537 on 2016/08/26 by Jamie.Dale Fix for potential crash in FICUCamelCaseBreakIterator In platforms with UTF-32 strings, the index returned by FICUTextCharacterIterator may not be in the same range as FString, so we need to call InternalIndexToSourceIndex to ensure that it is. #rb James.Hopkin Change 3102582 on 2016/08/26 by Matt.Kuhlenschmidt Log the freetype version when it starts up (for debugging purposes) #rb none Change 3102657 on 2016/08/26 by Alexis.Matte #jira UE-29177 When re-importing a texture we want to notify materials using this texture so they can recompile the shader. #review-3101585 @uriel.doyon #rb matt.kuhlenschmidt Change 3102704 on 2016/08/26 by Jamie.Dale Added symbol meta-data support to MProf2 You can now define platform specific meta-data using FPlatformStackWalk::GetSymbolMetaData, which is then stored within the generated .mprof file. PS4 uses this meta-data to say where the original .self file can be found, so that MProf2 can usually automatically load the .self file without having to bother the user. #rb James.Hopkin Change 3102878 on 2016/08/26 by Matt.Kuhlenschmidt Added support for outline fonts - An outline size (in slate units), optional material and optional fill color can be specified with each font info. - Outlines do not contribute to measurement directly so the text measuring and shaping methods have been modified to account for outlines - Fixed a bug where font materials do not work properly if part of the font's rendered glyphs were in a different atlas #rb jamie.dale Change 3102879 on 2016/08/26 by Jamie.Dale Bumped the MProf2 version so we can tell which build of the tool can load v6 mprof files #rb none Change 3102960 on 2016/08/26 by Alexis.Matte build fix #rb none Change 3103032 on 2016/08/26 by Jamie.Dale Fixed SEditableText and SMultiLineEditableText not setting the correct foreground color when painting #jira UE-34936 #rb Matt.Kuhlenschmidt Change 3103278 on 2016/08/26 by Jamie.Dale Fixing Clang warnings #rb none Change 3104211 on 2016/08/29 by Ben.Marsh Add build script for automated tests, and create settings file for Dev-Editor which adds an agent pool for running them. #rb none Change 3104290 on 2016/08/29 by Alex.Delesky Adding additional documentation accessible from the editor for TSet and TMap properties, along with a quick clarification on container properties to let the user know what kind of container they're working with. #rb Matt.Kuhlenschmidt Change 3104292 on 2016/08/29 by Alex.Delesky #jira UE-35039 - Command/Control user keybindings will no longer flip-flop when the editor is opened on Mac. #rb Matt.Kuhlenschmidt Change 3104294 on 2016/08/29 by Alex.Delesky #jira UE-34952 - The user will no longer encounter an ensure when setting the value of Period equal to or less than 0 on the circular throbber widget #rb Matt.Kuhlenschmidt Change 3104295 on 2016/08/29 by Matt.Kuhlenschmidt PR #2682: Remove unused bUseDesktopResolutionForFullscreen (Contributed by stfx) #rb none Change 3104296 on 2016/08/29 by Alex.Delesky #jira UE-35160 - The Auto Distance Error for LOD meshes can now be set to any value larger than zero. #rb Matt.Kuhlenschmidt Change 3104348 on 2016/08/29 by Matt.Kuhlenschmidt Added the ability to clear the preview mesh on a material instance. Previously there was no way to null it out. #rb none Change 3104355 on 2016/08/29 by Matt.Kuhlenschmidt Guard against crash with invalid path to the default physical material. Just create a new one if it doesnt exist and warn about it. #rb none #jira UE-31865 Change 3104396 on 2016/08/29 by Ben.Marsh Fix incrorrect agent names for running automated tests Change 3104610 on 2016/08/29 by Alex.Delesky Fix for AutomationTool compile editor from changes introduced today. #rb None Change 3104611 on 2016/08/29 by Michael.Dupuis #jira UETOOL-253 #rb Alexis.Matte Change 3105826 on 2016/08/30 by Gareth.Martin Added console variables to discard grass and/or scalable foliage data on load #jira UE-35086 #rb Benn Change 3106126 on 2016/08/30 by Matt.Kuhlenschmidt Eliminated bad code duplication between retainer widgets and element batcher #rb none #codereview nick.darnell Change 3106449 on 2016/08/30 by Michael.Dupuis #jira UETOOL-229 Added generic command icons used in Edit Menu (including contextual menu) #rb Alexis.Matte Change 3106966 on 2016/08/30 by Jamie.Dale Fixed FApp::IsAuthorizedUser not considering the SessionOwner override #rb Max.Preussner Change 3107687 on 2016/08/31 by Michael.Dupuis Checkout/Make Writable on proper config file #rb Matt Kuhlenschmidt Change 3107736 on 2016/08/31 by Matt.Kuhlenschmidt Fixed mode typos in the lerp instruction #rb none Change 3107830 on 2016/08/31 by Matt.Kuhlenschmidt Logging and guard against UEditorEngine::TeardownPlaySession crash. #rb none https://jira.ol.epicgames.net/browse/UE-35325 Change 3107912 on 2016/08/31 by Alex.Delesky #jira UE-35181 - Normalizing paths when retrieving absolute filenames for source control operations. #rb Matt.Kuhlenschmidt Change 3107986 on 2016/08/31 by Matt.Kuhlenschmidt Removed PropertyTestObject.h out of UnrealEd.h so you dont have to compile the entire editor when changing this one file. #rb none Change 3108027 on 2016/08/31 by Chris.Wood Re-added lost doc comment for analytics event "Engine.AbnormalShutdown". #rb none - just a comment in a cpp file #codereview wes.hunt Change 3108580 on 2016/08/31 by Mike.Fricker Deleted the "Live Editor" plugins from UE4 - These were undocumented, buggy and never finished, and we have no plans to complete them - Both the "LiveEditor" and "LiveEditorListenServer" plugins were deleted, along with related icon files #codereview matt.kuhlenschmidt #rb matt.kuhlenschmidt Change 3108604 on 2016/08/31 by Mike.Fricker Added new "MIDI Device" plugin (disabled by default) - This is a simple MIDI interface that allows you to receive MIDI events from devices connected to your computer - Currently only input is supported. In the future we might allow for output, as well. - In Blueprints, here's how to use it: - Look for "MIDI Device Manager" in the Blueprint RMB menu - Call "Find MIDI Devices" to choose your favorite device. Break the "Found MIDI Device" struct to see what's available. - Then call "Create MIDI Device Controller" for the device you want. Store that in a variable. - On your MIDI Device Controller, bind your own Event to the "On MIDI Event" event. This will be called every game Tick when there is at least one new MIDI event to receive. - Process the data passed into the Event to make your project do stuff! - This plugin makes use of the "PortMidi" third party library (which already existed in UE4 -- it was used by the now-deprecated 'LiveEditor' plugin) #codereview matt.kuhlenschmidt #rb none Change 3108760 on 2016/08/31 by Alexis.Matte #jira UE-25840 Fbx export collision mesh, we now export collision: box, sphere, capsule and convex mesh. There is an option in the editor preference to enable the export of collisions, default value is false. #rb none #codereview matt.kuhlenschmidt Change 3109006 on 2016/08/31 by Alex.Delesky #ignore Source Control rename test - initial commit Change 3109044 on 2016/08/31 by Alex.Delesky #ignore Testing asset rename from P4 to observe correct behavior. #rb none Change 3109048 on 2016/08/31 by Alex.Delesky #ignore Testing P4 rename to identify correct behavior #rb none Change 3110044 on 2016/09/01 by Gareth.Martin Fixed painting foliage on blocking "query" actors not working #jira UE-33852 #rb Allan.Bentham Change 3110133 on 2016/09/01 by Alexis.Matte Fix crash in function GetForceRecompileTextureIdsHash #rb none #codereview jamie.dale Change 3111848 on 2016/09/02 by Mike.Fricker MIDI Device plugin: Fixed compilation error on Clang compilers (Mac, Linux) - Fixed bad enum cast #rb none Change 3111995 on 2016/09/02 by Michael.Dupuis #jira UE-35263 Do not try selecting the actor if the actor is in the blueprint Properly Refresh the ToopTip & Hyper Link to take into account blueprint recreation process #rb Alexis Matte Change 3112280 on 2016/09/02 by Michael.Dupuis Call MakeWritable if source control fail #rb Alexis Matte Change 3112335 on 2016/09/02 by Cody.Albert Updating cursor hiding logic to not improperly hide cursor when left clicking in ortho mode #jira UE-35306 #rb none Change 3112478 on 2016/09/02 by Alexis.Matte #jira UE-20059 Use a base material to import fbx material. #rb uriel.doyon #codereview matt.kuhlenschmidt #1468 Github pull request number Change 3113912 on 2016/09/06 by Michael.Dupuis #jira UE-32288 Fixed Console params display #rb Alexis Matte Change 3114026 on 2016/09/06 by Alex.Delesky #jira UE-35123 - The Details panel in a Texture editor or Simple Asset editor window will no longer disappear when the inspected asset is imported again. #rb Matt.Kuhlenschmidt Change 3114032 on 2016/09/06 by Alex.Delesky PR #2733: Improved the project launcher progress page (Contributed by projectgheist) #jira UE-34027 #rb Matt.Kuhlenschmidt Change 3114034 on 2016/09/06 by Alex.Delesky #jira UE-35265 - Copying a comment node from a Material Function and pasting it inside a Material will no longer render the Material unsaveable #rb Matt.Kuhlenschmidt Change 3114071 on 2016/09/06 by Nick.Darnell [AUTOMATED TEST] Automatic checkin, testing functionality. Change 3114109 on 2016/09/06 by Nick.Darnell [AUTOMATED TEST] Automatic checkin, testing functionality. Change 3114562 on 2016/09/06 by Nick.Darnell Adding LevelEditor to the FbxAutomationTestBuilder to fix a compiler issue. #rb none Change 3114701 on 2016/09/06 by Michael.Dupuis #jira UE-31988 add const to all usage of TArray<ItemType>* as it was done in SListView #rb Alexis Matte Change 3114861 on 2016/09/06 by Matt.Kuhlenschmidt Prevent non-thread safe slate code from running on the slate loading thread #rb none Change 3115698 on 2016/09/07 by Nick.Darnell Make sure the commands are available - during functional testing that was found to not always be the case. #rb none Change 3115719 on 2016/09/07 by Nick.Darnell Adding an IsRegistered command to commands. #rb none Change 3115721 on 2016/09/07 by Nick.Darnell Adding a new built VirtualReality feature pack, this new one contains the update manifest that will parse correctly. #rb none Change 3115722 on 2016/09/07 by Nick.Darnell IsBindWidgetProperty now returns false if the property passed in is null. #rb none Change 3115734 on 2016/09/07 by Alexis.Matte #jira UE-30166 Support fbx sdk 2017 #rb none Change 3115737 on 2016/09/07 by Nick.Darnell Adding an image comparer for screenshots. Removing some content from EngineTest. #rb none Change 3115743 on 2016/09/07 by Nick.Darnell Checkpointing a bunch of progress towards a screenshot comparison workflow that allows us to diff screenshots taken on various platforms and hardware. Disabling many tests that are not passing. Updating a few tests to log better errors, and fixed a few tests with easy bugs in them so they would start passing again. All editor tests currently passing! #rb none Change 3115748 on 2016/09/07 by Nick.Darnell Making the RuntimeTests plugin a Developer module, so that it doesn't get included in shipping builds. #rb none Change 3115789 on 2016/09/07 by Jamie.Dale We now favor Traditional Chinese for Hong Kong and Macau #rb James.Hopkin Change 3115799 on 2016/09/07 by Jamie.Dale Removed validity check on source cultures when remapping, as platforms may use invalid cultures that need to be remapped #rb James.Hopkin Change 3115826 on 2016/09/07 by Nick.Darnell Adding missing files. #rb none Change 3115838 on 2016/09/07 by Nick.Darnell Back out revision 6 from //UE4/Dev-Editor/Engine/Source/Runtime/UMG/Public/Components/WidgetInteractionComponent.h #rb none Change 3116007 on 2016/09/07 by Alexis.Matte build fix #rb none Change 3116057 on 2016/09/07 by Jamie.Dale Fixed widget snapshot messages so they appear in the message debugger #rb none Change 3116112 on 2016/09/07 by Nick.Darnell Removing the FbxAutomationBuilder file that go recreated on a merge from main. #rb none Change 3116365 on 2016/09/07 by Michael.Dupuis #jira UE-20765 Added missing class flag to test (CLASS_CONFIG) and change a bit how the checkout/make writable work. #codereview Matt.Kuhlenschmidt #rb Alexis.Matte Change 3116622 on 2016/09/07 by Alexis.Matte #jira UE-35608 Use the same naming convention when trying to retrieve uv channel by name. #rb matt.kuhlenschmidt Change 3116638 on 2016/09/07 by Jamie.Dale Ensured that manifests and archives don't try and load data that they can't parse #rb none Change 3117397 on 2016/09/08 by Gareth.Martin Added rotate and blend support to the landscape mirror tool #jira UE-34829 #rb Jack.Porter Change 3117459 on 2016/09/08 by Gareth.Martin Fixed crash saving a hidden landscape level with an offset (cloned from 4.13.1) #jira UE-35301 #rb Jack.Porter Change 3117462 on 2016/09/08 by Gareth.Martin Fixed invisible landscape components and crashes when tessellation is enabled (cloned from 4.13.1) #jira UE-35494 #rb Benn.Gallagher Change 3117583 on 2016/09/08 by Nick.Darnell Continued work on automation support for screenshot comparison, stubbing in a commandlet that can be run after automation tests that would perform the diffing. Need to finish rigging it up so that deltas and results can be dumped out somewhere and consumed by a tool to approve shots. #rb none Change 3117595 on 2016/09/08 by Nick.Darnell Updating the build script for AutomatedTests, going to see if this works! #rb none Change 3117808 on 2016/09/08 by Nick.Darnell Adding header includes for async. #rb none Change 3117812 on 2016/09/08 by Matt.Kuhlenschmidt Partially taken from Pr 2381 Fixed Array Properties to handle duplicates properly and fixed Material Parameter Collection duplicate Guid problem. #rb none Change 3117851 on 2016/09/08 by Jamie.Dale Silenced some redundant P4 errors that could be generated when running a stat update on a file Some of the options produced errors when working with newly added files. These errors are now downgraded to infos like they are for the main stat command. #rb Ben.Marsh #codereview Thomas.Sarkanen Change 3117853 on 2016/09/08 by Gareth.Martin Clean up landscape includes and PCH #rb steve.robb Change 3117859 on 2016/09/08 by Alex.Delesky #jira UE-35321 - Minimized windows will no longer act like they are visible when determining what widgets are currently underneath the mouse. #rb Nick.Darnell Change 3117997 on 2016/09/08 by Nick.Darnell Updating the automation tests build script to use Editor-Cmd #rb none Change 3118005 on 2016/09/08 by Matt.Kuhlenschmidt Properly reference graph node on material expressions so they are not GC'd while an expression still uses them #jira UE-35362 #rb none Change 3118043 on 2016/09/08 by Alex.Delesky #jira UE-30649 - Removed unnecessary returns from UWidget API. PR #2377: fix widget bug. (Contributed by dorgonman) #rb none Change 3118045 on 2016/09/08 by Matt.Kuhlenschmidt Guard against crash saving config during level editor shutdown #rb none #jira UE-35605 Change 3118074 on 2016/09/08 by Matt.Kuhlenschmidt PR #2783: Removed #pragme once from CPP files (Contributed by projectgheist) #rb none Change 3118078 on 2016/09/08 by Michael.Dupuis #jira UE-32065 Removed the -windows that was added as a default option and add it simply if fullscreen is not specified #rb Alexis.Matte Change 3118080 on 2016/09/08 by Michael.Dupuis #jira UE-31131 Do not show a contextual menu if the menu is empty #rb Alexis.Matte Change 3118087 on 2016/09/08 by Matt.Kuhlenschmidt Constify this method #rb none Change 3118166 on 2016/09/08 by Nick.Darnell Trying additional command options for the build machine for automation. #rb none Change 3118222 on 2016/09/08 by Matt.Kuhlenschmidt Fix actor delete during mesh paint not working during undo #rb none #jira UE-35684 Change 3118298 on 2016/09/08 by Alexis.Matte #jira UE-35302 Export all LODs for static mesh when there is no force LOD #rb uriel.doyon Change 3118325 on 2016/09/08 by Matt.Kuhlenschmidt Fixed reset to default not appearing for slate brushes #rb none #jira UE-34958 Change 3119321 on 2016/09/09 by Matt.Kuhlenschmidt Guard against crash with an invalid world trying to be opened from the content browser #rb none https://jira.ol.epicgames.net/browse/UE-35712 Change 3119433 on 2016/09/09 by Nick.Darnell Removing a hack added by Paragon that prevents applications from resizing in real time as the user drags the size of the window around. #rb Matt.Kuklenschmidt #jira UE-35789 Change 3119448 on 2016/09/09 by Alex.Delesky When simulating touch events using the mouse, clicking the mouse will no longer let a drag operation continue. This should also allow the finger that started a drag to continue dragging items until it is released from the surface. #rb Nick.Darnell Change 3119522 on 2016/09/09 by Jamie.Dale Fixed FDetailCategoryImpl::ShouldBeExpanded not honoring bShouldBeInitiallyCollapsed when bRestoreExpansionState was true #rb Matt.Kuhlenschmidt Change 3119528 on 2016/09/09 by Jamie.Dale Some UI re-work to the localization dashboard This makes a better use of the available space, and will make it easier to make some other planned changes in the future. #rb James.Hopkin Change 3119861 on 2016/09/09 by Michael.Dupuis #jira UE-9284 Added the Play/Stop button on the thumbnail #rb Alexis.Matte Change 3120027 on 2016/09/09 by Alexis.Matte incorporate some fixes from licensee for LOD group re-import workflow #jira UE-32268 #rb uriel.doyon #codereview matt.kuhlenschmidt Change 3120845 on 2016/09/12 by Gareth.Martin Fixed crash in landscape editor when "Early Z" is enabled (cloned from 4.13.1) #jira UE-35850 #rb Allan.Bentham Change 3120980 on 2016/09/12 by Nick.Darnell Adding a commandlet that is runnable for comparing screenshots. Adding comparing and exporting capability to the screenshot manager. #rb none Change 3120992 on 2016/09/12 by Alex.Delesky #jira UE-35575 - TScriptInterface UProperties now have asset picker support. #rb Matt.Kuhlenschmidt Change 3121074 on 2016/09/12 by Michael.Dupuis #jira UE-30092 Added path length in error message when typing Added display of current filepath lenght for cooking #rb Alexis.Matte Change 3121113 on 2016/09/12 by Nick.Darnell Adding some placeholder examples to show people how to author tests in EngineTest. #rb none Change 3121152 on 2016/09/12 by Gareth.Martin Added TElementType, TIsContiguousContainer traits Added GetData(), GetNum() generic functions #rb Steve.Robb Change 3121702 on 2016/09/12 by Jamie.Dale Optimized a loop over a sorted list to instead use a binary search This speeds up the short-lived allocation view generation. We also now dump the exception information to the Trace log when in a non-debug build. #rb James.Hopkin Change 3121721 on 2016/09/12 by Jamie.Dale We now set the window mode first when resizing the game viewport to ensure that the work area is correct Fullscreen windows can affect the available work area size, which can break centering when moving between fullscreen and windowed mode. #jira UE-32842 #rb Matt.Kuhlenschmidt Change 3122578 on 2016/09/13 by Jamie.Dale Small code clean up Removed a use of the placement new style array addition. #rb none Change 3122634 on 2016/09/13 by Jamie.Dale We now immediately update DefaultConfigCheckOutNeeded when checking out/making writable the config file, rather than wait for the text tick #jira UE-34865 #rb James.Hopkin Change 3122656 on 2016/09/13 by Jamie.Dale Fixed array combo button not focusing its contents, which prevented the menu closing correctly #jira UE-33667 #rb none Change 3122661 on 2016/09/13 by Nick.Darnell Checkpointing additional work on the screenshot compare dialog, moving some Directory path picker widget into a more common area. Moving some "Find the best top level window handle for this widget for dialogs' code out of the main frame module and into Slate Application where it probably belongs. #rb none Change 3122678 on 2016/09/13 by Jamie.Dale Fixing CIS error on Clang CoreUObject needs to be included before USTRUCT can be used. #rb none Change 3122686 on 2016/09/13 by Jamie.Dale Fixing CIS error on Clang CoreUObject needs to be included before UCLASS can be used. #rb none Change 3122728 on 2016/09/13 by Nick.Darnell UMG - Exposing a trace channel for the WIC, defaults to Visibility. Improving how the WIC handles the cursor moving off the widget, it now maintains the last hit location rather than 0,0 which would cause things like dragged Sliders to reset to the left. Ideally - the WIC would know the underlying widget has capture and continue to fake collision against an imaginary plane to simulate a continuous surface. #jira UE-35167 #rb none Change 3122775 on 2016/09/13 by Nick.Darnell Automation - Fixing an error with the ScreenshotTools plugin, needed to add an the include for Engine.h to the PCH. #rb none Change 3122779 on 2016/09/13 by Nick.Darnell Widgetnimation - Exposing more of the class to C++. #rb none Change 3122793 on 2016/09/13 by Nick.Darnell Fixing a crash in UWidgetComponent::UpdateRenderTarget updating a null material instance. #jira UE-35796 #rb none Change 3122834 on 2016/09/13 by Matt.Kuhlenschmidt Fixed crash undoing moves after bsp creation https://jira.ol.epicgames.net/browse/UE-35880 #rb none Change 3122835 on 2016/09/13 by Nick.Darnell Reverting changes to WIdgetAnimation #rb none Change 3122897 on 2016/09/13 by Matt.Kuhlenschmidt Fixed non-editor compile error #rb none Change 3122988 on 2016/09/13 by Alexis.Matte Material workflow refactor #jira UETOOL-774 #rb matt.kuhlenschmidt Change 3123006 on 2016/09/13 by Jamie.Dale Fixed dynamic collections not returning anything #jira UE-35869 #rb James.Hopkin Change 3123145 on 2016/09/13 by Alexis.Matte Fix fbx automation test. The test found a regression cause by CL: 3120027. In the case where we dont have a LODGroup we dont want to add LODs before the build. #jira UE-32268 #rb none #codereview matt.kuhlenschmidt Change 3123148 on 2016/09/13 by Matt.Kuhlenschmidt Fix fortnite compile error #rb alexis.matte Change 3123208 on 2016/09/13 by Jamie.Dale The 'find culprit' dialog now honors the user choice #rb RichTW Change 3123545 on 2016/09/13 by Nick.Darnell Slate - Adjusting the window dialog host finding code to do a better job of searching for slate windows and excluding popups and non-regular windows. #rb none Change 3124494 on 2016/09/14 by Jamie.Dale Added ~ to the list of invalid characters for object/package names #jira UE-12908 #rb Matt.Kuhlenschmidt Change 3124513 on 2016/09/14 by Gareth.Martin Implemented filter to allow painting foliage on other foliage - Altered foliage filters so it will no longer paint on object types which don't have a filter, e.g. skeletal meshes #rb Allan.Bentham #2472 Change 3124523 on 2016/09/14 by Jamie.Dale PR #2724: Fix ScrollBox right mouse/touch grab scrolling functionality (Contributed by aarmbruster) #jira UE-34811 #jira UE-32082 #rb none Change 3124607 on 2016/09/14 by Nick.Darnell UMG - Adding BoundsScale support to the WidgetComponent's CalcBounds function. #jira UE-35667 #rb none Change 3124785 on 2016/09/14 by Gareth.Martin Made some foliage functions editor-only to fix non-editor build #rb none Change 3124795 on 2016/09/14 by Gareth.Martin Saved/loaded the new foliage filter #rb Allan.Bentham #2472 Change 3124915 on 2016/09/14 by Michael.Dupuis #jira UE-19511 Add support for Add to source control on DefaultEditorPerProjectUserSettings file Remove CheckoutNotice when not editing a DefaultXXXX.ini file Edit proper config file either we're modifying settings from a Default file or Local user file #codereview Matt.Kuhlenschmidt Max.Preussner #rb Alexis.Matte Change 3125266 on 2016/09/14 by Jamie.Dale Fixed ULocalizationTarget::DeleteFiles not deleting cultures, and using SCC wrong #rb none Change 3125385 on 2016/09/14 by Matt.Kuhlenschmidt Fix crash when using SaveAs to save over top of an existing level #rb none https://jira.ol.epicgames.net/browse/UE-35919 https://jira.ol.epicgames.net/browse/UE-35921 Change 3125487 on 2016/09/14 by Alexis.Matte Fix cook content, regression induce by the material workflow refactor #rb matt.kuhlenschmidt Change 3126217 on 2016/09/15 by Gareth.Martin Unset bHasPerInstanceHitProxies on landscape grass components, as they don't have individually editable instances #rb Allan.Bentham Change 3126311 on 2016/09/15 by Jamie.Dale Placement mode fixes - The display name is now cached correctly on construction, and the FPlaceableItem instance used with SPlacementAssetEntry is now const. - Ensured that the ID used by FPlaceableItem could never overflow. - Fixed some types being missing from the "All Classes" list. - Fixed the escape key not cancelling the search. #jira UE-35972 #rb James.Hopkin Change 3126325 on 2016/09/15 by Jamie.Dale Made sure that UWorld::GetAssetRegistryTags called its Super function so that properties tagged as AssetRegistrySearchable will be added. #rb Andrew.Rodham Change 3126403 on 2016/09/15 by Gareth.Martin Added Find and Contains functions to TBitArray #rb Steve.Robb Change 3126405 on 2016/09/15 by Gareth.Martin Allowed instances of Hierarchical Instanced Mesh Components to be moved around with the transform widget in the blueprint editor - Just like regular instanced mesh components! Also fixed not being able to move instances of an instanced mesh component when it is the root component Also also fixed Hierarchical Instanced Mesh Components not flushing their async tree build on saving (this was causing log spam from PostLoad when dragging instances around as the blueprint would constantly reinstance the component before the async tree build had finished) #jira UE-29357 #rb Allan.Bentham Change 3126444 on 2016/09/15 by Jamie.Dale Fixed the loc dashboard configs not working with SCC This isn't a great solution, but the whole way the loc dashboard manages its config data is in need of an overhaul. #rb none Change 3126446 on 2016/09/15 by Jamie.Dale Fixed loc dashboard game and engine targets sharing the same expansion settting #rb none Change 3126555 on 2016/09/15 by Chris.Wood Removed WER from Windows crash handling. Crashes saved to log folder and passed to CRC with explicit path. [UE-34470] - Investigate WER settings and if they can conflict with CRC on Windows #rb Steve.Robb Change 3126586 on 2016/09/15 by Gareth.Martin Fixed missing landscape components when using a LODBias (cloned from 4.13.1) #jira UE-35873 #rb Jack.Porter Change 3126610 on 2016/09/15 by Jamie.Dale Stopped PS4 from always staging all ICU data files #rb Marcus.Wassmer Change 3126779 on 2016/09/15 by Michael.Dupuis #jira UE-32914 Improve the help text to provide usage examples and params #rb Alexis.Matte Change 3126849 on 2016/09/15 by Matt.Kuhlenschmidt Fix font material and outline font material not being animatable in sequencer #rb frank.fella Change 3126858 on 2016/09/15 by Matt.Kuhlenschmidt File not saved #rb none Change 3127001 on 2016/09/15 by Matt.Kuhlenschmidt Fixed reset to default state still not appearing in all cases after changing a property. #rb none Change 3127038 on 2016/09/15 by Nick.Darnell UMG - Improving focus setting for users on widgets. If we're unable to set the focus immediately, possibly because the user is setting focus in the Construct callback before the widget is in the tree, we now update the SlateOperations FReply on LocalPlayer to set focus next frame when it's more likely the widget will become focusable. #rb none Change 3127061 on 2016/09/15 by Nick.Darnell Slate - We now have a reentrancy guard in TPanelChildren to avoid the broad cases where users might attempt to remove children while all children are being removed. Which is an easy case to engineer if you've got widgets spawning children managed by another widget, that all go away at the same time, thus causing the parent to attempt to cleanup children. The end result is a delete while deleting. So now TPanelChildren prevents adds/removes while emptying the list of children. #jira UE-35726 #rb Matt.Kuchlenschmidt Change 3127205 on 2016/09/15 by Alex.Delesky #jira UE-18013 - Users can now add Textures, Materials, or Sprites to a Widget Blueprint directly from the content browser. This also fixes a few issues with adding Widget Blueprints to another Widget BP from the content browser, such as adding a widget to itself or creating a circular dependency. #rb Nick.Darnell Change 3127971 on 2016/09/16 by Matt.Kuhlenschmidt Fix crash in scene outliner if actors become invalid #rb none https://jira.ol.epicgames.net/browse/UE-35932 Change 3128011 on 2016/09/16 by Matt.Kuhlenschmidt Added guards for crashes accessing slate resources for deleted uobjects #rb nick.darnell Change 3128067 on 2016/09/16 by Michael.Dupuis #jira UE-34158 Add an option to auto expand advanced details #rb Alexis.Matte Change 3128073 on 2016/09/16 by Michael.Dupuis #jira UE-1145 Set Save As to Ctrl + Alt + S Set Save All to Ctrl + Shift + S Set Save Current to Ctrl + S #rb Alexis.Matte Change 3128117 on 2016/09/16 by Jamie.Dale Updated the pin-type filter combo to filter on both the localized and source type descriptions #jira UE-36081 #rb none Change 3128177 on 2016/09/16 by Alexis.Matte #jira UE-35946 Remove unnecessary GetReadValue call with bad parameter. The read value call is cache so subsequent call was returning the bad cache value. #rb michael.dupuis #codereview matt.kuhlenschmidt Change 3128387 on 2016/09/16 by Gareth.Martin Fixed location and rotation of arrow widget in the landscape mirror tool when using one of the new "Rotate" modes #jira UE-36093 #rb none Change 3128445 on 2016/09/16 by Matt.Kuhlenschmidt Guard against scene outliner crash. Print out tree when items appear twice. https://jira.ol.epicgames.net/browse/UE-35935 #rb none Change 3128454 on 2016/09/16 by Matt.Kuhlenschmidt Remove category for WindowTitleBarArea. It is very custom for internal use and should not be a top level widget #rb none Change 3128482 on 2016/09/16 by Michael.Dupuis Added new key binding for generic Save, Save As Added new key binding for Save All for the content browser #rb Alexis.Matte (approved by MattK) Change 3128560 on 2016/09/16 by Matt.Kuhlenschmidt Fix build warning #codereview nick.darnell #rb none Change 3128642 on 2016/09/16 by Alexis.Matte #jira UE-36047 We now convert the light color correctly when importing and exporting fbx files. UE4 is sRGB and FBX is linear #rb none #codereview matt.kuhlenschmidt Change 3128733 on 2016/09/16 by Nick.Darnell UMG - Fixing a bad merge, some code was removed causing all BindWidget statements to fail to compile correctly. #jira UE-36105 #rb none Change 3128768 on 2016/09/16 by Matt.Kuhlenschmidt Fix selection outline showing around edges of all internal mesh sections of a component instead of around the entire actor #rb none Change 3128779 on 2016/09/16 by Matt.Kuhlenschmidt Fix offset characters on some small fonts #rb none Change 3130057 on 2016/09/19 by Jamie.Dale Fixing volatility and invalidation issues for text widgets #jira UE-33988 #rb Nick.Darnell Change 3130064 on 2016/09/19 by Jamie.Dale Changed mprof meta-data to allow unicode strings and updated ReadString to deal with them correctly #rb James.Hopkin Change 3130233 on 2016/09/19 by Michael.Dupuis #jira UE-32914 Added missing args that the UI supported #rb Alexis.Matte Change 3130265 on 2016/09/19 by Nick.Darnell Automation - Cleaning up some API items. #rb none Change 3130378 on 2016/09/19 by Matt.Kuhlenschmidt Fix reentrancy saving assets while a prompt for checkout dialog is open #rb none Change 3130398 on 2016/09/19 by Jamie.Dale Fixing UHT error when building #rb none Change 3132101 on 2016/09/20 by Nick.Darnell UMG - Adding a toolbar option in the designer for the 'G' command, similar to 'Game View' in the level editor, it disables all the dashed lines / future editor visuals. #rb none Change 3132110 on 2016/09/20 by Nick.Darnell PR #2792: ShowFlags for WidgetComponents (Contributed by projectgheist) #jira UE-13770 #rb Nick.Darnell Change 3132111 on 2016/09/20 by Nick.Darnell UMG - The retainer now embeds a virtual window into the focus path so that paths are resolved correctly. #rb none Change 3132138 on 2016/09/20 by Michael.Dupuis #jira UE-30945 Added missing PostEditComponentMove after drag is finished #rb Alexis.Matte Change 3132147 on 2016/09/20 by Michael.Dupuis #jira UE-30866 Fixed the filter to work properly #rb Alexis.Matte Change 3132190 on 2016/09/20 by Matt.Kuhlenschmidt Fix static analysis warnings in this file #rb none Change 3132231 on 2016/09/20 by Nick.Darnell Slate - Updating the material blend states to match what is expected of Slate rendering, which differs a lot from the scene renderer with the way it treats alpha. This fixes translucent rendering with the retainer widget, users will need to set their materials to Alpha Composite though for it to behave as expected. #jira UE-33285 #rb none Change 3132255 on 2016/09/20 by Alex.Delesky #jira UE-36048 - TMap and TSet properties are now disallowed from adding more children through the Details panel when they contain the dfault value for a key or element. Reset to Default is also no longer allowed on a Map or Set child when it will result in a second default value existing within the container. #rb Matt.Kuhlenschmidt Change 3132587 on 2016/09/20 by Mike.Fricker MIDI Plugin: Fixed a CIS error in shipping configuration (introduced in CL 3108604) #rb none #lockdown matt.kuhlenschmidt Change 3132623 on 2016/09/20 by Matt.Kuhlenschmidt Fix crash opening the cooker settings https://jira.it.epicgames.net/browse/UE-36197 #rb none #lockdown nick.darnell Change 3133144 on 2016/09/20 by Nick.Darnell Build configuration for automation tests. #rb none #lockdown matt.kuhlenschmidt Change 3133206 on 2016/09/20 by Matt.Kuhlenschmidt Fix default material on odin text #rb none #lockdown nick.darnell Change 3133913 on 2016/09/21 by Nick.Darnell Back out revision 17 from //UE4/Dev-Editor/Engine/Source/Runtime/UMG/Private/Slate/SRetainerWidget.cpp #rb none #jira UE-36231 #lockdown matt.kuhlenschmidt [CL 3133983 by Matt Kuhlenschmidt in Main branch]
2016-09-21 10:07:18 -04:00
AddToToolTipInfoBox( InfoBox, LOCTEXT("TileViewTooltipPath", "Path"), FText::FromName(AssetData.PackagePath), false);
int32 PackageNameLengthForCooking = ContentBrowserUtils::GetPackageLengthForCooking(AssetData.PackageName.ToString(), FEngineBuildSettings::IsInternalBuild());
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
AddToToolTipInfoBox( InfoBox, LOCTEXT("TileViewTooltipPathLengthForCookingKey", "Cooking Filepath Length"), FText::Format(LOCTEXT("TileViewTooltipPathLengthForCookingValue", "{0} / {1}"),
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3133954) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3077573 on 2016/08/04 by Nick.Darnell Removing some unused code, adding additional needed modules to editor tests. #rb none Change 3077580 on 2016/08/04 by Nick.Darnell Removing the test plugins, going to be recreating them in EngineTest. Change 3082659 on 2016/08/09 by Nick.Darnell Automation - Presets are now stored in json files stored in Config so they can be shared, and human readable. Working on screenshot automation, getting it where it needs to be to permit us to have repeatable tests for comarison. Removing the option to not take full size screenshots, that defeats the purpose of being able to compare them. #rb none Change 3082766 on 2016/08/09 by Jamie.Dale Fixed crashes when dealing with code-points outside the BMP on platforms with UTF-32 FStrings ICU always deals with its offsets as UTF-16 (as it always uses UTF-16 internally with icu::UnicodeString), so there were a couple of places in code (break iteration, and bidi detection) where we needed to adjust those UTF-16 offsets to UTF-32 offsets in the case where FString is UTF-32. #jira UE-33971 #rb James.Hopkin Change 3083067 on 2016/08/09 by Nick.Darnell Automation - Working on screenshot support, system now allows a lot more customization in terms of how large the shot is. #rb none Change 3084475 on 2016/08/10 by Richard.TalbotWatkin Fixed issue with ModelComponent replication in client/server PIE if BSP is rebuilt. ModelComponent now implements IsNameStableForNetworking and always returns true, as a level's model components will never be rebuilt during a game session. Brush poly normals are now only fixed up in Editor builds. #jira UE-34391 - No run animation on client that is not focused when running 2 player and dedicated server #codereview Matt.Kuhlenschmidt #rb none Change 3084661 on 2016/08/10 by Matt.Kuhlenschmidt Added grayscale texture importing support #rb none Change 3084774 on 2016/08/10 by Cody.Albert Adding controller support for ComboBox widget #jira UE-33826 #rb nick.darnell Change 3085716 on 2016/08/11 by Nick.Darnell UMG - Taking the Widget Component and Widget Interaction Components out of experimental. Removed old importing support for upgrading ancient versions of widget components. Removing parbola distortion, as users can now do whatever they want in their custom MID they can override the widget with. #rb none Change 3085733 on 2016/08/11 by Nick.Darnell UMG - Documenting the meta parameters allowed on widgets, like we do for regular UObjects. For binding widgets from blueprints you can now do BindWidget (unchanged), and to simplify binding widgets optionally, you can now just do (BindWidgetOptional), rather than the combination of BindWidget + OptionalWidget=true. Made generating the Design time wrapper call a little more efficent, by optimizing it away by force inlining a noop. Also added some additional checking when we forcefully set focus in UMG, to help people catch cases where they set focus, but didn't make the widget focusable. #rb none Change 3085734 on 2016/08/11 by Nick.Darnell Texture - Making GetDefaultMipMapBias a bit more efficent in the common case. #rb none Change 3085736 on 2016/08/11 by Nick.Darnell Static Lighting - Warning the user when they build lighting, but have bForceNoPrecomputedLighting set to true on the world settings. #rb none Change 3085737 on 2016/08/11 by Nick.Darnell Editor - code organization. #rb none Change 3085875 on 2016/08/11 by Nick.Darnell UMG - You can now use 'G' to toggle game mode on the designer so that you can disable and enable the dashed lines around containers. The option in the settings is now used as the default when you startup a designer. #rb none Change 3086209 on 2016/08/11 by Ben.Salem Make our automated test pass reporting more robust and pipe out to JSON in \saved\automation\logs\AutomationReport-{CL}-{Timestamp}.json format. #rb adric.worley, william.ewen Change 3086515 on 2016/08/11 by Nick.Darnell Editor - Fixing a crash in the curve table customization. If the row doesn't exist, it would crash, we now protect against that case. #rb Matt.Kuhlenschmidt Change 3087216 on 2016/08/12 by Jamie.Dale Fixed an issue where re-scanning a package file may leave old assets in the asset registry We didn't used to clear out anything associated with the old package before scanning the file, which could result in old assets being left if they'd since been removed from the package. This also exposes a PackageDeleted function to allow people to manually clear anything associated with a package (if doing some custom asset work). #rb Andrew.Rodham Change 3087219 on 2016/08/12 by Jamie.Dale Updated TextRenderComponent to support multiple font pages It used to use the correct UV data, but wouldn't set the correct texture page when rendering. It now creates MIDs for all of the texture pages used by the font, and will use these MIDs (which override the font page on the material) when rendering the text (batched on sequential index/vertex buffer data with the same texture page). #rb Matt.Kuhlenschmidt Change 3087308 on 2016/08/12 by Alex.Delesky #jira UE-14727 - Support for editing TSet properties in the editor's Details panel has been added. #rb Matt.Kuhlenschmidt Change 3089140 on 2016/08/15 by Jamie.Dale We now abort a directory watch if we lose access to the directory in question This prevents an infinite loop in the call to MsgWaitForMultipleObjectsEx if a watched directory is deleted. #jira UE-30172 #rb Andrew.Rodham Change 3089148 on 2016/08/15 by Alexis.Matte Allow fbx export of any actor type. #rb none #codereview dmitriy.dyomin Change 3089211 on 2016/08/15 by Jamie.Dale Unified access to the parent window for external dialogs A lot of places used to ad-hoc use the MainFrame window, even when they had access to a widget that may be belong to a different window. This could cause issues where an external dialog could appear behind a modal UE4 window (as it would appear above the MainFrame), and be inaccessible. You can now use IMainFrameModule::GetBestParentWindowHandleForDialogs to get the best window handle to use for an external dialog. This will either be the parent window for the given widget (if known), or failing that, the MainFrame window. #rb Andrew.Rodham Change 3089640 on 2016/08/15 by Jamie.Dale Wrapped UMaterialExpression::MenuCategories in WITH_EDITORONLY_DATA to avoid gathering it for game-only loc #rb none Change 3089661 on 2016/08/15 by Nick.Darnell Editor - There's a new view option "Show C++ Classes" in the content browser. Lets you hide all those C++ folders most folks probably don't care to see. #rb none Change 3089667 on 2016/08/15 by Cody.Albert Updating RoutePointerUpEvent to call OnDrop for touch events when dragging #jira UE-34709 #rb nick.darnell Change 3089694 on 2016/08/15 by Jamie.Dale Applied a fix to the ExcludeClasses setting in the loc gather #rb none Change 3089889 on 2016/08/15 by Nick.Darnell Automation - Continued work on the screenshot portion of the automation system. Going to start using the adapter information in the screenshots taken, otherwise we can't accurately test a plethora of devices sharing the same OS, with different capabilities. #rb none Change 3090256 on 2016/08/16 by Nick.Darnell Automation - working on screenshots. #rb none Change 3090322 on 2016/08/16 by Nick.Darnell Automation - Adding modified screenshot function. #rb none Change 3090335 on 2016/08/16 by Nick.Darnell Automation - The tests were determined to need to be shared afterall, but at least keeping them as plugins. Moved to Engine plugins. #rb none Change 3090881 on 2016/08/16 by Nick.Darnell Automation - Moving the content over and fixing up some code so that the AutoRimport tests work as expected. #rb none Change 3090884 on 2016/08/16 by Nick.Darnell Plugins - There's now support for generating a Content Only plugin from the new plugin wizard. #rb none Change 3090911 on 2016/08/16 by Nick.Darnell Feature Packs - If there's an error loading a manifest, it's now an error, not a warning. #rb none Change 3090913 on 2016/08/16 by Jamie.Dale Optimization and usability improvements of the MemoryProfiler2 tool - Optimized the processing of the Callgraph, Histogram, and Short lived allocations views. - The callgraph view is now using a virtualized tree view mapped to our own internal tree. This allows us to amortize the cost of adding nodes to the TreeView as the user views the nodes in the tree. In my own test, this took callgraph generation from ~45 seconds to ~5 seconds. - The Histogram view was vastly optimized via the use of a HashSet on the callstack filter, and the batch addition of unsorted callstacks that are sorted once at the end. In my own test, this took histogram generation from ~15 minutes to ~2 seconds. - The Short lived allocations view was optimized by avoiding redundant sorting, including maintaining a sorted order while inserting items, and instead doing a final sort at the end. The column selection was also optimized by avoiding copying the entire dataset just to resort it. In my own test, this took short lived allocation generation from ~1 minute to ~3 seconds. - Added a user-configurable list of allocator functions to trim (which now includes FMemory and operator new by default, and produces much cleaner callstacks). #jira UETOOL-948 #jira UETOOL-949 #rb James.Hopkin Change 3090962 on 2016/08/16 by Jamie.Dale Fixed double assignment of filter functions #rb none Change 3090989 on 2016/08/16 by Nick.Darnell Editor - Attempting to fix the build, non-unity issue I suspect. #rb none Change 3091754 on 2016/08/17 by Nick.Darnell FbxAutomationTestBuilder is now a plugin. Users won't see it unless they've enabled the plugin (so primarily internal QA). Reorganized the automation tools and testing menu to be a bit lower in the main menu, and gave them a more test sounding name. Additionally made some modifications to the workspace menu structure to allow generating just a subset of a workplace menu so that I could target where I wanted to insert all of the automation tool menu items, rather than just allowing the general placement of them under developer tools...etc. #rb none #codereview Alexis.Matte Change 3091758 on 2016/08/17 by Nick.Darnell Slate / Editor - Trying to make the editor less focus greedy. Now when there are notification popups and tabs attempt to grab your attention we now do a few activation ownership checks to ensure that it or a parent window actually owns activation. Not doing this has the nasty side effect of things like notifications and message log errors that popup while playing the game (if the game is in new window PIE), causing the game to be hidden, and focus returned to the editor. Ran into this a lot running the automation tests, the new PIE window that's launched to run tests is immediately hidden as soon as the tests log a warning or error or a notification about high res screenshots happens. #rb none #codereview Nick.Atamas,Matt.Kuhlenschmidt Change 3091829 on 2016/08/17 by Nick.Darnell Build - Attempting to repair the build. #rb none Change 3091920 on 2016/08/17 by Nick.Darnell Build - Another attempt at fixing the mac build. #rb none Change 3093380 on 2016/08/18 by Matt.Kuhlenschmidt Ignore group actors when checking for references to other actors when deleting. The check for references is designed for gameplay affecting references which groups are not. Having this show up for groups is annoying #rb none Change 3094474 on 2016/08/19 by Jamie.Dale Fixed PS4 error when building with USE_MALLOC_PROFILER, and optimized symbol name resolution for a build with USE_MALLOC_PROFILER enabled #jira UETOOL-951 #rb James.Hopkin Change 3094581 on 2016/08/19 by Jamie.Dale Added missing allocator filter needed by PS4 profiles #rb none Change 3094681 on 2016/08/19 by Richard.TalbotWatkin Fixed issue where painting override vertex colors on a SpeedTree mesh would cause its wind animation to cease. The OverrideVertexColors vertex factory needed to be registered with the SpeedTree renderer. #jira UE-32762 - Custom VertexPaint on SpeedTrees interferes with wind animation #rb none Change 3095163 on 2016/08/19 by Trung.Le #jira UE-20849: Added tooltips to the inputs of the Material final result node #rb matt.kuhlenschmidt Change 3095285 on 2016/08/19 by Trung.Le #jira UE-20849 In SGraphNodeMaterialResult, renamed ToolTip to ToolTipWidget so we're not hiding class member #rb none Change 3095344 on 2016/08/19 by Alexis.Matte #jira UE-34690 When using the optionnal matrix to change the scene root node, we have to flush the fbx evaluation engine. Add also a new option to allow the user to automatically convert the fbx scene to unreal unit (centimeter). #rb none #codereview matt.kuhlenschmidt Change 3096162 on 2016/08/22 by Alexis.Matte #jira UE-34763 Remove offending no-action combo box entry when the json file is readonly. Also clean up other combo box menu. #rb none #codereview matt.kuhlenschmidt Change 3096261 on 2016/08/22 by Alexis.Matte #jira UE-33121 Make sure re-import all and import all fix all the issue before starting the job. So it get not interrupt during the process. #rb lina.halper #codereview lina.halper Change 3096344 on 2016/08/22 by Jamie.Dale NSString conversion fix for UTF-32 strings containing characters outside of the BMP #jira UE-33971 #rb Peter.Sauerbrei, James.Hopkin Change 3096605 on 2016/08/22 by Alex.Delesky #jira UE-34787 - Dropdown menus in standalone programs will now correctly display tooltips if they have any. #rb Matt.Kuhlenschmidt Change 3096615 on 2016/08/22 by Alex.Delesky #jira UE-33334 - Scrolling up on the mouse wheel when using the orbit camera should no longer move away from the orbit point when the camera moves too close to the orbit origin. #rb Matt.Kuhlenschmidt Change 3096619 on 2016/08/22 by Alex.Delesky #jira UE-34084 - Structs containing an enum with a value that contains a whitespace character will now serialize correctly when copied from the Details Panel. #rb Matt.Kuhlenschmidt Change 3097644 on 2016/08/23 by Matt.Kuhlenschmidt PR #2729: Fix a typo in the comment (Contributed by adcentury) #rb none Change 3097648 on 2016/08/23 by Matt.Kuhlenschmidt PR #2726: Undef unused macros (Contributed by shrimpy56) #rb none Change 3097697 on 2016/08/23 by Matt.Kuhlenschmidt Guard against crash when details panels rebuild when their customizations have been torn down https://jira.ol.epicgames.net/browse/UE-35048 #rb none Change 3097757 on 2016/08/23 by Alex.Delesky #jira UE-14727 - Support for editing TMap properties in the editor's Details panel has been added. This change also removes the Duplicate option from TSet elements, and disallows entry of duplicates elements into a TSet or duplicate keys into a TMap #rb Matt.Kuhlenschmidt Change 3098164 on 2016/08/23 by Alexis.Matte #jira UE-34686 Fbx importer bImportMeshesInBoneHierarchy is used also by the animation. #rb none #codereview matt.kuhlenschmidt Change 3098502 on 2016/08/23 by Alexis.Matte #jira UE-30951 Fbx option dialog, we disable the option to bake pivot if transform vertex position is true #rb none #codereview matt.kuhlenschmidt Change 3099986 on 2016/08/24 by Jamie.Dale Fixing non-editor builds #rb none Change 3101138 on 2016/08/25 by Matt.Kuhlenschmidt Fixed viewport redraw callback not being called when certian property modifications occur in the details panel (reset to default, array size changes, etc) #rb none Change 3101280 on 2016/08/25 by Jamie.Dale Fixed crash when counting memory over internationalization meta-data - The serialization code only used to handle loading or saving, now it handles loading or not loading. - The Type of the meta-data wasn't set by all constructors. For safety it has been removed and replaced with a virtual function that the derived types override. #rb James.Hopkin Change 3101283 on 2016/08/25 by Jamie.Dale MProf2 platform and symbol parsing improvements - Updated ISymbolParser to work with lazy symbol resolution (handled via the UI when looking at full callstacks). - Added a PS4 symbol parser which handles performing full file/line resolution for symbols. - Removed all the V3 file format support and legacy platform handling. - Optimized FStreamInfo.GetNameIndex so it can be used by the lazy symbol fixup. #rb James.Hopkin Change 3101586 on 2016/08/25 by Jamie.Dale Small code cleanup and path normalization #rb James.Hopkin Change 3101837 on 2016/08/25 by Alexis.Matte #jira UE-35101 we now store the sourceanimationname to retrieve the correct animtrack when re-importing animations #rb none #codereview matt.kuhlenschmidt Change 3102537 on 2016/08/26 by Jamie.Dale Fix for potential crash in FICUCamelCaseBreakIterator In platforms with UTF-32 strings, the index returned by FICUTextCharacterIterator may not be in the same range as FString, so we need to call InternalIndexToSourceIndex to ensure that it is. #rb James.Hopkin Change 3102582 on 2016/08/26 by Matt.Kuhlenschmidt Log the freetype version when it starts up (for debugging purposes) #rb none Change 3102657 on 2016/08/26 by Alexis.Matte #jira UE-29177 When re-importing a texture we want to notify materials using this texture so they can recompile the shader. #review-3101585 @uriel.doyon #rb matt.kuhlenschmidt Change 3102704 on 2016/08/26 by Jamie.Dale Added symbol meta-data support to MProf2 You can now define platform specific meta-data using FPlatformStackWalk::GetSymbolMetaData, which is then stored within the generated .mprof file. PS4 uses this meta-data to say where the original .self file can be found, so that MProf2 can usually automatically load the .self file without having to bother the user. #rb James.Hopkin Change 3102878 on 2016/08/26 by Matt.Kuhlenschmidt Added support for outline fonts - An outline size (in slate units), optional material and optional fill color can be specified with each font info. - Outlines do not contribute to measurement directly so the text measuring and shaping methods have been modified to account for outlines - Fixed a bug where font materials do not work properly if part of the font's rendered glyphs were in a different atlas #rb jamie.dale Change 3102879 on 2016/08/26 by Jamie.Dale Bumped the MProf2 version so we can tell which build of the tool can load v6 mprof files #rb none Change 3102960 on 2016/08/26 by Alexis.Matte build fix #rb none Change 3103032 on 2016/08/26 by Jamie.Dale Fixed SEditableText and SMultiLineEditableText not setting the correct foreground color when painting #jira UE-34936 #rb Matt.Kuhlenschmidt Change 3103278 on 2016/08/26 by Jamie.Dale Fixing Clang warnings #rb none Change 3104211 on 2016/08/29 by Ben.Marsh Add build script for automated tests, and create settings file for Dev-Editor which adds an agent pool for running them. #rb none Change 3104290 on 2016/08/29 by Alex.Delesky Adding additional documentation accessible from the editor for TSet and TMap properties, along with a quick clarification on container properties to let the user know what kind of container they're working with. #rb Matt.Kuhlenschmidt Change 3104292 on 2016/08/29 by Alex.Delesky #jira UE-35039 - Command/Control user keybindings will no longer flip-flop when the editor is opened on Mac. #rb Matt.Kuhlenschmidt Change 3104294 on 2016/08/29 by Alex.Delesky #jira UE-34952 - The user will no longer encounter an ensure when setting the value of Period equal to or less than 0 on the circular throbber widget #rb Matt.Kuhlenschmidt Change 3104295 on 2016/08/29 by Matt.Kuhlenschmidt PR #2682: Remove unused bUseDesktopResolutionForFullscreen (Contributed by stfx) #rb none Change 3104296 on 2016/08/29 by Alex.Delesky #jira UE-35160 - The Auto Distance Error for LOD meshes can now be set to any value larger than zero. #rb Matt.Kuhlenschmidt Change 3104348 on 2016/08/29 by Matt.Kuhlenschmidt Added the ability to clear the preview mesh on a material instance. Previously there was no way to null it out. #rb none Change 3104355 on 2016/08/29 by Matt.Kuhlenschmidt Guard against crash with invalid path to the default physical material. Just create a new one if it doesnt exist and warn about it. #rb none #jira UE-31865 Change 3104396 on 2016/08/29 by Ben.Marsh Fix incrorrect agent names for running automated tests Change 3104610 on 2016/08/29 by Alex.Delesky Fix for AutomationTool compile editor from changes introduced today. #rb None Change 3104611 on 2016/08/29 by Michael.Dupuis #jira UETOOL-253 #rb Alexis.Matte Change 3105826 on 2016/08/30 by Gareth.Martin Added console variables to discard grass and/or scalable foliage data on load #jira UE-35086 #rb Benn Change 3106126 on 2016/08/30 by Matt.Kuhlenschmidt Eliminated bad code duplication between retainer widgets and element batcher #rb none #codereview nick.darnell Change 3106449 on 2016/08/30 by Michael.Dupuis #jira UETOOL-229 Added generic command icons used in Edit Menu (including contextual menu) #rb Alexis.Matte Change 3106966 on 2016/08/30 by Jamie.Dale Fixed FApp::IsAuthorizedUser not considering the SessionOwner override #rb Max.Preussner Change 3107687 on 2016/08/31 by Michael.Dupuis Checkout/Make Writable on proper config file #rb Matt Kuhlenschmidt Change 3107736 on 2016/08/31 by Matt.Kuhlenschmidt Fixed mode typos in the lerp instruction #rb none Change 3107830 on 2016/08/31 by Matt.Kuhlenschmidt Logging and guard against UEditorEngine::TeardownPlaySession crash. #rb none https://jira.ol.epicgames.net/browse/UE-35325 Change 3107912 on 2016/08/31 by Alex.Delesky #jira UE-35181 - Normalizing paths when retrieving absolute filenames for source control operations. #rb Matt.Kuhlenschmidt Change 3107986 on 2016/08/31 by Matt.Kuhlenschmidt Removed PropertyTestObject.h out of UnrealEd.h so you dont have to compile the entire editor when changing this one file. #rb none Change 3108027 on 2016/08/31 by Chris.Wood Re-added lost doc comment for analytics event "Engine.AbnormalShutdown". #rb none - just a comment in a cpp file #codereview wes.hunt Change 3108580 on 2016/08/31 by Mike.Fricker Deleted the "Live Editor" plugins from UE4 - These were undocumented, buggy and never finished, and we have no plans to complete them - Both the "LiveEditor" and "LiveEditorListenServer" plugins were deleted, along with related icon files #codereview matt.kuhlenschmidt #rb matt.kuhlenschmidt Change 3108604 on 2016/08/31 by Mike.Fricker Added new "MIDI Device" plugin (disabled by default) - This is a simple MIDI interface that allows you to receive MIDI events from devices connected to your computer - Currently only input is supported. In the future we might allow for output, as well. - In Blueprints, here's how to use it: - Look for "MIDI Device Manager" in the Blueprint RMB menu - Call "Find MIDI Devices" to choose your favorite device. Break the "Found MIDI Device" struct to see what's available. - Then call "Create MIDI Device Controller" for the device you want. Store that in a variable. - On your MIDI Device Controller, bind your own Event to the "On MIDI Event" event. This will be called every game Tick when there is at least one new MIDI event to receive. - Process the data passed into the Event to make your project do stuff! - This plugin makes use of the "PortMidi" third party library (which already existed in UE4 -- it was used by the now-deprecated 'LiveEditor' plugin) #codereview matt.kuhlenschmidt #rb none Change 3108760 on 2016/08/31 by Alexis.Matte #jira UE-25840 Fbx export collision mesh, we now export collision: box, sphere, capsule and convex mesh. There is an option in the editor preference to enable the export of collisions, default value is false. #rb none #codereview matt.kuhlenschmidt Change 3109006 on 2016/08/31 by Alex.Delesky #ignore Source Control rename test - initial commit Change 3109044 on 2016/08/31 by Alex.Delesky #ignore Testing asset rename from P4 to observe correct behavior. #rb none Change 3109048 on 2016/08/31 by Alex.Delesky #ignore Testing P4 rename to identify correct behavior #rb none Change 3110044 on 2016/09/01 by Gareth.Martin Fixed painting foliage on blocking "query" actors not working #jira UE-33852 #rb Allan.Bentham Change 3110133 on 2016/09/01 by Alexis.Matte Fix crash in function GetForceRecompileTextureIdsHash #rb none #codereview jamie.dale Change 3111848 on 2016/09/02 by Mike.Fricker MIDI Device plugin: Fixed compilation error on Clang compilers (Mac, Linux) - Fixed bad enum cast #rb none Change 3111995 on 2016/09/02 by Michael.Dupuis #jira UE-35263 Do not try selecting the actor if the actor is in the blueprint Properly Refresh the ToopTip & Hyper Link to take into account blueprint recreation process #rb Alexis Matte Change 3112280 on 2016/09/02 by Michael.Dupuis Call MakeWritable if source control fail #rb Alexis Matte Change 3112335 on 2016/09/02 by Cody.Albert Updating cursor hiding logic to not improperly hide cursor when left clicking in ortho mode #jira UE-35306 #rb none Change 3112478 on 2016/09/02 by Alexis.Matte #jira UE-20059 Use a base material to import fbx material. #rb uriel.doyon #codereview matt.kuhlenschmidt #1468 Github pull request number Change 3113912 on 2016/09/06 by Michael.Dupuis #jira UE-32288 Fixed Console params display #rb Alexis Matte Change 3114026 on 2016/09/06 by Alex.Delesky #jira UE-35123 - The Details panel in a Texture editor or Simple Asset editor window will no longer disappear when the inspected asset is imported again. #rb Matt.Kuhlenschmidt Change 3114032 on 2016/09/06 by Alex.Delesky PR #2733: Improved the project launcher progress page (Contributed by projectgheist) #jira UE-34027 #rb Matt.Kuhlenschmidt Change 3114034 on 2016/09/06 by Alex.Delesky #jira UE-35265 - Copying a comment node from a Material Function and pasting it inside a Material will no longer render the Material unsaveable #rb Matt.Kuhlenschmidt Change 3114071 on 2016/09/06 by Nick.Darnell [AUTOMATED TEST] Automatic checkin, testing functionality. Change 3114109 on 2016/09/06 by Nick.Darnell [AUTOMATED TEST] Automatic checkin, testing functionality. Change 3114562 on 2016/09/06 by Nick.Darnell Adding LevelEditor to the FbxAutomationTestBuilder to fix a compiler issue. #rb none Change 3114701 on 2016/09/06 by Michael.Dupuis #jira UE-31988 add const to all usage of TArray<ItemType>* as it was done in SListView #rb Alexis Matte Change 3114861 on 2016/09/06 by Matt.Kuhlenschmidt Prevent non-thread safe slate code from running on the slate loading thread #rb none Change 3115698 on 2016/09/07 by Nick.Darnell Make sure the commands are available - during functional testing that was found to not always be the case. #rb none Change 3115719 on 2016/09/07 by Nick.Darnell Adding an IsRegistered command to commands. #rb none Change 3115721 on 2016/09/07 by Nick.Darnell Adding a new built VirtualReality feature pack, this new one contains the update manifest that will parse correctly. #rb none Change 3115722 on 2016/09/07 by Nick.Darnell IsBindWidgetProperty now returns false if the property passed in is null. #rb none Change 3115734 on 2016/09/07 by Alexis.Matte #jira UE-30166 Support fbx sdk 2017 #rb none Change 3115737 on 2016/09/07 by Nick.Darnell Adding an image comparer for screenshots. Removing some content from EngineTest. #rb none Change 3115743 on 2016/09/07 by Nick.Darnell Checkpointing a bunch of progress towards a screenshot comparison workflow that allows us to diff screenshots taken on various platforms and hardware. Disabling many tests that are not passing. Updating a few tests to log better errors, and fixed a few tests with easy bugs in them so they would start passing again. All editor tests currently passing! #rb none Change 3115748 on 2016/09/07 by Nick.Darnell Making the RuntimeTests plugin a Developer module, so that it doesn't get included in shipping builds. #rb none Change 3115789 on 2016/09/07 by Jamie.Dale We now favor Traditional Chinese for Hong Kong and Macau #rb James.Hopkin Change 3115799 on 2016/09/07 by Jamie.Dale Removed validity check on source cultures when remapping, as platforms may use invalid cultures that need to be remapped #rb James.Hopkin Change 3115826 on 2016/09/07 by Nick.Darnell Adding missing files. #rb none Change 3115838 on 2016/09/07 by Nick.Darnell Back out revision 6 from //UE4/Dev-Editor/Engine/Source/Runtime/UMG/Public/Components/WidgetInteractionComponent.h #rb none Change 3116007 on 2016/09/07 by Alexis.Matte build fix #rb none Change 3116057 on 2016/09/07 by Jamie.Dale Fixed widget snapshot messages so they appear in the message debugger #rb none Change 3116112 on 2016/09/07 by Nick.Darnell Removing the FbxAutomationBuilder file that go recreated on a merge from main. #rb none Change 3116365 on 2016/09/07 by Michael.Dupuis #jira UE-20765 Added missing class flag to test (CLASS_CONFIG) and change a bit how the checkout/make writable work. #codereview Matt.Kuhlenschmidt #rb Alexis.Matte Change 3116622 on 2016/09/07 by Alexis.Matte #jira UE-35608 Use the same naming convention when trying to retrieve uv channel by name. #rb matt.kuhlenschmidt Change 3116638 on 2016/09/07 by Jamie.Dale Ensured that manifests and archives don't try and load data that they can't parse #rb none Change 3117397 on 2016/09/08 by Gareth.Martin Added rotate and blend support to the landscape mirror tool #jira UE-34829 #rb Jack.Porter Change 3117459 on 2016/09/08 by Gareth.Martin Fixed crash saving a hidden landscape level with an offset (cloned from 4.13.1) #jira UE-35301 #rb Jack.Porter Change 3117462 on 2016/09/08 by Gareth.Martin Fixed invisible landscape components and crashes when tessellation is enabled (cloned from 4.13.1) #jira UE-35494 #rb Benn.Gallagher Change 3117583 on 2016/09/08 by Nick.Darnell Continued work on automation support for screenshot comparison, stubbing in a commandlet that can be run after automation tests that would perform the diffing. Need to finish rigging it up so that deltas and results can be dumped out somewhere and consumed by a tool to approve shots. #rb none Change 3117595 on 2016/09/08 by Nick.Darnell Updating the build script for AutomatedTests, going to see if this works! #rb none Change 3117808 on 2016/09/08 by Nick.Darnell Adding header includes for async. #rb none Change 3117812 on 2016/09/08 by Matt.Kuhlenschmidt Partially taken from Pr 2381 Fixed Array Properties to handle duplicates properly and fixed Material Parameter Collection duplicate Guid problem. #rb none Change 3117851 on 2016/09/08 by Jamie.Dale Silenced some redundant P4 errors that could be generated when running a stat update on a file Some of the options produced errors when working with newly added files. These errors are now downgraded to infos like they are for the main stat command. #rb Ben.Marsh #codereview Thomas.Sarkanen Change 3117853 on 2016/09/08 by Gareth.Martin Clean up landscape includes and PCH #rb steve.robb Change 3117859 on 2016/09/08 by Alex.Delesky #jira UE-35321 - Minimized windows will no longer act like they are visible when determining what widgets are currently underneath the mouse. #rb Nick.Darnell Change 3117997 on 2016/09/08 by Nick.Darnell Updating the automation tests build script to use Editor-Cmd #rb none Change 3118005 on 2016/09/08 by Matt.Kuhlenschmidt Properly reference graph node on material expressions so they are not GC'd while an expression still uses them #jira UE-35362 #rb none Change 3118043 on 2016/09/08 by Alex.Delesky #jira UE-30649 - Removed unnecessary returns from UWidget API. PR #2377: fix widget bug. (Contributed by dorgonman) #rb none Change 3118045 on 2016/09/08 by Matt.Kuhlenschmidt Guard against crash saving config during level editor shutdown #rb none #jira UE-35605 Change 3118074 on 2016/09/08 by Matt.Kuhlenschmidt PR #2783: Removed #pragme once from CPP files (Contributed by projectgheist) #rb none Change 3118078 on 2016/09/08 by Michael.Dupuis #jira UE-32065 Removed the -windows that was added as a default option and add it simply if fullscreen is not specified #rb Alexis.Matte Change 3118080 on 2016/09/08 by Michael.Dupuis #jira UE-31131 Do not show a contextual menu if the menu is empty #rb Alexis.Matte Change 3118087 on 2016/09/08 by Matt.Kuhlenschmidt Constify this method #rb none Change 3118166 on 2016/09/08 by Nick.Darnell Trying additional command options for the build machine for automation. #rb none Change 3118222 on 2016/09/08 by Matt.Kuhlenschmidt Fix actor delete during mesh paint not working during undo #rb none #jira UE-35684 Change 3118298 on 2016/09/08 by Alexis.Matte #jira UE-35302 Export all LODs for static mesh when there is no force LOD #rb uriel.doyon Change 3118325 on 2016/09/08 by Matt.Kuhlenschmidt Fixed reset to default not appearing for slate brushes #rb none #jira UE-34958 Change 3119321 on 2016/09/09 by Matt.Kuhlenschmidt Guard against crash with an invalid world trying to be opened from the content browser #rb none https://jira.ol.epicgames.net/browse/UE-35712 Change 3119433 on 2016/09/09 by Nick.Darnell Removing a hack added by Paragon that prevents applications from resizing in real time as the user drags the size of the window around. #rb Matt.Kuklenschmidt #jira UE-35789 Change 3119448 on 2016/09/09 by Alex.Delesky When simulating touch events using the mouse, clicking the mouse will no longer let a drag operation continue. This should also allow the finger that started a drag to continue dragging items until it is released from the surface. #rb Nick.Darnell Change 3119522 on 2016/09/09 by Jamie.Dale Fixed FDetailCategoryImpl::ShouldBeExpanded not honoring bShouldBeInitiallyCollapsed when bRestoreExpansionState was true #rb Matt.Kuhlenschmidt Change 3119528 on 2016/09/09 by Jamie.Dale Some UI re-work to the localization dashboard This makes a better use of the available space, and will make it easier to make some other planned changes in the future. #rb James.Hopkin Change 3119861 on 2016/09/09 by Michael.Dupuis #jira UE-9284 Added the Play/Stop button on the thumbnail #rb Alexis.Matte Change 3120027 on 2016/09/09 by Alexis.Matte incorporate some fixes from licensee for LOD group re-import workflow #jira UE-32268 #rb uriel.doyon #codereview matt.kuhlenschmidt Change 3120845 on 2016/09/12 by Gareth.Martin Fixed crash in landscape editor when "Early Z" is enabled (cloned from 4.13.1) #jira UE-35850 #rb Allan.Bentham Change 3120980 on 2016/09/12 by Nick.Darnell Adding a commandlet that is runnable for comparing screenshots. Adding comparing and exporting capability to the screenshot manager. #rb none Change 3120992 on 2016/09/12 by Alex.Delesky #jira UE-35575 - TScriptInterface UProperties now have asset picker support. #rb Matt.Kuhlenschmidt Change 3121074 on 2016/09/12 by Michael.Dupuis #jira UE-30092 Added path length in error message when typing Added display of current filepath lenght for cooking #rb Alexis.Matte Change 3121113 on 2016/09/12 by Nick.Darnell Adding some placeholder examples to show people how to author tests in EngineTest. #rb none Change 3121152 on 2016/09/12 by Gareth.Martin Added TElementType, TIsContiguousContainer traits Added GetData(), GetNum() generic functions #rb Steve.Robb Change 3121702 on 2016/09/12 by Jamie.Dale Optimized a loop over a sorted list to instead use a binary search This speeds up the short-lived allocation view generation. We also now dump the exception information to the Trace log when in a non-debug build. #rb James.Hopkin Change 3121721 on 2016/09/12 by Jamie.Dale We now set the window mode first when resizing the game viewport to ensure that the work area is correct Fullscreen windows can affect the available work area size, which can break centering when moving between fullscreen and windowed mode. #jira UE-32842 #rb Matt.Kuhlenschmidt Change 3122578 on 2016/09/13 by Jamie.Dale Small code clean up Removed a use of the placement new style array addition. #rb none Change 3122634 on 2016/09/13 by Jamie.Dale We now immediately update DefaultConfigCheckOutNeeded when checking out/making writable the config file, rather than wait for the text tick #jira UE-34865 #rb James.Hopkin Change 3122656 on 2016/09/13 by Jamie.Dale Fixed array combo button not focusing its contents, which prevented the menu closing correctly #jira UE-33667 #rb none Change 3122661 on 2016/09/13 by Nick.Darnell Checkpointing additional work on the screenshot compare dialog, moving some Directory path picker widget into a more common area. Moving some "Find the best top level window handle for this widget for dialogs' code out of the main frame module and into Slate Application where it probably belongs. #rb none Change 3122678 on 2016/09/13 by Jamie.Dale Fixing CIS error on Clang CoreUObject needs to be included before USTRUCT can be used. #rb none Change 3122686 on 2016/09/13 by Jamie.Dale Fixing CIS error on Clang CoreUObject needs to be included before UCLASS can be used. #rb none Change 3122728 on 2016/09/13 by Nick.Darnell UMG - Exposing a trace channel for the WIC, defaults to Visibility. Improving how the WIC handles the cursor moving off the widget, it now maintains the last hit location rather than 0,0 which would cause things like dragged Sliders to reset to the left. Ideally - the WIC would know the underlying widget has capture and continue to fake collision against an imaginary plane to simulate a continuous surface. #jira UE-35167 #rb none Change 3122775 on 2016/09/13 by Nick.Darnell Automation - Fixing an error with the ScreenshotTools plugin, needed to add an the include for Engine.h to the PCH. #rb none Change 3122779 on 2016/09/13 by Nick.Darnell Widgetnimation - Exposing more of the class to C++. #rb none Change 3122793 on 2016/09/13 by Nick.Darnell Fixing a crash in UWidgetComponent::UpdateRenderTarget updating a null material instance. #jira UE-35796 #rb none Change 3122834 on 2016/09/13 by Matt.Kuhlenschmidt Fixed crash undoing moves after bsp creation https://jira.ol.epicgames.net/browse/UE-35880 #rb none Change 3122835 on 2016/09/13 by Nick.Darnell Reverting changes to WIdgetAnimation #rb none Change 3122897 on 2016/09/13 by Matt.Kuhlenschmidt Fixed non-editor compile error #rb none Change 3122988 on 2016/09/13 by Alexis.Matte Material workflow refactor #jira UETOOL-774 #rb matt.kuhlenschmidt Change 3123006 on 2016/09/13 by Jamie.Dale Fixed dynamic collections not returning anything #jira UE-35869 #rb James.Hopkin Change 3123145 on 2016/09/13 by Alexis.Matte Fix fbx automation test. The test found a regression cause by CL: 3120027. In the case where we dont have a LODGroup we dont want to add LODs before the build. #jira UE-32268 #rb none #codereview matt.kuhlenschmidt Change 3123148 on 2016/09/13 by Matt.Kuhlenschmidt Fix fortnite compile error #rb alexis.matte Change 3123208 on 2016/09/13 by Jamie.Dale The 'find culprit' dialog now honors the user choice #rb RichTW Change 3123545 on 2016/09/13 by Nick.Darnell Slate - Adjusting the window dialog host finding code to do a better job of searching for slate windows and excluding popups and non-regular windows. #rb none Change 3124494 on 2016/09/14 by Jamie.Dale Added ~ to the list of invalid characters for object/package names #jira UE-12908 #rb Matt.Kuhlenschmidt Change 3124513 on 2016/09/14 by Gareth.Martin Implemented filter to allow painting foliage on other foliage - Altered foliage filters so it will no longer paint on object types which don't have a filter, e.g. skeletal meshes #rb Allan.Bentham #2472 Change 3124523 on 2016/09/14 by Jamie.Dale PR #2724: Fix ScrollBox right mouse/touch grab scrolling functionality (Contributed by aarmbruster) #jira UE-34811 #jira UE-32082 #rb none Change 3124607 on 2016/09/14 by Nick.Darnell UMG - Adding BoundsScale support to the WidgetComponent's CalcBounds function. #jira UE-35667 #rb none Change 3124785 on 2016/09/14 by Gareth.Martin Made some foliage functions editor-only to fix non-editor build #rb none Change 3124795 on 2016/09/14 by Gareth.Martin Saved/loaded the new foliage filter #rb Allan.Bentham #2472 Change 3124915 on 2016/09/14 by Michael.Dupuis #jira UE-19511 Add support for Add to source control on DefaultEditorPerProjectUserSettings file Remove CheckoutNotice when not editing a DefaultXXXX.ini file Edit proper config file either we're modifying settings from a Default file or Local user file #codereview Matt.Kuhlenschmidt Max.Preussner #rb Alexis.Matte Change 3125266 on 2016/09/14 by Jamie.Dale Fixed ULocalizationTarget::DeleteFiles not deleting cultures, and using SCC wrong #rb none Change 3125385 on 2016/09/14 by Matt.Kuhlenschmidt Fix crash when using SaveAs to save over top of an existing level #rb none https://jira.ol.epicgames.net/browse/UE-35919 https://jira.ol.epicgames.net/browse/UE-35921 Change 3125487 on 2016/09/14 by Alexis.Matte Fix cook content, regression induce by the material workflow refactor #rb matt.kuhlenschmidt Change 3126217 on 2016/09/15 by Gareth.Martin Unset bHasPerInstanceHitProxies on landscape grass components, as they don't have individually editable instances #rb Allan.Bentham Change 3126311 on 2016/09/15 by Jamie.Dale Placement mode fixes - The display name is now cached correctly on construction, and the FPlaceableItem instance used with SPlacementAssetEntry is now const. - Ensured that the ID used by FPlaceableItem could never overflow. - Fixed some types being missing from the "All Classes" list. - Fixed the escape key not cancelling the search. #jira UE-35972 #rb James.Hopkin Change 3126325 on 2016/09/15 by Jamie.Dale Made sure that UWorld::GetAssetRegistryTags called its Super function so that properties tagged as AssetRegistrySearchable will be added. #rb Andrew.Rodham Change 3126403 on 2016/09/15 by Gareth.Martin Added Find and Contains functions to TBitArray #rb Steve.Robb Change 3126405 on 2016/09/15 by Gareth.Martin Allowed instances of Hierarchical Instanced Mesh Components to be moved around with the transform widget in the blueprint editor - Just like regular instanced mesh components! Also fixed not being able to move instances of an instanced mesh component when it is the root component Also also fixed Hierarchical Instanced Mesh Components not flushing their async tree build on saving (this was causing log spam from PostLoad when dragging instances around as the blueprint would constantly reinstance the component before the async tree build had finished) #jira UE-29357 #rb Allan.Bentham Change 3126444 on 2016/09/15 by Jamie.Dale Fixed the loc dashboard configs not working with SCC This isn't a great solution, but the whole way the loc dashboard manages its config data is in need of an overhaul. #rb none Change 3126446 on 2016/09/15 by Jamie.Dale Fixed loc dashboard game and engine targets sharing the same expansion settting #rb none Change 3126555 on 2016/09/15 by Chris.Wood Removed WER from Windows crash handling. Crashes saved to log folder and passed to CRC with explicit path. [UE-34470] - Investigate WER settings and if they can conflict with CRC on Windows #rb Steve.Robb Change 3126586 on 2016/09/15 by Gareth.Martin Fixed missing landscape components when using a LODBias (cloned from 4.13.1) #jira UE-35873 #rb Jack.Porter Change 3126610 on 2016/09/15 by Jamie.Dale Stopped PS4 from always staging all ICU data files #rb Marcus.Wassmer Change 3126779 on 2016/09/15 by Michael.Dupuis #jira UE-32914 Improve the help text to provide usage examples and params #rb Alexis.Matte Change 3126849 on 2016/09/15 by Matt.Kuhlenschmidt Fix font material and outline font material not being animatable in sequencer #rb frank.fella Change 3126858 on 2016/09/15 by Matt.Kuhlenschmidt File not saved #rb none Change 3127001 on 2016/09/15 by Matt.Kuhlenschmidt Fixed reset to default state still not appearing in all cases after changing a property. #rb none Change 3127038 on 2016/09/15 by Nick.Darnell UMG - Improving focus setting for users on widgets. If we're unable to set the focus immediately, possibly because the user is setting focus in the Construct callback before the widget is in the tree, we now update the SlateOperations FReply on LocalPlayer to set focus next frame when it's more likely the widget will become focusable. #rb none Change 3127061 on 2016/09/15 by Nick.Darnell Slate - We now have a reentrancy guard in TPanelChildren to avoid the broad cases where users might attempt to remove children while all children are being removed. Which is an easy case to engineer if you've got widgets spawning children managed by another widget, that all go away at the same time, thus causing the parent to attempt to cleanup children. The end result is a delete while deleting. So now TPanelChildren prevents adds/removes while emptying the list of children. #jira UE-35726 #rb Matt.Kuchlenschmidt Change 3127205 on 2016/09/15 by Alex.Delesky #jira UE-18013 - Users can now add Textures, Materials, or Sprites to a Widget Blueprint directly from the content browser. This also fixes a few issues with adding Widget Blueprints to another Widget BP from the content browser, such as adding a widget to itself or creating a circular dependency. #rb Nick.Darnell Change 3127971 on 2016/09/16 by Matt.Kuhlenschmidt Fix crash in scene outliner if actors become invalid #rb none https://jira.ol.epicgames.net/browse/UE-35932 Change 3128011 on 2016/09/16 by Matt.Kuhlenschmidt Added guards for crashes accessing slate resources for deleted uobjects #rb nick.darnell Change 3128067 on 2016/09/16 by Michael.Dupuis #jira UE-34158 Add an option to auto expand advanced details #rb Alexis.Matte Change 3128073 on 2016/09/16 by Michael.Dupuis #jira UE-1145 Set Save As to Ctrl + Alt + S Set Save All to Ctrl + Shift + S Set Save Current to Ctrl + S #rb Alexis.Matte Change 3128117 on 2016/09/16 by Jamie.Dale Updated the pin-type filter combo to filter on both the localized and source type descriptions #jira UE-36081 #rb none Change 3128177 on 2016/09/16 by Alexis.Matte #jira UE-35946 Remove unnecessary GetReadValue call with bad parameter. The read value call is cache so subsequent call was returning the bad cache value. #rb michael.dupuis #codereview matt.kuhlenschmidt Change 3128387 on 2016/09/16 by Gareth.Martin Fixed location and rotation of arrow widget in the landscape mirror tool when using one of the new "Rotate" modes #jira UE-36093 #rb none Change 3128445 on 2016/09/16 by Matt.Kuhlenschmidt Guard against scene outliner crash. Print out tree when items appear twice. https://jira.ol.epicgames.net/browse/UE-35935 #rb none Change 3128454 on 2016/09/16 by Matt.Kuhlenschmidt Remove category for WindowTitleBarArea. It is very custom for internal use and should not be a top level widget #rb none Change 3128482 on 2016/09/16 by Michael.Dupuis Added new key binding for generic Save, Save As Added new key binding for Save All for the content browser #rb Alexis.Matte (approved by MattK) Change 3128560 on 2016/09/16 by Matt.Kuhlenschmidt Fix build warning #codereview nick.darnell #rb none Change 3128642 on 2016/09/16 by Alexis.Matte #jira UE-36047 We now convert the light color correctly when importing and exporting fbx files. UE4 is sRGB and FBX is linear #rb none #codereview matt.kuhlenschmidt Change 3128733 on 2016/09/16 by Nick.Darnell UMG - Fixing a bad merge, some code was removed causing all BindWidget statements to fail to compile correctly. #jira UE-36105 #rb none Change 3128768 on 2016/09/16 by Matt.Kuhlenschmidt Fix selection outline showing around edges of all internal mesh sections of a component instead of around the entire actor #rb none Change 3128779 on 2016/09/16 by Matt.Kuhlenschmidt Fix offset characters on some small fonts #rb none Change 3130057 on 2016/09/19 by Jamie.Dale Fixing volatility and invalidation issues for text widgets #jira UE-33988 #rb Nick.Darnell Change 3130064 on 2016/09/19 by Jamie.Dale Changed mprof meta-data to allow unicode strings and updated ReadString to deal with them correctly #rb James.Hopkin Change 3130233 on 2016/09/19 by Michael.Dupuis #jira UE-32914 Added missing args that the UI supported #rb Alexis.Matte Change 3130265 on 2016/09/19 by Nick.Darnell Automation - Cleaning up some API items. #rb none Change 3130378 on 2016/09/19 by Matt.Kuhlenschmidt Fix reentrancy saving assets while a prompt for checkout dialog is open #rb none Change 3130398 on 2016/09/19 by Jamie.Dale Fixing UHT error when building #rb none Change 3132101 on 2016/09/20 by Nick.Darnell UMG - Adding a toolbar option in the designer for the 'G' command, similar to 'Game View' in the level editor, it disables all the dashed lines / future editor visuals. #rb none Change 3132110 on 2016/09/20 by Nick.Darnell PR #2792: ShowFlags for WidgetComponents (Contributed by projectgheist) #jira UE-13770 #rb Nick.Darnell Change 3132111 on 2016/09/20 by Nick.Darnell UMG - The retainer now embeds a virtual window into the focus path so that paths are resolved correctly. #rb none Change 3132138 on 2016/09/20 by Michael.Dupuis #jira UE-30945 Added missing PostEditComponentMove after drag is finished #rb Alexis.Matte Change 3132147 on 2016/09/20 by Michael.Dupuis #jira UE-30866 Fixed the filter to work properly #rb Alexis.Matte Change 3132190 on 2016/09/20 by Matt.Kuhlenschmidt Fix static analysis warnings in this file #rb none Change 3132231 on 2016/09/20 by Nick.Darnell Slate - Updating the material blend states to match what is expected of Slate rendering, which differs a lot from the scene renderer with the way it treats alpha. This fixes translucent rendering with the retainer widget, users will need to set their materials to Alpha Composite though for it to behave as expected. #jira UE-33285 #rb none Change 3132255 on 2016/09/20 by Alex.Delesky #jira UE-36048 - TMap and TSet properties are now disallowed from adding more children through the Details panel when they contain the dfault value for a key or element. Reset to Default is also no longer allowed on a Map or Set child when it will result in a second default value existing within the container. #rb Matt.Kuhlenschmidt Change 3132587 on 2016/09/20 by Mike.Fricker MIDI Plugin: Fixed a CIS error in shipping configuration (introduced in CL 3108604) #rb none #lockdown matt.kuhlenschmidt Change 3132623 on 2016/09/20 by Matt.Kuhlenschmidt Fix crash opening the cooker settings https://jira.it.epicgames.net/browse/UE-36197 #rb none #lockdown nick.darnell Change 3133144 on 2016/09/20 by Nick.Darnell Build configuration for automation tests. #rb none #lockdown matt.kuhlenschmidt Change 3133206 on 2016/09/20 by Matt.Kuhlenschmidt Fix default material on odin text #rb none #lockdown nick.darnell Change 3133913 on 2016/09/21 by Nick.Darnell Back out revision 17 from //UE4/Dev-Editor/Engine/Source/Runtime/UMG/Private/Slate/SRetainerWidget.cpp #rb none #jira UE-36231 #lockdown matt.kuhlenschmidt [CL 3133983 by Matt Kuhlenschmidt in Main branch]
2016-09-21 10:07:18 -04:00
FText::AsNumber(PackageNameLengthForCooking), FText::AsNumber(ContentBrowserUtils::MaxCookPathLen)), PackageNameLengthForCooking > ContentBrowserUtils::MaxCookPathLen ? true : false);
// Add Collections
{
FCollectionManagerModule& CollectionManagerModule = FCollectionManagerModule::GetModule();
const FString CollectionNames = CollectionManagerModule.Get().GetCollectionsStringForObject(AssetData.ObjectPath, ECollectionShareType::CST_All);
if (!CollectionNames.IsEmpty())
{
AddToToolTipInfoBox(InfoBox, LOCTEXT("AssetToolTipKey_Collections", "Collections"), FText::FromString(CollectionNames), false);
}
}
// Add tags
for (const auto& ToolTipTagItem : CachedToolTipTags)
{
AddToToolTipInfoBox(InfoBox, ToolTipTagItem.Key, ToolTipTagItem.Value, ToolTipTagItem.bImportant);
}
// Add asset source files
TOptional<FAssetImportInfo> ImportInfo = FAssetSourceFilenameCache::ExtractAssetImportInfo(AssetData.TagsAndValues);
if (ImportInfo.IsSet())
{
for (const auto& File : ImportInfo->SourceFiles)
{
AddToToolTipInfoBox( InfoBox, LOCTEXT("TileViewTooltipSourceFile", "Source File"), FText::FromString(File.RelativeFilename), false );
}
}
TSharedRef<SVerticalBox> OverallTooltipVBox = SNew(SVerticalBox);
// Top section (asset name, type, is checked out)
OverallTooltipVBox->AddSlot()
.AutoHeight()
.Padding(0, 0, 0, 4)
[
SNew(SBorder)
.Padding(6)
.BorderImage(FEditorStyle::GetBrush("ContentBrowser.TileViewTooltip.ContentBorder"))
[
SNew(SVerticalBox)
+ SVerticalBox::Slot()
.AutoHeight()
[
SNew(SHorizontalBox)
+ SHorizontalBox::Slot()
.AutoWidth()
.VAlign(VAlign_Center)
.Padding(0, 0, 4, 0)
[
SNew(STextBlock)
.Text(NameText)
.Font(FEditorStyle::GetFontStyle("ContentBrowser.TileViewTooltip.NameFont"))
]
+ SHorizontalBox::Slot()
.AutoWidth()
.VAlign(VAlign_Center)
[
SNew(STextBlock).Text(ClassText)
.HighlightText(HighlightText)
]
]
+ SVerticalBox::Slot()
.AutoHeight()
[
SNew(STextBlock)
.Visibility(this, &SAssetViewItem::GetCheckedOutByOtherTextVisibility)
.Text(this, &SAssetViewItem::GetCheckedOutByOtherText)
.ColorAndOpacity(FLinearColor(0.1f, 0.5f, 1.f, 1.f))
]
]
];
// Middle section (user description, if present)
FText UserDescription = GetAssetUserDescription();
if (!UserDescription.IsEmpty())
{
OverallTooltipVBox->AddSlot()
.AutoHeight()
.Padding(0, 0, 0, 4)
[
SNew(SBorder)
.Padding(6)
.BorderImage(FEditorStyle::GetBrush("ContentBrowser.TileViewTooltip.ContentBorder"))
[
SNew(STextBlock)
.WrapTextAt(300.0f)
.Font(FEditorStyle::GetFontStyle("ContentBrowser.TileViewTooltip.AssetUserDescriptionFont"))
.Text(UserDescription)
]
];
}
// Bottom section (asset registry tags)
OverallTooltipVBox->AddSlot()
.AutoHeight()
[
SNew(SBorder)
.Padding(6)
.BorderImage(FEditorStyle::GetBrush("ContentBrowser.TileViewTooltip.ContentBorder"))
[
InfoBox
]
];
return SNew(SBorder)
.Padding(6)
.BorderImage( FEditorStyle::GetBrush("ContentBrowser.TileViewTooltip.NonContentBorder") )
[
OverallTooltipVBox
];
}
else
{
const FText& FolderName = StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderName;
const FString& FolderPath = StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderPath;
// Create a box to hold every line of info in the body of the tooltip
TSharedRef<SVerticalBox> InfoBox = SNew(SVerticalBox);
AddToToolTipInfoBox( InfoBox, LOCTEXT("TileViewTooltipPath", "Path"), FText::FromString(FolderPath), false );
return SNew(SBorder)
.Padding(6)
.BorderImage( FEditorStyle::GetBrush("ContentBrowser.TileViewTooltip.NonContentBorder") )
[
SNew(SVerticalBox)
+SVerticalBox::Slot()
.AutoHeight()
.Padding(0, 0, 0, 4)
[
SNew(SBorder)
.Padding(6)
.BorderImage( FEditorStyle::GetBrush("ContentBrowser.TileViewTooltip.ContentBorder") )
[
SNew(SVerticalBox)
+SVerticalBox::Slot()
.AutoHeight()
[
SNew(SHorizontalBox)
+SHorizontalBox::Slot()
.AutoWidth()
.VAlign(VAlign_Center)
.Padding(0, 0, 4, 0)
[
SNew(STextBlock)
.Text( FolderName )
.Font( FEditorStyle::GetFontStyle("ContentBrowser.TileViewTooltip.NameFont") )
]
+SHorizontalBox::Slot()
.AutoWidth()
.VAlign(VAlign_Center)
[
SNew(STextBlock)
.Text( LOCTEXT("FolderNameBracketed", "(Folder)") )
]
]
]
]
+SVerticalBox::Slot()
.AutoHeight()
[
SNew(SBorder)
.Padding(6)
.BorderImage( FEditorStyle::GetBrush("ContentBrowser.TileViewTooltip.ContentBorder") )
[
InfoBox
]
]
];
}
}
else
{
// Return an empty tooltip since the asset item wasn't valid
return SNullWidget::NullWidget;
}
}
END_SLATE_FUNCTION_BUILD_OPTIMIZATION
EVisibility SAssetViewItem::GetCheckedOutByOtherTextVisibility() const
{
return GetCheckedOutByOtherText().IsEmpty() ? EVisibility::Collapsed : EVisibility::Visible;
}
FText SAssetViewItem::GetCheckedOutByOtherText() const
{
Merging UE4-Streaming to UE4 - Linkers are no longer UObjects. Renamed ULinker, ULinkerLoad and ULinkerSave to FLinker, FLinkerLoad, FLinkerSave respectively - Linkers are now associated with their UPackages - Linker version is now stored in UPackages - Async loading is now performed on a separate thread (if platform supports it and only in cooked builds), with the exception of PostLoad which is still done on the game thread - Added UObject::IsPostLoadThreadSafe() function to determine if PostLoad is thread safe and can be executed on the async loading thread (defaults to false) - UObject creation is now thread safe and can be performed on any thread - Move many of the linker/UObject globals into FUObjectThreadContext (TLS) - GetAsyncLoadPercentage() now takes PostLoad into account - More async loading stats - Added AtomicallySetFlags/ClearFlags to UObject - Made FModuleManager thread safe. - Added FGCScopeGuard as means of preventing GC from executing from non-game thread - It's possible to disable async loading thread through ini settings. - Cancelling async loading will now also trigger GC - Implemented a basic version of async streaming priorities. Change 2410813 by Mikolaj Sieluzycki: Change Sleep in while loop to ConditionalSleep in FMultiReaderSingleWriterGT Change 2410734 by Mikolaj Sieluzycki: Make FModuleManager thread safe. Change 2399879 by Mikolaj Sieluzycki: Basic version of async streaming priorities. Change 2410707 by Mikolaj Sieluzycki: Implement conditional and no stat versions of sleep. Change 2371939 by Robert Manuszewski: Async Loading Improvements: adding more stats (accumulators) Change 2372403 by Robert Manuszewski: Fixing compile errors when STATs are not enabled Change 2371526 by Robert Manuszewski: AsyncLoading Improvements (WIP) Change 2407198 by Robert Manuszewski: Re-implementing delegate fixes for Async Loading Change 2407425 by Robert Manuszewski: Re-implementing cancelling async loading in the async loading branch. Change 2484362 by Robert Manuszewski: Making it possible to disable async loading thread through ini settings. Change 2484744 by Robert Manuszewski: Minimizing locks in GC and other threads when handling UObjects Change 2480190 by Robert Manuszewski: Fixing infinite stall after canceling async loading in non-cooked builds Change 2484268 by Robert Manuszewski: Fixing crash when allocating permanent object pool. Change 2489761 by Robert Manuszewski: Fixing BulkData using linker archive on the main thread even if the linker was created on the async loading thread. Change 2493624 by Robert Manuszewski: Cancelling async loading will now also trigger GC Change 2487881 by Robert Manuszewski: Making ShaderIdMap operations thread safe. Change 2488067 by Robert Manuszewski: Fixing GetAsyncLoadPercentage. It will now also respect PostLoad. Change 2458640 by Robert Manuszewski: Fixing crash in PIE Change 2458825 by Robert Manuszewski: Fixing a few crashes when streaming and the package is missing. Change 2476935 by Robert Manuszewski: Fixing crash while async loading ANavigationData Change 2477361 by Robert Manuszewski: Fixing crashes in cooked game Change 2480095 by Robert Manuszewski: Making FUObjectArray more thread safe Change 2475443 by Robert Manuszewski: Re-enabling single-threaded async loading path for the editor and platforms that don't support multithreading. Change 2475458 by Robert Manuszewski: Making sure bulk data is only loaded on a separate thread if it's not being loaded on the async loading thread. Change 2476661 by Robert Manuszewski: Fixing FlushAsyncLoading not flushing everything Change 2401089 by Jaroslaw Surowiec: Core - Added AtomicallySetFlags/ClearFlags to UObject, added a comment to ThisThreadAtomicallyClearedRFUnreachable [CL 2498249 by Robert Manuszewski in Main branch]
2015-04-01 03:03:18 -04:00
if ( AssetItem.IsValid() && AssetItem->GetType() != EAssetItemType::Folder && !GIsSavingPackage && !IsGarbageCollecting() )
{
const FAssetData& AssetData = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data;
ISourceControlProvider& SourceControlProvider = ISourceControlModule::Get().GetProvider();
FSourceControlStatePtr SourceControlState = SourceControlProvider.GetState(SourceControlHelpers::PackageFilename(AssetData.PackageName.ToString()), EStateCacheUsage::Use);
FString UserWhichHasPackageCheckedOut;
if (SourceControlState.IsValid() && SourceControlState->IsCheckedOutOther(&UserWhichHasPackageCheckedOut) )
{
if ( !UserWhichHasPackageCheckedOut.IsEmpty() )
{
return SourceControlState->GetDisplayTooltip();
}
}
}
return FText::GetEmpty();
}
FText SAssetViewItem::GetAssetUserDescription() const
{
if (AssetItem.IsValid() && AssetTypeActions.IsValid())
{
if (AssetItem->GetType() != EAssetItemType::Folder)
{
const FAssetData& AssetData = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data;
return AssetTypeActions.Pin()->GetAssetDescription(AssetData);
}
}
return FText::GetEmpty();
}
void SAssetViewItem::AddToToolTipInfoBox(const TSharedRef<SVerticalBox>& InfoBox, const FText& Key, const FText& Value, bool bImportant) const
{
FWidgetStyle ImportantStyle;
ImportantStyle.SetForegroundColor(FLinearColor(1, 0.5, 0, 1));
InfoBox->AddSlot()
.AutoHeight()
.Padding(0, 1)
[
SNew(SHorizontalBox)
+SHorizontalBox::Slot()
.AutoWidth()
.Padding(0, 0, 4, 0)
[
SNew(STextBlock) .Text( FText::Format(LOCTEXT("AssetViewTooltipFormat", "{0}:"), Key ) )
.ColorAndOpacity(bImportant ? ImportantStyle.GetSubduedForegroundColor() : FSlateColor::UseSubduedForeground())
]
+SHorizontalBox::Slot()
.AutoWidth()
[
SNew(STextBlock) .Text( Value )
.ColorAndOpacity(bImportant ? ImportantStyle.GetForegroundColor() : FSlateColor::UseForeground())
.HighlightText((Key.ToString() == TEXT("Path")) ? HighlightText : FText())
]
];
}
void SAssetViewItem::UpdatePackageDirtyState()
{
bool bNewIsDirty = false;
// Only update the dirty state for non-temporary asset items that aren't a built in script
if ( AssetItem.IsValid() && !AssetItem->IsTemporaryItem() && AssetItem->GetType() != EAssetItemType::Folder && !FPackageName::IsScriptPackage(CachedPackageName) )
{
if ( AssetPackage.IsValid() )
{
bNewIsDirty = AssetPackage->IsDirty();
}
}
if ( bNewIsDirty != bPackageDirty )
{
bPackageDirty = bNewIsDirty;
DirtyStateChanged();
}
}
bool SAssetViewItem::IsDirty() const
{
return bPackageDirty;
}
void SAssetViewItem::UpdateSourceControlState(float InDeltaTime)
{
SourceControlStateDelay += InDeltaTime;
if ( !bSourceControlStateRequested && SourceControlStateDelay > 1.0f && ISourceControlModule::Get().IsEnabled() && AssetItem.IsValid() )
{
// Only update the SCC state for non-temporary asset items that aren't a built in script
if ( !AssetItem->IsTemporaryItem() && AssetItem->GetType() != EAssetItemType::Folder && !FPackageName::IsScriptPackage(CachedPackageName) )
{
// Request the most recent SCC state for this asset
ISourceControlModule::Get().QueueStatusUpdate(CachedPackageFileName);
}
bSourceControlStateRequested = true;
}
}
void SAssetViewItem::CachePackageName()
{
if(AssetItem.IsValid())
{
if(AssetItem->GetType() != EAssetItemType::Folder)
{
CachedPackageName = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.PackageName.ToString();
CachedPackageFileName = SourceControlHelpers::PackageFilename(CachedPackageName);
}
else
{
CachedPackageName = StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderName.ToString();
}
}
}
void SAssetViewItem::CacheToolTipTags()
{
CachedToolTipTags.Reset();
if(AssetItem->GetType() != EAssetItemType::Folder)
{
const FAssetData& AssetData = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data;
UClass* AssetClass = FindObject<UClass>(ANY_PACKAGE, *AssetData.AssetClass.ToString());
// If we are using a loaded class, find all the hidden tags so we don't display them
TMap<FName, UObject::FAssetRegistryTagMetadata> MetadataMap;
TSet<FName> ShownTags;
if ( AssetClass != NULL && AssetClass->GetDefaultObject() != NULL )
{
AssetClass->GetDefaultObject()->GetAssetRegistryTagMetadata(MetadataMap);
TArray<UObject::FAssetRegistryTag> Tags;
AssetClass->GetDefaultObject()->GetAssetRegistryTags(Tags);
for ( auto TagIt = Tags.CreateConstIterator(); TagIt; ++TagIt )
{
if (TagIt->Type != UObject::FAssetRegistryTag::TT_Hidden )
{
ShownTags.Add(TagIt->Name);
}
}
}
// If an asset class could not be loaded we cannot determine hidden tags so display no tags.
if( AssetClass != NULL )
{
// Add all asset registry tags and values
for (const auto& KeyValue: AssetData.TagsAndValues)
{
// Skip tags that are set to be hidden
if ( ShownTags.Contains(KeyValue.Key) )
{
const UObject::FAssetRegistryTagMetadata* Metadata = MetadataMap.Find(KeyValue.Key);
const bool bImportant = (Metadata != nullptr && !Metadata->ImportantValue.IsEmpty() && Metadata->ImportantValue == KeyValue.Value);
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3167359) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3152124 on 2016/10/05 by Jamie.Dale Fixed SOutputLog filter not handling OnTextCommitted Change 3152255 on 2016/10/05 by Michael.Dupuis #jira UE-28173 Support \" properly in FName Change 3152273 on 2016/10/05 by Nick.Darnell Core - The module manager is now thread safer, we had a critical section around the internal module list - but we were incrementing/decrementing shared pointers to module data shared pointers that were not thread safe outside of the critical section. Ran into a crash working on some heavily threaded code in automation. Change 3152314 on 2016/10/05 by Nick.Darnell Automation - Continued work to rough out the automation workflow for screenshot. Still lots of work remaining, but it appears the basic of approving images might be working as of this CL. Change 3152316 on 2016/10/05 by Michael.Dupuis #jira UE-30346 Update selection when in tree view mode Change 3152317 on 2016/10/05 by Nick.Darnell Automation - Adding some test shots to compare against to EngineTest for screenshot approval. Change 3152319 on 2016/10/05 by Michael.Dupuis #jira UE-29817 StringAssetReference will now only open an Asset picker (not actor picker) as the goal is to reference an asset Change 3152521 on 2016/10/05 by Nick.Darnell Automation - Fixing some issues with where it reads the screenshot compare rules. Change 3152536 on 2016/10/05 by Alexis.Matte Fix FBX automation test. - Make sure the fbx test can avoid automatic detection of the mesh type - Avoid to log the warning when the importer set the material usage after creating a material for skeletalmesh. Change 3152572 on 2016/10/05 by Nick.Darnell Automation - The GameProjectAutomationTests now do some pre-run house cleaning to make sure the project doesn't already exist, and tries to remove it if it was created previously but not deleted. Change 3152591 on 2016/10/05 by Nick.Darnell Automation - Changing the game project errors to be errors. Change 3153115 on 2016/10/06 by Jamie.Dale Removed superflous padding when SPropertyEditorAsset had no buttons Change 3153215 on 2016/10/06 by Michael.Dupuis Fixed build warning Change 3153248 on 2016/10/06 by Nick.Darnell Automation - Working on solving projects not being generated, suspect UBT isn't built or isn't available. Change 3153255 on 2016/10/06 by Nick.Darnell PR #2835: Fix TestEqual AddError Message in FAutomationTestBase (Contributed by dorgonman) #jira UE-36922 Change 3153300 on 2016/10/06 by Nick.Darnell Automation - Enabled verbose logging to automation build farm. Change 3153343 on 2016/10/06 by Matt.Kuhlenschmidt PR #2825: More project launcher progress improvements (Contributed by projectgheist) Change 3153506 on 2016/10/06 by Gareth.Martin Fixed crash trying to edit landscape with r.LightPropagationVolume=1 enabled #jira UE-36933 Change 3153752 on 2016/10/06 by tim.gautier Add toggle button to UMG_Behavior. Set Level Blueprint for TM-UMG to AllWidget Change 3153763 on 2016/10/06 by Nick.Darnell Automation - Disable verbose logging. Change 3153778 on 2016/10/06 by Nick.Darnell PR #2837: Fixed engine compilation with defined LOG_SLATE_EVENTS (Contributed by Pierdek) #jira UE-36940 Change 3153943 on 2016/10/06 by Nick.Darnell Automation - Disabling some broken tests. Change 3154035 on 2016/10/06 by Nick.Darnell Automation - Fixing re-runs for tests that want them. Previously this wasn't working for any test that was run using the Reprostring method of being executed. Change 3154039 on 2016/10/06 by Nick.Darnell Automation - Updating some test assets in the EngineTest project. Change 3154476 on 2016/10/07 by Richard.TalbotWatkin Fix to regression where vertex color view in Mesh Paint Mode no longer worked correctly. We now allow selected static meshes to go down the dynamic path if VertexColors show mode is active. #jira UE-36772 - Selecting a channel in Vertex Paint mode does not show the channel color Change 3154650 on 2016/10/07 by Alexis.Matte Add new front axis facing X option to fbx importer Change 3154785 on 2016/10/07 by Nick.Darnell Automation - Continued work on automation, ripping out the message bus from the screenshot manager, that's causing the screenshot manager to recieve shots from every machine ever running tests. The Automation Controller is now in charge, and will tell the screenshot manager whatever it needs. Change 3155131 on 2016/10/07 by Michael.Dupuis #jira UE-36509 Do not disabled inverse filter when doing a sync to asset Change 3155141 on 2016/10/07 by Michael.Dupuis #jira UE-36056 Do not open the Actor Picker if we're working on an archetype object Change 3155262 on 2016/10/07 by Michael.Dupuis #jira UE-19737 reset ctrl key when resetting state to None Change 3156326 on 2016/10/09 by Matt.Kuhlenschmidt Fixed crash when asset picker is used without a property editor (usually a heavily customized property). Change 3156473 on 2016/10/10 by Richard.TalbotWatkin Attempt to make geometry render / rebuild more robust in the hope of catching UE-36265. #jira UE-36265 - [CrashReport] UE4Editor_Engine!FModelSceneProxy::HasSelectedSurfaces() [modelrender.cpp:538] Change 3156479 on 2016/10/10 by Richard.TalbotWatkin Fixed non-editor build. Change 3156579 on 2016/10/10 by Alexis.Matte Add a check to make sure curve pointer is valid. #jira UE-36177 Change 3156585 on 2016/10/10 by Ben.Marsh Fix line endings for screenshot settings. Change 3156617 on 2016/10/10 by Matt.Kuhlenschmidt Disable per-pixel blending of menus by default. Causes artifacts on windows versions and we are not using it. Change 3156674 on 2016/10/10 by Nick.Darnell Automation - Continued work on the automation workflow. Now screenshot functional test actors actually have the screenshot processed for differences during the test back on the test controller machine, and then waits for the results of the comparison to be performed. Change 3156709 on 2016/10/10 by Alexis.Matte #jira UE-16337 Make sure the base mesh import data transform is used when we import a LOD. Change 3156714 on 2016/10/10 by Nick.Darnell Automation - Fixing -game crash due to TestName being null in functional test. Change 3156721 on 2016/10/10 by Nick.Darnell Automation - FunctionalAITest now implements IsReady to check if the navigation mesh has finished being built. Change 3156748 on 2016/10/10 by Nick.Darnell Autopmation - Fixing a warning. Change 3156943 on 2016/10/10 by Alex.Delesky Fixed an issue where closing out the "Add Code" window with an active toast stating that an IDE was downloading would prevent the toast from clearing correctly. #jira none Change 3156946 on 2016/10/10 by Alex.Delesky #jira UE-36414 - Adding support for the P4Changelist command line argument to the P4 operations that were missing it. Change 3158215 on 2016/10/11 by Nick.Darnell Automation - Continued work on the screenshot comparison, fixed a crash, the system now reports if the screenshot was new, as well as similar, so that the script can react and warn when new screenshots are produced. Manually fired screenshots now properly wait until they've been compared before the test moves forward. Change 3158322 on 2016/10/11 by Michael.Dupuis #jira UE-36063 If the collection is not shown when trying to save one, force show them so the user understand what is going on Change 3158333 on 2016/10/11 by Alex.Delesky #jira UE-36829 - Rebuilt SVN 1.9.4 libs for Windows with CyrusSASL 2.1.26 and SWIG 3.0.10 support. Change 3158399 on 2016/10/11 by Nick.Darnell Automation - TTF Font log statements that were not warnings are no longer warnings. Change 3158406 on 2016/10/11 by Nick.Darnell Automation - Updating some automation scripts in the engnine that were using file paths to now use FStringAssetReferences, that cleaned up a lot of nasty convert filepath to asset reference code in the tests. Also introducing some maps, and setting up the configs to use them to try and appease some of the existing tests that were expecting them. Change 3158419 on 2016/10/11 by Alex.Delesky #jira UE-36829 - SVN 1.9.4 libraries, but also with Java 8u101 support. Change 3158537 on 2016/10/11 by Nick.Darnell Automation - Updating some automation scripts in the engnine that were using file paths to now use FStringAssetReferences, that cleaned up a lot of nasty convert filepath to asset reference code in the tests. Also introducing some maps, and setting up the configs to use them to try and appease some of the existing tests that were expecting them. Adding some missing files. Change 3158726 on 2016/10/11 by Michael.Dupuis #jira UE-37001 Perform manual migration of UICurve to proper config category Change 3158728 on 2016/10/11 by Nick.Darnell Automation - Fixing some warnings. Adding more testing to the Domino map to serve as a better example. Change 3158753 on 2016/10/11 by Michael.Dupuis #jira UE-26261 change it's by its Change 3158984 on 2016/10/11 by Alexis.Matte Fix D&D folder import in content browser. We have to expand the root directory to have the correct path. #jira UE-32155 Change 3159640 on 2016/10/12 by Jamie.Dale Split localized package redirection out of FCoreDelegates::PackageNameResolvers They're different enough in behavior that the delegate resolution was breaking the localized package resolution by resolving in too many places and causing the localized package to be loaded with its real localized name as well as the fake non-localized name. #jira UE-37119 Change 3159741 on 2016/10/12 by Nick.Darnell Slate - Fixing the SGraphPanel's mouse offset calculations so that it works with HDPI mode. Change 3159762 on 2016/10/12 by Nick.Darnell Automation - Adding a way to take a screenshot with the UI, not great yet - it doesn't really obey the rules of resolution, because of the method it uses. Change 3160210 on 2016/10/12 by Gareth.Martin Fixed crash when changing Landscape LOD while using "Grass use Landscape Lightmap" Change 3160216 on 2016/10/12 by Gareth.Martin Removed unused FLandscapeComponentSceneProxy::LayerNames and made LayerColors editor-only Fixed negative LODBias on landscape components to actually do anything Change 3160239 on 2016/10/12 by Gareth.Martin Removed an unused variable Change 3160455 on 2016/10/12 by Jamie.Dale Fixed FText properties exported to asset tags displaying in their NSLOCTEXT form in the asset tooltips Change 3160457 on 2016/10/12 by Jamie.Dale Localization automation now groups everything into a single CL and reverts PO files without significant changes Change 3160554 on 2016/10/12 by Nick.Darnell UMG - Fixing some panning logic to work with HDPI mode in the designer. Change 3161712 on 2016/10/13 by Jamie.Dale Fixed TSharedMapView using hard-coded types Change 3163044 on 2016/10/14 by Jamie.Dale Fixed line-break iterators incorrectly breaking words in CJK Change 3163046 on 2016/10/14 by Jamie.Dale Text layout no longer creates break candidates when wrapping is disabled Change 3163217 on 2016/10/14 by Jamie.Dale Fixed ensure caused by FMediaTextureResource::GetResourceSizeEx Change 3163641 on 2016/10/14 by Alex.Delesky #jira UE-36829 - Updated Mac SVN libraries, along with a more accurate changelog for Windows SVN libs Change 3164428 on 2016/10/17 by Nick.Darnell Slate - Making the FReply for SetMousePos easier to debug, since that option is potentially very frustrating to debug when someone is changing it. Change 3164833 on 2016/10/17 by Jamie.Dale Fixed ParseNumber consuming strings with multiple sequential dots as valid numbers, eg) "10..." Change 3164868 on 2016/10/17 by Alexis.Matte Remove re-import material and LOD import material #jira UE-36640 Change 3164874 on 2016/10/17 by Alexis.Matte Fix fbx scene re-import of staticmesh loosing there materials #jira UE-37032 Change 3165080 on 2016/10/17 by Alexis.Matte Remove skinxx workflow for static mesh #jira UE-37262 Change 3165232 on 2016/10/17 by Nick.Darnell Automation - Adding some sub-level testing. Change 3165822 on 2016/10/18 by Nick.Darnell Slate - Add a counter to track how much time we spend drawing custom verts each frame. Change 3165934 on 2016/10/18 by Nick.Darnell Slate - Addding cycle counters to SInvalidationPanel's Tick and Paint. Change 3165947 on 2016/10/18 by Nick.Darnell Slate - Addding very verbose slate stats behind a compiler flag to avoid the large overhead of these stats. To enable them you'll need to set WITH_VERY_VERBOSE_SLATE_STATS to 1, added a guide on debugging slate performance to the SlateGlobals.h // HOW TO GET AN IN-DEPTH PERFORMANCE ANALYSIS OF SLATE // // Step 1) // Set WITH_VERY_VERBOSE_SLATE_STATS to 1. // // Step 2) // When running the game (outside of the editor), run these commandline options // in order and you'll get a large dump of where all the time is going in Slate. // // stat group enable slateverbose // stat group enable slateveryverbose // stat dumpave -root=stat_slate -num=120 -ms=0 Change 3165962 on 2016/10/18 by Nick.Darnell UMG - Play first frame of sequence in UMG immediately when told to play an animation. Change 3165981 on 2016/10/18 by Nick.Darnell Core - GetDisplayNameText now stores the FName for DisplayName in a static instead of using TEXT("DisplayName"). Change 3166000 on 2016/10/18 by Jamie.Dale Removed bulk-data from fonts The main complaints about composite fonts have always been: 1) They use too much memory at runtime. 2) They bloat if you use the same font face twice. 3) They often break when used outside the game thread. This change aims to address all of these issues by removing bulk-data from fonts (which was the cause of the memory bloat and threading issues), and introduces UFontFace assets (which allow you to re-use the same font face in different entries within a composite font). No existing font data is lost during this transition, however you must manually update your UFont assets to reference external UFontFace assets before you're able to edit the existing data (which is automatically upgraded to UFontFace assets *within* the UFont package). This upgrade can be done via the composite font editor. During cook these UFontFace assets write out the actual TTF/OTF font data as a .ufont file, which is what FreeType actually loads at runtime (the internals of the Slate font cache are now completely independent of UObjects and their lifetimes and loading concerns). Since we're now always loading files from disk, we can also give the user an option of whether to "pre-load" (which will load the entire font into memory, like bulk-data always used to), or "stream" the font from disk (which has minimal memory overhead, but needs decent I/O performance). Change 3166001 on 2016/10/18 by Jamie.Dale Updated the Launcher to no longer use bulk-data for fonts Change 3166003 on 2016/10/18 by Jamie.Dale Updated the Engine fonts to use UFontFace assets Change 3166028 on 2016/10/18 by Alex.Delesky #jira UE-37021 - The scrollbar will now remain at the bottom of the output log after specifying a filter. Change 3166071 on 2016/10/18 by Nick.Darnell Slate - Fixing a warning about hiding an inherited member. Change 3166213 on 2016/10/18 by Jamie.Dale Fixing crash caused by accessing a zeroed FText Change 3166222 on 2016/10/18 by Nick.Darnell Automation - Adding some code to end the sub level test when it starts. Change 3166231 on 2016/10/18 by Nick.Darnell Editor - Fixing the build warning, SOutputLog.cpp:748:4: warning: field 'TextLayout' will be initialized after field 'CachedNumMessages' Change 3166717 on 2016/10/18 by Nick.Darnell Automation - Removing references to old options that are no longer file paths, and are now StringAssetReferences these options were not being used by anyone as far as I can tell. #jira UE-37482 Change 3167279 on 2016/10/19 by Jamie.Dale Fixed text render component regression with custom MIDs #jira UE-37305 Change 3167356 on 2016/10/19 by Alexis.Matte Make sure the old asset are build correctly #jira UE-37461 Change 3167359 on 2016/10/19 by Alexis.Matte Fix re-import of mesh material assignment regression #jira UE-37479 [CL 3168049 by Matt Kuhlenschmidt in Main branch]
2016-10-19 15:01:48 -04:00
// The string value might be localizable text, so we need to stringify it for display
FString ValueString = KeyValue.Value;
if (FTextStringHelper::IsComplexText(*ValueString))
{
FText TmpText;
if (FTextStringHelper::ReadFromString(*ValueString, TmpText))
{
ValueString = TmpText.ToString();
}
}
// Since all we have at this point is a string, we can't be very smart here.
// We need to strip some noise off class paths in some cases, but can't load the asset to inspect its UPROPERTYs manually due to performance concerns.
const TCHAR StringToRemove[] = TEXT("Class'/Script/");
if (ValueString.StartsWith(StringToRemove) && ValueString.EndsWith(TEXT("'")))
{
// Remove the class path for native classes, and also remove Engine. for engine classes
const int32 SizeOfPrefix = ARRAY_COUNT(StringToRemove);
ValueString = ValueString.Mid(SizeOfPrefix - 1, ValueString.Len() - SizeOfPrefix).Replace(TEXT("Engine."), TEXT(""));
}
// Check for DisplayName metadata
FText DisplayName;
if (UProperty* Field = FindField<UProperty>(AssetClass, KeyValue.Key))
{
DisplayName = Field->GetDisplayNameText();
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3208226) #lockdown Nick.Penwarden #rb None ========================== MAJOR FEATURES + CHANGES ========================== Change 3173153 on 2016/10/25 by Graeme.Thornton Pak signing changes - Integrated into EDL loader - Changed to not encrypt each CRC in the sig file, rather just store a single encryped signature of the entire sig file. Removes need to decrypt thousands of signatures at startup. Change 3173531 on 2016/10/25 by Steven.Hutton Removing unused j query packages. Change 3174743 on 2016/10/26 by Gil.Gribb UE4 - fixed COTF with EDL Change 3177896 on 2016/10/28 by Steve.Robb TSharedPtr and TSharedRef aliasing constructors. Removal of static_asserts for TSharedPtr<UObject>. Change 3180343 on 2016/10/31 by Steve.Robb Reimplementation of changes from CL#s 3050329 and 3105715 that were lost in merges 3094597 and 3105741. Change 3181382 on 2016/11/01 by Steve.Robb Visual Studio debugger visualizers for delegates. Change 3182738 on 2016/11/02 by Graeme.Thornton Re-enable signed archive reader so non-pakpreacher based reads still get signature checked Change 3183420 on 2016/11/02 by Steve.Robb Fix to TIsZeroConstructType for TScriptDelegate. Change 3184872 on 2016/11/03 by Robert.Manuszewski Fixing memory stomps in SSL certificate initialization (found with mallocstomp) Change 3184873 on 2016/11/03 by Robert.Manuszewski Adding thread safety checks to async loading code Change 3185535 on 2016/11/03 by Ben.Zeigler Fix it so calling CreateDefaultSubobject with bTransient = true sets the object transient flag. This fixes EDL Crashes involving components. Change 3186636 on 2016/11/04 by Graeme.Thornton AES encryption integrated into EDL system Pak signing and AES encryption now configurable by ini files rather than magical text files Change 3186637 on 2016/11/04 by Graeme.Thornton Configured pak signing and encryption in ShooterGame for reference Change 3186639 on 2016/11/04 by Graeme.Thornton Encryption changes for Orion * Move pak signing keys into new INI format * Add AES key and enable INI file encryption Change 3186661 on 2016/11/04 by Graeme.Thornton Change unrealpak command line params to accept AES key as a separete parameter Change 3186670 on 2016/11/04 by Robert.Manuszewski Adding a null check before using a package pointer in Linker code #jira UE-38237 Change 3186775 on 2016/11/04 by Graeme.Thornton Fix UBT defines that come in as quoted strings, losing the quotes when passed to the compiler - PS4 and Mac fixes. Other platforms might need fixing too! Change 3186823 on 2016/11/04 by Graeme.Thornton Fixed an incorrect size check in the EDL pak signing code Change 3186925 on 2016/11/04 by Graeme.Thornton Allow UnrealPak to read encryption settings from project ini files Change 3189885 on 2016/11/08 by Graeme.Thornton Static analysis warning fix Change 3190015 on 2016/11/08 by Robert.Manuszewski Thread safety fix for UBlueprintGeneratedClass::PostLoadDefaultObject while UBlueprintGeneratedClass::SerializeDefaultObject runs on the async loading thread Change 3190253 on 2016/11/08 by Chris.Wood Improved MDD performance for on the CR server. [UE-37566] - Improve MDD performance on CR server Blocked MDD init'ing the crash handling code as it isn't desirable on the server. Removed redundant call to SetSymbolPathsFromModules() from CrashDebugHelper. Change 3192993 on 2016/11/10 by Robert.Manuszewski Thread Heartbeat will no longer report the same hang multiple times. Change 3193111 on 2016/11/10 by Robert.Manuszewski Minor change in the condition that detects the same hangs - allow the same callstacks from different threads Change 3193168 on 2016/11/10 by Steve.Robb TSparseArray now reserves space in reverse so that new elements get added to the front of the allocation rather than the back, which is better for memory traversal and meets expectations more closely. Change 3193171 on 2016/11/10 by Steve.Robb Easier debugging of FPendingRegistrantInfo map. Change 3193188 on 2016/11/10 by Steve.Robb TAutoPointer deprecated. Change 3193796 on 2016/11/10 by Graeme.Thornton Fix pak creation failure when no pak signing keys are supplied Change 3194524 on 2016/11/11 by Graeme.Thornton Another static analysis warning fix Change 3195119 on 2016/11/11 by Steve.Robb TAutoPtr deprecated. Fixes to use of TAutoPtr with incompatible memory deallocations (TAutoPtr with FMemory::Malloc and new[]). Some large headers moved into .cpp files. Change 3196582 on 2016/11/14 by Gil.Gribb UE4 - Changed a check to a warning related to detaching linekrs twice. Seen in nativized BP version of platformer game. Change 3196878 on 2016/11/14 by Steve.Robb TScopedPointer deprecated. Change 3198061 on 2016/11/15 by Steve.Robb Class array is no longer regenerated when saving UClasses. Change 3198065 on 2016/11/15 by Robert.Manuszewski Making AssembleReferenceTokenStream thread safe for blueprints loaded on the async loading thread. Change 3198199 on 2016/11/15 by Robert.Manuszewski Pak platform file will now only be used if pak files exist regardless of command line paraks like -pak, -singedpak and -signed. Change 3199954 on 2016/11/16 by Graeme.Thornton Removing USING_SIGNED_CONTENT Change 3200221 on 2016/11/16 by Chris.Wood CrashReportProcess code cleanup - removing unused using directives Change 3200232 on 2016/11/16 by Chris.Wood Multiple CrashReportProcess updates and improvements (CRP v1.2.6) UE-36248 - CRP scalability: All bulk storage or shared data to S3 or suitable network drives InvalidCrashReports now saved to S3 instead of local folder Removed option tosync MinidumpDiagnostics from Perforce Moved MinidumpDiagnostics from old Perforce synched location to its own folder in E:\Services (makes more sense with manual publishing) Added improved logging to Slack with option to monitor MDD performance Added hourly log folders to MDD logs Added support for types of crashes we don't want to symbolicate (using it to skip callstack gen for hang detected ensures) Change 3200382 on 2016/11/16 by Robert.Manuszewski Async Loading code will now detach the linker when resetting async package loader to avoid situations when loading the same asset multiple times results in the following load request finding the old linker after the package has been loading but the async package hasn't been deleted yet (async package for the old request in limbo state but linker exists). Change 3200562 on 2016/11/16 by Gil.Gribb UE4 - Fixed rare issue with reloading nativized blueprints with the EDL and a minor simplication. Change 3201093 on 2016/11/16 by Ben.Zeigler #UE 38654 Fix EDL cooking to correctly search components created directly by UBlueprints, as well as the CDO components it already covered. Also explicitly mark subobject templates as editor only. Fix issue where the AssetImportData associated with Blueprint-owned Curves was ending up in the cooked subobject template list. Stopped it from creating those objects, and mark the class editor only. Change 3201736 on 2016/11/17 by Steve.Robb Strtoi64 platform and TCString functions. #fyi robert.manuszewski Change 3201938 on 2016/11/17 by Ben.Woodhouse Dummy integrate of the Square render version workaround (CL 3201913) with _accept target_ to prevent it being integrated to dev-core in future. Commandline: p4 integrate //Tasks/UE4/Dev-LoadTimes/Engine/Source/Runtime/CoreUObject/Private/UObject/LinkerLoad.cpp@3201913,3201913 //UE4/Dev-Core/Engine/Source/Runtime/CoreUObject/Private/UObject/LinkerLoad.cpp #fyi robert.manuszewski Change 3203757 on 2016/11/18 by Robert.Manuszewski Removing debug code from async loading code. Change 3203927 on 2016/11/18 by Robert.Manuszewski Fixing comments in the async loading code. Change 3204851 on 2016/11/18 by Steve.Robb Metafunction for testing if a particular operator<< overload exists, e.g. THasInserterOperator<FArchive&, FMyType&>::Value. Change 3204854 on 2016/11/18 by Steve.Robb UEnumProperty. Change 3205027 on 2016/11/18 by Ben.Zeigler Add useful functions to FAssetPtr and TAssetSubclassOf that already existed on TAssetPtr Add Get() to TSubclassOf so it matches our other wrappers Fix TSubclassOf and TAssetSubclassOf to use the more efficient template method of checking class compatibility Comment and template cleanups for AssetPtr, StringAssetReference, LazyPtr, and SubclassOf Change 3206334 on 2016/11/21 by Ben.Zeigler #UE-38773: Fix it so non-component template subobjects of CDOs are not included as creation dependencies for BP classes, also clean up GetPreloadDependencies as it was adding redundant and null entries #UE-38799: Fix it so WidgetTrees don't get picked up as subobjects, and add ensure at cook time to find null outers that would crash at runtime. Make sure the instanced widget trees are transient. Cook finishes but game is still crashing in some cases, so I might adjust this after other testing Change 3206353 on 2016/11/21 by Ben.Zeigler Fix EnumProperty to handle EDL preload dependencies properly Change 3206625 on 2016/11/21 by Ben.Zeigler Fix enum property crash at runtime by copying what array property does and making sure inner property is not transient Change 3206937 on 2016/11/21 by Ben.Zeigler #jira UE-38905 Fix it so enums inside arrays are migrated properly, the enum tag is lost so use the current one Disable other nested enum migrations as they are unlikely to work. Array property tags need to be refactored to be safer Correctly save enum tag for enum properties, it was being set but not serialized Change 3207002 on 2016/11/21 by Ben.Zeigler #jira UE-38799 Fix it so per-widget copy of widget tree and all widgets inside are properly transient, they were being cooked before but never accessed. Fix case where non ClientOnly public objects nested instead ClientOnly objects would cook but fail to load, and add ensure to catch these cases in the future. If the full outer chain isn't available, it can't be loaded anyway, and this finds issues at cook time instead of load time. We should generally outlaw non-transient objects with transient outers, it does not do what people expect. Change 3207032 on 2016/11/21 by Ben.Zeigler #jira UE-38654 Re-Fix EDL cooking with SCS-added components. They used to have the DefaultSubObject flag but no longer do [CL 3208270 by Ben Zeigler in Main branch]
2016-11-22 18:45:44 -05:00
UProperty* Prop = nullptr;
UEnum* Enum = nullptr;
if (UByteProperty* ByteProp = Cast<UByteProperty>(Field))
{
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3208226) #lockdown Nick.Penwarden #rb None ========================== MAJOR FEATURES + CHANGES ========================== Change 3173153 on 2016/10/25 by Graeme.Thornton Pak signing changes - Integrated into EDL loader - Changed to not encrypt each CRC in the sig file, rather just store a single encryped signature of the entire sig file. Removes need to decrypt thousands of signatures at startup. Change 3173531 on 2016/10/25 by Steven.Hutton Removing unused j query packages. Change 3174743 on 2016/10/26 by Gil.Gribb UE4 - fixed COTF with EDL Change 3177896 on 2016/10/28 by Steve.Robb TSharedPtr and TSharedRef aliasing constructors. Removal of static_asserts for TSharedPtr<UObject>. Change 3180343 on 2016/10/31 by Steve.Robb Reimplementation of changes from CL#s 3050329 and 3105715 that were lost in merges 3094597 and 3105741. Change 3181382 on 2016/11/01 by Steve.Robb Visual Studio debugger visualizers for delegates. Change 3182738 on 2016/11/02 by Graeme.Thornton Re-enable signed archive reader so non-pakpreacher based reads still get signature checked Change 3183420 on 2016/11/02 by Steve.Robb Fix to TIsZeroConstructType for TScriptDelegate. Change 3184872 on 2016/11/03 by Robert.Manuszewski Fixing memory stomps in SSL certificate initialization (found with mallocstomp) Change 3184873 on 2016/11/03 by Robert.Manuszewski Adding thread safety checks to async loading code Change 3185535 on 2016/11/03 by Ben.Zeigler Fix it so calling CreateDefaultSubobject with bTransient = true sets the object transient flag. This fixes EDL Crashes involving components. Change 3186636 on 2016/11/04 by Graeme.Thornton AES encryption integrated into EDL system Pak signing and AES encryption now configurable by ini files rather than magical text files Change 3186637 on 2016/11/04 by Graeme.Thornton Configured pak signing and encryption in ShooterGame for reference Change 3186639 on 2016/11/04 by Graeme.Thornton Encryption changes for Orion * Move pak signing keys into new INI format * Add AES key and enable INI file encryption Change 3186661 on 2016/11/04 by Graeme.Thornton Change unrealpak command line params to accept AES key as a separete parameter Change 3186670 on 2016/11/04 by Robert.Manuszewski Adding a null check before using a package pointer in Linker code #jira UE-38237 Change 3186775 on 2016/11/04 by Graeme.Thornton Fix UBT defines that come in as quoted strings, losing the quotes when passed to the compiler - PS4 and Mac fixes. Other platforms might need fixing too! Change 3186823 on 2016/11/04 by Graeme.Thornton Fixed an incorrect size check in the EDL pak signing code Change 3186925 on 2016/11/04 by Graeme.Thornton Allow UnrealPak to read encryption settings from project ini files Change 3189885 on 2016/11/08 by Graeme.Thornton Static analysis warning fix Change 3190015 on 2016/11/08 by Robert.Manuszewski Thread safety fix for UBlueprintGeneratedClass::PostLoadDefaultObject while UBlueprintGeneratedClass::SerializeDefaultObject runs on the async loading thread Change 3190253 on 2016/11/08 by Chris.Wood Improved MDD performance for on the CR server. [UE-37566] - Improve MDD performance on CR server Blocked MDD init'ing the crash handling code as it isn't desirable on the server. Removed redundant call to SetSymbolPathsFromModules() from CrashDebugHelper. Change 3192993 on 2016/11/10 by Robert.Manuszewski Thread Heartbeat will no longer report the same hang multiple times. Change 3193111 on 2016/11/10 by Robert.Manuszewski Minor change in the condition that detects the same hangs - allow the same callstacks from different threads Change 3193168 on 2016/11/10 by Steve.Robb TSparseArray now reserves space in reverse so that new elements get added to the front of the allocation rather than the back, which is better for memory traversal and meets expectations more closely. Change 3193171 on 2016/11/10 by Steve.Robb Easier debugging of FPendingRegistrantInfo map. Change 3193188 on 2016/11/10 by Steve.Robb TAutoPointer deprecated. Change 3193796 on 2016/11/10 by Graeme.Thornton Fix pak creation failure when no pak signing keys are supplied Change 3194524 on 2016/11/11 by Graeme.Thornton Another static analysis warning fix Change 3195119 on 2016/11/11 by Steve.Robb TAutoPtr deprecated. Fixes to use of TAutoPtr with incompatible memory deallocations (TAutoPtr with FMemory::Malloc and new[]). Some large headers moved into .cpp files. Change 3196582 on 2016/11/14 by Gil.Gribb UE4 - Changed a check to a warning related to detaching linekrs twice. Seen in nativized BP version of platformer game. Change 3196878 on 2016/11/14 by Steve.Robb TScopedPointer deprecated. Change 3198061 on 2016/11/15 by Steve.Robb Class array is no longer regenerated when saving UClasses. Change 3198065 on 2016/11/15 by Robert.Manuszewski Making AssembleReferenceTokenStream thread safe for blueprints loaded on the async loading thread. Change 3198199 on 2016/11/15 by Robert.Manuszewski Pak platform file will now only be used if pak files exist regardless of command line paraks like -pak, -singedpak and -signed. Change 3199954 on 2016/11/16 by Graeme.Thornton Removing USING_SIGNED_CONTENT Change 3200221 on 2016/11/16 by Chris.Wood CrashReportProcess code cleanup - removing unused using directives Change 3200232 on 2016/11/16 by Chris.Wood Multiple CrashReportProcess updates and improvements (CRP v1.2.6) UE-36248 - CRP scalability: All bulk storage or shared data to S3 or suitable network drives InvalidCrashReports now saved to S3 instead of local folder Removed option tosync MinidumpDiagnostics from Perforce Moved MinidumpDiagnostics from old Perforce synched location to its own folder in E:\Services (makes more sense with manual publishing) Added improved logging to Slack with option to monitor MDD performance Added hourly log folders to MDD logs Added support for types of crashes we don't want to symbolicate (using it to skip callstack gen for hang detected ensures) Change 3200382 on 2016/11/16 by Robert.Manuszewski Async Loading code will now detach the linker when resetting async package loader to avoid situations when loading the same asset multiple times results in the following load request finding the old linker after the package has been loading but the async package hasn't been deleted yet (async package for the old request in limbo state but linker exists). Change 3200562 on 2016/11/16 by Gil.Gribb UE4 - Fixed rare issue with reloading nativized blueprints with the EDL and a minor simplication. Change 3201093 on 2016/11/16 by Ben.Zeigler #UE 38654 Fix EDL cooking to correctly search components created directly by UBlueprints, as well as the CDO components it already covered. Also explicitly mark subobject templates as editor only. Fix issue where the AssetImportData associated with Blueprint-owned Curves was ending up in the cooked subobject template list. Stopped it from creating those objects, and mark the class editor only. Change 3201736 on 2016/11/17 by Steve.Robb Strtoi64 platform and TCString functions. #fyi robert.manuszewski Change 3201938 on 2016/11/17 by Ben.Woodhouse Dummy integrate of the Square render version workaround (CL 3201913) with _accept target_ to prevent it being integrated to dev-core in future. Commandline: p4 integrate //Tasks/UE4/Dev-LoadTimes/Engine/Source/Runtime/CoreUObject/Private/UObject/LinkerLoad.cpp@3201913,3201913 //UE4/Dev-Core/Engine/Source/Runtime/CoreUObject/Private/UObject/LinkerLoad.cpp #fyi robert.manuszewski Change 3203757 on 2016/11/18 by Robert.Manuszewski Removing debug code from async loading code. Change 3203927 on 2016/11/18 by Robert.Manuszewski Fixing comments in the async loading code. Change 3204851 on 2016/11/18 by Steve.Robb Metafunction for testing if a particular operator<< overload exists, e.g. THasInserterOperator<FArchive&, FMyType&>::Value. Change 3204854 on 2016/11/18 by Steve.Robb UEnumProperty. Change 3205027 on 2016/11/18 by Ben.Zeigler Add useful functions to FAssetPtr and TAssetSubclassOf that already existed on TAssetPtr Add Get() to TSubclassOf so it matches our other wrappers Fix TSubclassOf and TAssetSubclassOf to use the more efficient template method of checking class compatibility Comment and template cleanups for AssetPtr, StringAssetReference, LazyPtr, and SubclassOf Change 3206334 on 2016/11/21 by Ben.Zeigler #UE-38773: Fix it so non-component template subobjects of CDOs are not included as creation dependencies for BP classes, also clean up GetPreloadDependencies as it was adding redundant and null entries #UE-38799: Fix it so WidgetTrees don't get picked up as subobjects, and add ensure at cook time to find null outers that would crash at runtime. Make sure the instanced widget trees are transient. Cook finishes but game is still crashing in some cases, so I might adjust this after other testing Change 3206353 on 2016/11/21 by Ben.Zeigler Fix EnumProperty to handle EDL preload dependencies properly Change 3206625 on 2016/11/21 by Ben.Zeigler Fix enum property crash at runtime by copying what array property does and making sure inner property is not transient Change 3206937 on 2016/11/21 by Ben.Zeigler #jira UE-38905 Fix it so enums inside arrays are migrated properly, the enum tag is lost so use the current one Disable other nested enum migrations as they are unlikely to work. Array property tags need to be refactored to be safer Correctly save enum tag for enum properties, it was being set but not serialized Change 3207002 on 2016/11/21 by Ben.Zeigler #jira UE-38799 Fix it so per-widget copy of widget tree and all widgets inside are properly transient, they were being cooked before but never accessed. Fix case where non ClientOnly public objects nested instead ClientOnly objects would cook but fail to load, and add ensure to catch these cases in the future. If the full outer chain isn't available, it can't be loaded anyway, and this finds issues at cook time instead of load time. We should generally outlaw non-transient objects with transient outers, it does not do what people expect. Change 3207032 on 2016/11/21 by Ben.Zeigler #jira UE-38654 Re-Fix EDL cooking with SCS-added components. They used to have the DefaultSubObject flag but no longer do [CL 3208270 by Ben Zeigler in Main branch]
2016-11-22 18:45:44 -05:00
Prop = ByteProp;
Enum = ByteProp->Enum;
}
else if (UEnumProperty* EnumProp = Cast<UEnumProperty>(Field))
{
Prop = EnumProp;
Enum = EnumProp->GetEnum();
}
// Strip off enum prefixes if they exist
if (Prop)
{
if (Enum)
{
Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3208226) #lockdown Nick.Penwarden #rb None ========================== MAJOR FEATURES + CHANGES ========================== Change 3173153 on 2016/10/25 by Graeme.Thornton Pak signing changes - Integrated into EDL loader - Changed to not encrypt each CRC in the sig file, rather just store a single encryped signature of the entire sig file. Removes need to decrypt thousands of signatures at startup. Change 3173531 on 2016/10/25 by Steven.Hutton Removing unused j query packages. Change 3174743 on 2016/10/26 by Gil.Gribb UE4 - fixed COTF with EDL Change 3177896 on 2016/10/28 by Steve.Robb TSharedPtr and TSharedRef aliasing constructors. Removal of static_asserts for TSharedPtr<UObject>. Change 3180343 on 2016/10/31 by Steve.Robb Reimplementation of changes from CL#s 3050329 and 3105715 that were lost in merges 3094597 and 3105741. Change 3181382 on 2016/11/01 by Steve.Robb Visual Studio debugger visualizers for delegates. Change 3182738 on 2016/11/02 by Graeme.Thornton Re-enable signed archive reader so non-pakpreacher based reads still get signature checked Change 3183420 on 2016/11/02 by Steve.Robb Fix to TIsZeroConstructType for TScriptDelegate. Change 3184872 on 2016/11/03 by Robert.Manuszewski Fixing memory stomps in SSL certificate initialization (found with mallocstomp) Change 3184873 on 2016/11/03 by Robert.Manuszewski Adding thread safety checks to async loading code Change 3185535 on 2016/11/03 by Ben.Zeigler Fix it so calling CreateDefaultSubobject with bTransient = true sets the object transient flag. This fixes EDL Crashes involving components. Change 3186636 on 2016/11/04 by Graeme.Thornton AES encryption integrated into EDL system Pak signing and AES encryption now configurable by ini files rather than magical text files Change 3186637 on 2016/11/04 by Graeme.Thornton Configured pak signing and encryption in ShooterGame for reference Change 3186639 on 2016/11/04 by Graeme.Thornton Encryption changes for Orion * Move pak signing keys into new INI format * Add AES key and enable INI file encryption Change 3186661 on 2016/11/04 by Graeme.Thornton Change unrealpak command line params to accept AES key as a separete parameter Change 3186670 on 2016/11/04 by Robert.Manuszewski Adding a null check before using a package pointer in Linker code #jira UE-38237 Change 3186775 on 2016/11/04 by Graeme.Thornton Fix UBT defines that come in as quoted strings, losing the quotes when passed to the compiler - PS4 and Mac fixes. Other platforms might need fixing too! Change 3186823 on 2016/11/04 by Graeme.Thornton Fixed an incorrect size check in the EDL pak signing code Change 3186925 on 2016/11/04 by Graeme.Thornton Allow UnrealPak to read encryption settings from project ini files Change 3189885 on 2016/11/08 by Graeme.Thornton Static analysis warning fix Change 3190015 on 2016/11/08 by Robert.Manuszewski Thread safety fix for UBlueprintGeneratedClass::PostLoadDefaultObject while UBlueprintGeneratedClass::SerializeDefaultObject runs on the async loading thread Change 3190253 on 2016/11/08 by Chris.Wood Improved MDD performance for on the CR server. [UE-37566] - Improve MDD performance on CR server Blocked MDD init'ing the crash handling code as it isn't desirable on the server. Removed redundant call to SetSymbolPathsFromModules() from CrashDebugHelper. Change 3192993 on 2016/11/10 by Robert.Manuszewski Thread Heartbeat will no longer report the same hang multiple times. Change 3193111 on 2016/11/10 by Robert.Manuszewski Minor change in the condition that detects the same hangs - allow the same callstacks from different threads Change 3193168 on 2016/11/10 by Steve.Robb TSparseArray now reserves space in reverse so that new elements get added to the front of the allocation rather than the back, which is better for memory traversal and meets expectations more closely. Change 3193171 on 2016/11/10 by Steve.Robb Easier debugging of FPendingRegistrantInfo map. Change 3193188 on 2016/11/10 by Steve.Robb TAutoPointer deprecated. Change 3193796 on 2016/11/10 by Graeme.Thornton Fix pak creation failure when no pak signing keys are supplied Change 3194524 on 2016/11/11 by Graeme.Thornton Another static analysis warning fix Change 3195119 on 2016/11/11 by Steve.Robb TAutoPtr deprecated. Fixes to use of TAutoPtr with incompatible memory deallocations (TAutoPtr with FMemory::Malloc and new[]). Some large headers moved into .cpp files. Change 3196582 on 2016/11/14 by Gil.Gribb UE4 - Changed a check to a warning related to detaching linekrs twice. Seen in nativized BP version of platformer game. Change 3196878 on 2016/11/14 by Steve.Robb TScopedPointer deprecated. Change 3198061 on 2016/11/15 by Steve.Robb Class array is no longer regenerated when saving UClasses. Change 3198065 on 2016/11/15 by Robert.Manuszewski Making AssembleReferenceTokenStream thread safe for blueprints loaded on the async loading thread. Change 3198199 on 2016/11/15 by Robert.Manuszewski Pak platform file will now only be used if pak files exist regardless of command line paraks like -pak, -singedpak and -signed. Change 3199954 on 2016/11/16 by Graeme.Thornton Removing USING_SIGNED_CONTENT Change 3200221 on 2016/11/16 by Chris.Wood CrashReportProcess code cleanup - removing unused using directives Change 3200232 on 2016/11/16 by Chris.Wood Multiple CrashReportProcess updates and improvements (CRP v1.2.6) UE-36248 - CRP scalability: All bulk storage or shared data to S3 or suitable network drives InvalidCrashReports now saved to S3 instead of local folder Removed option tosync MinidumpDiagnostics from Perforce Moved MinidumpDiagnostics from old Perforce synched location to its own folder in E:\Services (makes more sense with manual publishing) Added improved logging to Slack with option to monitor MDD performance Added hourly log folders to MDD logs Added support for types of crashes we don't want to symbolicate (using it to skip callstack gen for hang detected ensures) Change 3200382 on 2016/11/16 by Robert.Manuszewski Async Loading code will now detach the linker when resetting async package loader to avoid situations when loading the same asset multiple times results in the following load request finding the old linker after the package has been loading but the async package hasn't been deleted yet (async package for the old request in limbo state but linker exists). Change 3200562 on 2016/11/16 by Gil.Gribb UE4 - Fixed rare issue with reloading nativized blueprints with the EDL and a minor simplication. Change 3201093 on 2016/11/16 by Ben.Zeigler #UE 38654 Fix EDL cooking to correctly search components created directly by UBlueprints, as well as the CDO components it already covered. Also explicitly mark subobject templates as editor only. Fix issue where the AssetImportData associated with Blueprint-owned Curves was ending up in the cooked subobject template list. Stopped it from creating those objects, and mark the class editor only. Change 3201736 on 2016/11/17 by Steve.Robb Strtoi64 platform and TCString functions. #fyi robert.manuszewski Change 3201938 on 2016/11/17 by Ben.Woodhouse Dummy integrate of the Square render version workaround (CL 3201913) with _accept target_ to prevent it being integrated to dev-core in future. Commandline: p4 integrate //Tasks/UE4/Dev-LoadTimes/Engine/Source/Runtime/CoreUObject/Private/UObject/LinkerLoad.cpp@3201913,3201913 //UE4/Dev-Core/Engine/Source/Runtime/CoreUObject/Private/UObject/LinkerLoad.cpp #fyi robert.manuszewski Change 3203757 on 2016/11/18 by Robert.Manuszewski Removing debug code from async loading code. Change 3203927 on 2016/11/18 by Robert.Manuszewski Fixing comments in the async loading code. Change 3204851 on 2016/11/18 by Steve.Robb Metafunction for testing if a particular operator<< overload exists, e.g. THasInserterOperator<FArchive&, FMyType&>::Value. Change 3204854 on 2016/11/18 by Steve.Robb UEnumProperty. Change 3205027 on 2016/11/18 by Ben.Zeigler Add useful functions to FAssetPtr and TAssetSubclassOf that already existed on TAssetPtr Add Get() to TSubclassOf so it matches our other wrappers Fix TSubclassOf and TAssetSubclassOf to use the more efficient template method of checking class compatibility Comment and template cleanups for AssetPtr, StringAssetReference, LazyPtr, and SubclassOf Change 3206334 on 2016/11/21 by Ben.Zeigler #UE-38773: Fix it so non-component template subobjects of CDOs are not included as creation dependencies for BP classes, also clean up GetPreloadDependencies as it was adding redundant and null entries #UE-38799: Fix it so WidgetTrees don't get picked up as subobjects, and add ensure at cook time to find null outers that would crash at runtime. Make sure the instanced widget trees are transient. Cook finishes but game is still crashing in some cases, so I might adjust this after other testing Change 3206353 on 2016/11/21 by Ben.Zeigler Fix EnumProperty to handle EDL preload dependencies properly Change 3206625 on 2016/11/21 by Ben.Zeigler Fix enum property crash at runtime by copying what array property does and making sure inner property is not transient Change 3206937 on 2016/11/21 by Ben.Zeigler #jira UE-38905 Fix it so enums inside arrays are migrated properly, the enum tag is lost so use the current one Disable other nested enum migrations as they are unlikely to work. Array property tags need to be refactored to be safer Correctly save enum tag for enum properties, it was being set but not serialized Change 3207002 on 2016/11/21 by Ben.Zeigler #jira UE-38799 Fix it so per-widget copy of widget tree and all widgets inside are properly transient, they were being cooked before but never accessed. Fix case where non ClientOnly public objects nested instead ClientOnly objects would cook but fail to load, and add ensure to catch these cases in the future. If the full outer chain isn't available, it can't be loaded anyway, and this finds issues at cook time instead of load time. We should generally outlaw non-transient objects with transient outers, it does not do what people expect. Change 3207032 on 2016/11/21 by Ben.Zeigler #jira UE-38654 Re-Fix EDL cooking with SCS-added components. They used to have the DefaultSubObject flag but no longer do [CL 3208270 by Ben Zeigler in Main branch]
2016-11-22 18:45:44 -05:00
const FString EnumPrefix = Enum->GenerateEnumPrefix();
if (EnumPrefix.Len() && ValueString.StartsWith(EnumPrefix))
{
ValueString = ValueString.RightChop(EnumPrefix.Len() + 1); // +1 to skip over the underscore
}
}
ValueString = FName::NameToDisplayString(ValueString, false);
}
}
else
{
// We have no type information by this point, so no idea if it's a bool :(
const bool bIsBool = false;
DisplayName = FText::FromString(FName::NameToDisplayString(KeyValue.Key.ToString(), bIsBool));
}
// Add suffix to the value string, if one is defined for this tag
if (Metadata != nullptr && !Metadata->Suffix.IsEmpty())
{
ValueString += TEXT(" ");
ValueString += Metadata->Suffix.ToString();
}
CachedToolTipTags.Add(FToolTipTagItem(DisplayName, FText::FromString(ValueString), bImportant));
}
}
}
}
}
const FSlateBrush* SAssetViewItem::GetBorderImage() const
{
return bDraggedOver ? FEditorStyle::GetBrush("Menu.Background") : FEditorStyle::GetBrush("NoBorder");
}
bool SAssetViewItem::IsFolder() const
{
return AssetItem.IsValid() && AssetItem->GetType() == EAssetItemType::Folder;
}
FText SAssetViewItem::GetNameText() const
{
if(AssetItem.IsValid())
{
if(AssetItem->GetType() != EAssetItemType::Folder)
{
return FText::FromName(StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.AssetName);
}
else
{
return StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderName;
}
}
return FText();
}
FSlateColor SAssetViewItem::GetAssetColor() const
{
if(AssetItem.IsValid())
{
if(AssetItem->GetType() == EAssetItemType::Folder)
{
TSharedPtr<FAssetViewFolder> AssetFolderItem = StaticCastSharedPtr<FAssetViewFolder>(AssetItem);
TSharedPtr<FLinearColor> Color;
if (AssetFolderItem->bCollectionFolder)
{
FName CollectionName;
ECollectionShareType::Type CollectionFolderShareType = ECollectionShareType::CST_All;
ContentBrowserUtils::IsCollectionPath(AssetFolderItem->FolderPath, &CollectionName, &CollectionFolderShareType);
Color = CollectionViewUtils::LoadColor( CollectionName.ToString(), CollectionFolderShareType );
}
else
{
Color = ContentBrowserUtils::LoadColor( AssetFolderItem->FolderPath );
}
if ( Color.IsValid() )
{
return *Color.Get();
}
}
else if(AssetTypeActions.IsValid())
{
return AssetTypeActions.Pin()->GetTypeColor().ReinterpretAsLinear();
}
}
return ContentBrowserUtils::GetDefaultColor();
}
void SAssetViewItem::SetForceMipLevelsToBeResident(bool bForce) const
{
if(AssetItem.IsValid() && AssetItem->GetType() == EAssetItemType::Normal)
{
const FAssetData& AssetData = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data;
if(AssetData.IsValid() && AssetData.IsAssetLoaded())
{
UObject* Asset = AssetData.GetAsset();
if(Asset != nullptr)
{
if(UTexture2D* Texture2D = Cast<UTexture2D>(Asset))
{
Texture2D->bForceMiplevelsToBeResident = bForce;
}
else if(UMaterial* Material = Cast<UMaterial>(Asset))
{
Material->SetForceMipLevelsToBeResident(bForce, bForce, -1.0f);
}
}
}
}
}
void SAssetViewItem::HandleAssetLoaded(UObject* InAsset) const
{
if(InAsset != nullptr)
{
if(AssetItem.IsValid() && AssetItem->GetType() == EAssetItemType::Normal)
{
const FAssetData& AssetData = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data;
if(AssetData.IsValid() && AssetData.IsAssetLoaded())
{
if(InAsset == AssetData.GetAsset())
{
SetForceMipLevelsToBeResident(true);
}
}
}
}
}
bool SAssetViewItem::OnVisualizeTooltip(const TSharedPtr<SWidget>& TooltipContent)
{
if(OnVisualizeAssetToolTip.IsBound() && TooltipContent.IsValid() && AssetItem->GetType() != EAssetItemType::Folder)
{
FAssetData& AssetData = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data;
return OnVisualizeAssetToolTip.Execute(TooltipContent, AssetData);
}
// No custom behaviour, return false to allow slate to visualize the widget
return false;
}
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
void SAssetViewItem::OnToolTipClosing()
{
OnAssetToolTipClosing.ExecuteIfBound();
}
///////////////////////////////
// SAssetListItem
///////////////////////////////
SAssetListItem::~SAssetListItem()
{
FCoreUObjectDelegates::OnAssetLoaded.RemoveAll(this);
}
BEGIN_SLATE_FUNCTION_BUILD_OPTIMIZATION
void SAssetListItem::Construct( const FArguments& InArgs )
{
SAssetViewItem::Construct( SAssetViewItem::FArguments()
.AssetItem(InArgs._AssetItem)
.OnRenameBegin(InArgs._OnRenameBegin)
.OnRenameCommit(InArgs._OnRenameCommit)
.OnVerifyRenameCommit(InArgs._OnVerifyRenameCommit)
.OnItemDestroyed(InArgs._OnItemDestroyed)
.ShouldAllowToolTip(InArgs._ShouldAllowToolTip)
.ThumbnailEditMode(InArgs._ThumbnailEditMode)
.HighlightText(InArgs._HighlightText)
.OnAssetsDragDropped(InArgs._OnAssetsDragDropped)
.OnPathsDragDropped(InArgs._OnPathsDragDropped)
.OnFilesDragDropped(InArgs._OnFilesDragDropped)
.OnGetCustomAssetToolTip(InArgs._OnGetCustomAssetToolTip)
.OnVisualizeAssetToolTip(InArgs._OnVisualizeAssetToolTip)
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
.OnAssetToolTipClosing( InArgs._OnAssetToolTipClosing )
);
AssetThumbnail = InArgs._AssetThumbnail;
ItemHeight = InArgs._ItemHeight;
const float ThumbnailPadding = InArgs._ThumbnailPadding;
TSharedPtr<SWidget> Thumbnail;
if ( AssetItem.IsValid() && AssetThumbnail.IsValid() )
{
FAssetThumbnailConfig ThumbnailConfig;
ThumbnailConfig.bAllowFadeIn = true;
ThumbnailConfig.bAllowHintText = InArgs._AllowThumbnailHintLabel;
ThumbnailConfig.bForceGenericThumbnail = (AssetItem->GetType() == EAssetItemType::Creation);
ThumbnailConfig.bAllowAssetSpecificThumbnailOverlay = (AssetItem->GetType() != EAssetItemType::Creation);
ThumbnailConfig.ThumbnailLabel = InArgs._ThumbnailLabel;
ThumbnailConfig.HighlightedText = InArgs._HighlightText;
ThumbnailConfig.HintColorAndOpacity = InArgs._ThumbnailHintColorAndOpacity;
Thumbnail = AssetThumbnail->MakeThumbnailWidget(ThumbnailConfig);
}
else
{
Thumbnail = SNew(SImage) .Image( FEditorStyle::GetDefaultBrush() );
}
FName ItemShadowBorderName;
TSharedRef<SWidget> ItemContents = FAssetViewItemHelper::CreateListItemContents(this, Thumbnail.ToSharedRef(), ItemShadowBorderName);
ChildSlot
[
SNew(SBorder)
.BorderImage(this, &SAssetViewItem::GetBorderImage)
.Padding(0)
.AddMetaData<FTagMetaData>(FTagMetaData(AssetItem->GetType() == EAssetItemType::Normal ? StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.ObjectPath : NAME_None))
[
SNew(SHorizontalBox)
// Viewport
+SHorizontalBox::Slot()
.AutoWidth()
.VAlign(VAlign_Center)
[
SNew( SBox )
.Padding(ThumbnailPadding - 4.f)
.WidthOverride( this, &SAssetListItem::GetThumbnailBoxSize )
.HeightOverride( this, &SAssetListItem::GetThumbnailBoxSize )
[
// Drop shadow border
SNew(SBorder)
.Padding(4.f)
.BorderImage(FEditorStyle::GetBrush(ItemShadowBorderName))
[
ItemContents
]
]
]
+SHorizontalBox::Slot()
.AutoWidth()
.Padding(6, 0, 0, 0)
.VAlign(VAlign_Center)
[
SNew(SVerticalBox)
+SVerticalBox::Slot()
.AutoHeight()
.Padding(0, 1)
[
SAssignNew(InlineRenameWidget, SInlineEditableTextBlock)
.Font(FEditorStyle::GetFontStyle("ContentBrowser.AssetTileViewNameFont"))
.Text( GetNameText() )
.OnBeginTextEdit(this, &SAssetListItem::HandleBeginNameChange)
.OnTextCommitted(this, &SAssetListItem::HandleNameCommitted)
.OnVerifyTextChanged(this, &SAssetListItem::HandleVerifyNameChanged)
.HighlightText(InArgs._HighlightText)
.IsSelected(InArgs._IsSelected)
.IsReadOnly(this, &SAssetListItem::IsNameReadOnly)
]
+SVerticalBox::Slot()
.AutoHeight()
.Padding(0, 1)
[
// Class
SAssignNew(ClassText, STextBlock)
.Font(FEditorStyle::GetFontStyle("ContentBrowser.AssetListViewClassFont"))
.Text(GetAssetClassText())
.HighlightText(InArgs._HighlightText)
]
]
]
];
if(AssetItem.IsValid())
{
AssetItem->RenamedRequestEvent.BindSP( InlineRenameWidget.Get(), &SInlineEditableTextBlock::EnterEditingMode );
}
SetForceMipLevelsToBeResident(true);
// listen for asset loads so we can force mips to stream in if required
FCoreUObjectDelegates::OnAssetLoaded.AddSP(this, &SAssetViewItem::HandleAssetLoaded);
}
END_SLATE_FUNCTION_BUILD_OPTIMIZATION
void SAssetListItem::OnAssetDataChanged()
{
SAssetViewItem::OnAssetDataChanged();
if (ClassText.IsValid())
{
ClassText->SetText(GetAssetClassText());
}
}
FOptionalSize SAssetListItem::GetThumbnailBoxSize() const
{
return FOptionalSize( ItemHeight.Get() );
}
FOptionalSize SAssetListItem::GetSCCImageSize() const
{
return GetThumbnailBoxSize().Get() * 0.3;
}
///////////////////////////////
// SAssetTileItem
///////////////////////////////
SAssetTileItem::~SAssetTileItem()
{
FCoreUObjectDelegates::OnAssetLoaded.RemoveAll(this);
}
BEGIN_SLATE_FUNCTION_BUILD_OPTIMIZATION
void SAssetTileItem::Construct( const FArguments& InArgs )
{
SAssetViewItem::Construct( SAssetViewItem::FArguments()
.AssetItem(InArgs._AssetItem)
.OnRenameBegin(InArgs._OnRenameBegin)
.OnRenameCommit(InArgs._OnRenameCommit)
.OnVerifyRenameCommit(InArgs._OnVerifyRenameCommit)
.OnItemDestroyed(InArgs._OnItemDestroyed)
.ShouldAllowToolTip(InArgs._ShouldAllowToolTip)
.ThumbnailEditMode(InArgs._ThumbnailEditMode)
.HighlightText(InArgs._HighlightText)
.OnAssetsDragDropped(InArgs._OnAssetsDragDropped)
.OnPathsDragDropped(InArgs._OnPathsDragDropped)
.OnFilesDragDropped(InArgs._OnFilesDragDropped)
.OnGetCustomAssetToolTip(InArgs._OnGetCustomAssetToolTip)
.OnVisualizeAssetToolTip(InArgs._OnVisualizeAssetToolTip)
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
.OnAssetToolTipClosing( InArgs._OnAssetToolTipClosing )
);
AssetThumbnail = InArgs._AssetThumbnail;
ItemWidth = InArgs._ItemWidth;
ThumbnailPadding = IsFolder() ? InArgs._ThumbnailPadding + 5.0f : InArgs._ThumbnailPadding;
TSharedPtr<SWidget> Thumbnail;
if ( AssetItem.IsValid() && AssetThumbnail.IsValid() )
{
FAssetThumbnailConfig ThumbnailConfig;
ThumbnailConfig.bAllowFadeIn = true;
ThumbnailConfig.bAllowHintText = InArgs._AllowThumbnailHintLabel;
ThumbnailConfig.bForceGenericThumbnail = (AssetItem->GetType() == EAssetItemType::Creation);
ThumbnailConfig.bAllowAssetSpecificThumbnailOverlay = (AssetItem->GetType() != EAssetItemType::Creation);
ThumbnailConfig.ThumbnailLabel = InArgs._ThumbnailLabel;
ThumbnailConfig.HighlightedText = InArgs._HighlightText;
ThumbnailConfig.HintColorAndOpacity = InArgs._ThumbnailHintColorAndOpacity;
Thumbnail = AssetThumbnail->MakeThumbnailWidget(ThumbnailConfig);
}
else
{
Thumbnail = SNew(SImage) .Image( FEditorStyle::GetDefaultBrush() );
}
FName ItemShadowBorderName;
TSharedRef<SWidget> ItemContents = FAssetViewItemHelper::CreateTileItemContents(this, Thumbnail.ToSharedRef(), ItemShadowBorderName);
ChildSlot
[
SNew(SBorder)
.BorderImage(this, &SAssetViewItem::GetBorderImage)
.Padding(0)
.AddMetaData<FTagMetaData>(FTagMetaData((AssetItem->GetType() == EAssetItemType::Normal) ? StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.ObjectPath : ((AssetItem->GetType() == EAssetItemType::Folder) ? FName(*StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderPath) : NAME_None)))
[
SNew(SVerticalBox)
// Thumbnail
+SVerticalBox::Slot()
.AutoHeight()
.HAlign(HAlign_Center)
[
// The remainder of the space is reserved for the name.
SNew(SBox)
.Padding(ThumbnailPadding - 4.f)
.WidthOverride(this, &SAssetTileItem::GetThumbnailBoxSize)
.HeightOverride( this, &SAssetTileItem::GetThumbnailBoxSize )
[
// Drop shadow border
SNew(SBorder)
.Padding(4.f)
.BorderImage(FEditorStyle::GetBrush(ItemShadowBorderName))
[
ItemContents
]
]
]
+SVerticalBox::Slot()
.Padding(FMargin(1.f, 0))
.HAlign(HAlign_Center)
.VAlign(VAlign_Center)
.FillHeight(1.f)
[
SAssignNew(InlineRenameWidget, SInlineEditableTextBlock)
.Font( this, &SAssetTileItem::GetThumbnailFont )
.Text( GetNameText() )
.OnBeginTextEdit(this, &SAssetTileItem::HandleBeginNameChange)
.OnTextCommitted(this, &SAssetTileItem::HandleNameCommitted)
.OnVerifyTextChanged(this, &SAssetTileItem::HandleVerifyNameChanged)
.HighlightText(InArgs._HighlightText)
.IsSelected(InArgs._IsSelected)
.IsReadOnly(this, &SAssetTileItem::IsNameReadOnly)
.Justification(ETextJustify::Center)
.LineBreakPolicy(FBreakIterator::CreateCamelCaseBreakIterator())
]
]
];
if(AssetItem.IsValid())
{
AssetItem->RenamedRequestEvent.BindSP( InlineRenameWidget.Get(), &SInlineEditableTextBlock::EnterEditingMode );
}
SetForceMipLevelsToBeResident(true);
// listen for asset loads so we can force mips to stream in if required
FCoreUObjectDelegates::OnAssetLoaded.AddSP(this, &SAssetViewItem::HandleAssetLoaded);
}
END_SLATE_FUNCTION_BUILD_OPTIMIZATION
void SAssetTileItem::OnAssetDataChanged()
{
SAssetViewItem::OnAssetDataChanged();
}
FOptionalSize SAssetTileItem::GetThumbnailBoxSize() const
{
return FOptionalSize( ItemWidth.Get() );
}
FOptionalSize SAssetTileItem::GetSCCImageSize() const
{
return GetThumbnailBoxSize().Get() * 0.2;
}
FSlateFontInfo SAssetTileItem::GetThumbnailFont() const
{
FOptionalSize ThumbSize = GetThumbnailBoxSize();
if ( ThumbSize.IsSet() )
{
float Size = ThumbSize.Get();
if ( Size < 50 )
{
const static FName SmallFontName("ContentBrowser.AssetTileViewNameFontVerySmall");
return FEditorStyle::GetFontStyle(SmallFontName);
}
else if ( Size < 85 )
{
const static FName SmallFontName("ContentBrowser.AssetTileViewNameFontSmall");
return FEditorStyle::GetFontStyle(SmallFontName);
}
}
const static FName RegularFont("ContentBrowser.AssetTileViewNameFont");
return FEditorStyle::GetFontStyle(RegularFont);
}
///////////////////////////////
// SAssetColumnItem
///////////////////////////////
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
/** Custom box for the Name column of an asset */
class SAssetColumnItemNameBox : public SCompoundWidget
{
public:
SLATE_BEGIN_ARGS( SAssetColumnItemNameBox ) {}
/** The color of the asset */
SLATE_ATTRIBUTE( FMargin, Padding )
/** The widget content presented in the box */
SLATE_DEFAULT_SLOT(FArguments, Content)
SLATE_END_ARGS()
~SAssetColumnItemNameBox() {}
void Construct( const FArguments& InArgs, const TSharedRef<SAssetColumnItem>& InOwnerAssetColumnItem )
{
OwnerAssetColumnItem = InOwnerAssetColumnItem;
ChildSlot
[
SNew(SBox)
.Padding(InArgs._Padding)
[
InArgs._Content.Widget
]
];
}
virtual TSharedPtr<IToolTip> GetToolTip() override
{
if ( OwnerAssetColumnItem.IsValid() )
{
return OwnerAssetColumnItem.Pin()->GetToolTip();
}
return nullptr;
}
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
/** Forward the event to the view item that this name box belongs to */
virtual void OnToolTipClosing() override
{
if ( OwnerAssetColumnItem.IsValid() )
{
OwnerAssetColumnItem.Pin()->OnToolTipClosing();
}
}
private:
TWeakPtr<SAssetViewItem> OwnerAssetColumnItem;
};
void SAssetColumnItem::Construct( const FArguments& InArgs )
{
SAssetViewItem::Construct( SAssetViewItem::FArguments()
.AssetItem(InArgs._AssetItem)
.OnRenameBegin(InArgs._OnRenameBegin)
.OnRenameCommit(InArgs._OnRenameCommit)
.OnVerifyRenameCommit(InArgs._OnVerifyRenameCommit)
.OnItemDestroyed(InArgs._OnItemDestroyed)
.HighlightText(InArgs._HighlightText)
.OnAssetsDragDropped(InArgs._OnAssetsDragDropped)
.OnPathsDragDropped(InArgs._OnPathsDragDropped)
.OnFilesDragDropped(InArgs._OnFilesDragDropped)
.OnGetCustomAssetToolTip(InArgs._OnGetCustomAssetToolTip)
.OnVisualizeAssetToolTip(InArgs._OnVisualizeAssetToolTip)
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
.OnAssetToolTipClosing(InArgs._OnAssetToolTipClosing)
);
HighlightText = InArgs._HighlightText;
}
BEGIN_SLATE_FUNCTION_BUILD_OPTIMIZATION
TSharedRef<SWidget> SAssetColumnItem::GenerateWidgetForColumn( const FName& ColumnName, FIsSelected InIsSelected )
{
TSharedPtr<SWidget> Content;
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
// A little right padding so text from this column does not run directly into text from the next.
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3279756) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3229490 on 2016/12/09 by Cody.Albert Integrated fix to support named changelists in SVN Change 3229574 on 2016/12/09 by Simon.Tourangeau Fix actor mobility getting changed on scene reimport #jira UE-39102 Change 3229692 on 2016/12/09 by Cody.Albert Fixing an XML Parser assert when parsing a root tag that completes on the same line. #jira UE-30393 Change 3230582 on 2016/12/12 by Matt.Kuhlenschmidt PR #3024: Correct the outdated error message instructions for how to fix being unable to launch on an iOS device. (Contributed by CleanCut) Change 3231470 on 2016/12/12 by Matt.Kuhlenschmidt Eliminate editor sounds that play when you PIE, simulate or possess the player. They get in the way of game sounds, are annoying to hear when you are constantly starting and stopping pie, and flush async loading that the game might be doing when they load. Change 3231475 on 2016/12/12 by Alex.Delesky #jira UE-39023 - Using the High Resolution screenshot tool with the "custom depth as mask" option checked should no longer crash the editor or a PIE viewport when the screen percentage is not set to 100. Change 3231476 on 2016/12/12 by Alex.Delesky #jira UE-39380 - Thumbnails for static meshes in the foliage paint mode window should now update to show the correct mesh if the thumbnail pool has been exhausted. This also increases the number of foliage thumbnals that can exist onscreen at once. Change 3231477 on 2016/12/12 by Alex.Delesky #jira none - Extending the IPluginWizardDefinition interface to allow it to return the descriptor type of the plugin. This fixes a merge conflict from Odin where the new plugin wizard was modified to allow for multiple template selection. Change 3231479 on 2016/12/12 by Alex.Delesky #jira UE-39376 - Changing the number of players or changing the dedicated server options in PIE settings should now always persist on editor shutdown. Change 3231480 on 2016/12/12 by Alex.Delesky #jira UE-39417 - A texture will now match to update a dropped in file if the source path differs from that of the dropped in file Change 3231508 on 2016/12/12 by Alex.Delesky Removing todo comment #jira none Change 3231603 on 2016/12/12 by Matt.Kuhlenschmidt Exposed a 0-1 UV set and the scaled pixel size for Box and Border brushes Also added a material function that exposes all of the current UV sets with nice names instead of indexed coordinates Change 3231618 on 2016/12/12 by Alex.Delesky #jira UE-38732 - When editing a spin box with a delta value, committing the value with the Enter key and then clearing the focus from the spin box will no longer change the internal value to match the snapped value. Change 3231638 on 2016/12/12 by Matt.Kuhlenschmidt Add RF_Transactional to the list of default flags for creating or importing new assets. All should be transactional by default Change 3231642 on 2016/12/12 by Matt.Kuhlenschmidt Brighten up the output log by default Change 3231648 on 2016/12/12 by Alex.Delesky #jira UE-38033 - Selecting a Named Slot that's part of a widget in a Widget Switcher will now show that widget instead of the widget at index 0. This also applies to any content set inside the named slot. Change 3231666 on 2016/12/12 by Alex.Delesky #jira UE-38952 - Widgets that have been copied and pasted into the same hierarchy will now retain the same name in the hierarchy. This does not fix widgets that have been previously copied and pasted from other widgets, nor copies of those widgets. Change 3231674 on 2016/12/12 by Alex.Delesky #jira UE-37106 - When using or simulating touch for Widget Components, the hover/clicked state will now be accurately determined rather than showing hover on initial touch. Change 3231745 on 2016/12/12 by Alex.Delesky Back out changelist 3231477 to fix build error C2259 Change 3232417 on 2016/12/13 by Simon.Tourangeau Add the following attributes to the Editor.Usage.FBX.Import EngineAnalytics event - FBX Version - Filename Hash - Import Type #jira UE-37453 Change 3232477 on 2016/12/13 by Michael.Dupuis #jira UE-39675 : There was an issue when the Neutral Value == the Min or Max value, so we simply prevent using the concept of neutral value if min or max == neutral as it mean you only want a log on one side. Change 3232571 on 2016/12/13 by Alex.Delesky Back out changelist 3231745 #jira none - Extending the IPluginWizardDefinition interface to allow it to return the descriptor type of the plugin. This fixes a merge conflict from Odin where the new plugin wizard was modified to allow for multiple template selection. Change 3232675 on 2016/12/13 by Alexis.Matte Fix a crash when reordering material with a fbx containing unused materials, add a fbx automation test to prevent similar issue. #jira UE-39692 Change 3232975 on 2016/12/13 by Alex.Delesky Fix to build error C2259 for the IPluginWizardDefinition API change. Change 3233146 on 2016/12/13 by Michael.Dupuis #jira UE-38766 : Added eye dropper to select flatten height Fixed a rounding errors resulting in not flattening to the specified height Fixed a rounding error resulting in LandscapeDataAccess::GetTexHeight not always returning the appropriate value Change 3233153 on 2016/12/13 by Alexis.Matte We cannot anymore change the instance override materials array topology, the topology is limited by the mesh materials array #jira UE-38827 Change 3234406 on 2016/12/14 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3234485 on 2016/12/14 by Michael.Dupuis tentative build fix for Mac Change 3234495 on 2016/12/14 by Matt.Kuhlenschmidt Made a setting to control if PIE enter and exit sounds are played. Off by default Change 3236709 on 2016/12/15 by Simon.Tourangeau Fix camera export rotation offset #jira UE-34692 #jira UE-39740 Change 3236782 on 2016/12/15 by Jamie.Dale Fixed EmitTermExpr failing to use the correct package ID FBPTerminal::Source used to be set to the pin, however when pins were moved away from being UObjects, FBPTerminal::SourcePin was added and FBPTerminal::Source is typically null. Change 3236853 on 2016/12/15 by Alexis.Matte Fix the serialization of the staticmesh property FMeshSectionInfoMap Change 3236890 on 2016/12/15 by Matt.Kuhlenschmidt Remove old define Change 3239328 on 2016/12/18 by Richard.TalbotWatkin Fixed Focus Viewport action in Static Mesh Viewport. Problem was that the conversion to Orbit Camera for storing the camera position was trashing the desired position during cvamera transitions. Orbit camera position is now only stored at the end of a transition. #jira UE-39825 - Key "F" for Focus acts Sporadically in the Static Mesh Editor Viewport Change 3239660 on 2016/12/19 by Alex.Delesky #jira UE-38968, UE-36826 - Components attached to actors can now be directly scaled to negative values using the transform gizmo for that component. Change 3239662 on 2016/12/19 by Alex.Delesky #jira UE-39007 - The data table row editor now contains a Reset to Default control. Change 3239663 on 2016/12/19 by Alex.Delesky #jira UE-39698 - Importing CSV files will now show the name of the file in the import dialog. Change 3240696 on 2016/12/20 by Michael.Dupuis #jira UETOOL-1009: Added paddiing to columns view Added auto resize of column when double clicking on splitter handle in the header Remove right number alignment after discussion with Matt K. Change 3240758 on 2016/12/20 by Michael.Dupuis added missing non abstract implementation Change 3240782 on 2016/12/20 by Michael.Dupuis Added missing documentation for content browser column auto resizing Change 3240817 on 2016/12/20 by Alex.Delesky #jira UE-38940 - Copying a Material-Custom node with a tab character should now correctly render the tab. Change 3240834 on 2016/12/20 by Michael.Dupuis tentative fix for build error Change 3240984 on 2016/12/20 by Michael.Dupuis Removed unnecessary functions Change 3241174 on 2016/12/20 by Matt.Kuhlenschmidt Fix compile errors Change 3241966 on 2016/12/21 by Chris.Wood Fixed Typo and changed execution order in "ComboBoxString" Component [UE-38994] - GitHub 2971 : Fixed Typo and changed execution order in "ComboBoxString" Component PR #2971: Fixed Typo and changed execution order in "ComboBoxString" Component (Contributed by eXifreXi) #github https://github.com/EpicGames/UnrealEngine/pull/2971 Change 3242126 on 2016/12/21 by Alexis.Matte Back out changelist 3236853 We have to back out this change list because the change was implement in the 4.15 release branch and the EditorObjectVersion.h change is now implement in the ReleaseObjectVersion.h. Change 3244492 on 2017/01/02 by Jamie.Dale Improved error message Change 3244545 on 2017/01/02 by Nick.Darnell Navigation - Making it so we don't attempt to load HotReload during shutdown, we only access it if it's still loaded. Change 3244549 on 2017/01/02 by Nick.Darnell Slate - Implementing custom hardware cursor loading across Windows, Mac and Linux and supports loading cursors from PAK files. All platforms support loading PNGs through the FHardwareCursor interface. Some platforms support additional formats, for multiresolution support, but there's a naming convention that can be used on PNGs for the same capability. All of it is documented in the FHardwareCursor header. The platform layer for ICursor, now has support for replacing cursor shapes as an override, and can be reset safely. The FHardwareCursor supports loading cursors from raw pixel buffers as well, the plan is to allow for the option to UTextures to also be used for hardware cursors. Now users through C++ can load and replace the hardware cursors with custom ones of their own, e.g. FSlateApplication::Get().RegisterCursor(EMouseCursor::Default, MakeShareable(new FHardwareCursor(FPaths::GameContentDir() / "Slate/FancyPointer", FIntPoint(0,0)))); The next step is to expose a game friendly layer that supports caching cursors, and letting users change them out by name, without a bunch of destruction of OS resources. Change 3244845 on 2017/01/03 by Jamie.Dale Fixing typo #jira UE-39920 Change 3244903 on 2017/01/03 by Jamie.Dale PR #3044: fix link error when FAssetData::PrintAssetData() is used in project (Contributed by kayama-shift) Change 3245125 on 2017/01/03 by Alexis.Matte Put back the dev-editor version because there was some data create before we back it out Change 3246106 on 2017/01/04 by Chris.Wood Removed broken CrashReportReciever pre-upload phase from CrashReportClient. [UE-40153] - CrashReportClient fails when used in legacy mode with a CrashReportReciever Change 3246251 on 2017/01/04 by Alex.Delesky #jira UE-39869 - Moving an asset before saving it and then hitting Save All from the file menu will no longer save the asset in its original location. Change 3246252 on 2017/01/04 by Alex.Delesky #jira UE-39793 - Fixes an issue with the AutoReimporter where specifying a non-existent mount point (a directory in the content browser) would cause a crash when attempting to auto-import an asset from a monitored directory, as well as ensuring that valid mount points will be able to create new assets from auto-import. The "Map Directory To" field when setting directories to monitor for auto-reimport has also been changed to use the content browser path picker instead of relying on the user to manually enter a mount point. Change 3247620 on 2017/01/05 by Nick.Darnell Automation - Removing an adjustment to the number of shots we take for high res shots. Change 3247621 on 2017/01/05 by Nick.Darnell Automation - Adding a few more rendering tests to the cornell box. Change 3247629 on 2017/01/05 by Nick.Darnell Automation - Improving the comparison row display for screenshots so it's obvious what each image represents. Change 3248811 on 2017/01/05 by Matt.Kuhlenschmidt PR #3091: Removed unnecessary UPackage casts (Contributed by projectgheist) Change 3248860 on 2017/01/06 by Matt.Kuhlenschmidt Made the plugin browser select the "built in" category by default instead of the 2D category. There is no reason for a sub-category to be selected first as it makes searching for plugins globally an extra click because you have to click on the base category first Change 3249264 on 2017/01/06 by Matt.Kuhlenschmidt Fixed automation test warnings #jira UE-40198 Change 3249481 on 2017/01/06 by Michael.Dupuis #jira UE-37875 : Fill empty layers of components on assignation or creation Also fill new component added with the tool from neighbours predominance Change 3249505 on 2017/01/06 by Matt.Kuhlenschmidt PR #3093: Include guard cleanup (Contributed by projectgheist) Change 3249544 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3250738 on 2017/01/09 by Nick.Darnell UMG - The WIC now checks if the Widget is enabled before it claims that it's over an interactable or keyboard focusable widget. #jira UE-39845 Change 3250865 on 2017/01/09 by Nick.Darnell Slate - Updating EAutoCenter and ESizingRule to use the newer enum class style enums. Change 3250867 on 2017/01/09 by Nick.Darnell Slate - Adding more logging to the hardware cursor code so that it reports more information when it doesn't find an exact match when it comes to cursor size. Change 3250936 on 2017/01/09 by Nick.Darnell Automation - Refactoring the screenshot comparison tool to no longer require one one generated report. Doing screenshot comparions now generates individual reports for each failed comparison so that they can be evaluated in bits, and as changes occur as the user reviews aspects, we can remove the reports. There is now async image loading for the comparison view so that it doesn't hitch. Change 3250937 on 2017/01/09 by Nick.Darnell Automation - Adding another example to the CornellBox test. Change 3250958 on 2017/01/09 by Nick.Darnell Slate - Fixing some other cases where people were referring to ESizingRule::Type. Change 3251162 on 2017/01/09 by Nick.Darnell Slate - Fixing some other cases where people were referring to ESizingRule::Type. Change 3251254 on 2017/01/09 by Matt.Kuhlenschmidt Attempt to fix static analysis warnings Change 3251373 on 2017/01/09 by Nick.Darnell Core - Now writing a log warning instead of ensuring if calling LoadModule wouldn't have been safe to do here, depending on load order. Change 3251525 on 2017/01/09 by Nick.Darnell Automation - Fixing a build issue in ImageComparer. Change 3252321 on 2017/01/10 by Alex.Delesky #jira UE-40164 - Importing multiple files to overwrite existing assets such as sounds will now correctly persist the "Yes to All" / "No to All" dialog selections. Change 3252354 on 2017/01/10 by Nick.Darnell Image Compare - Fixing a potential threading hazard in the image comparer. Change 3252356 on 2017/01/10 by Nick.Darnell Automation - The screenshot metadata now captures the commit/CL that the screenshot was taken at and records it in the metadata. Change 3252601 on 2017/01/10 by Alexis.Matte Fbx automation test, reload feature implementation Change 3252761 on 2017/01/10 by Jamie.Dale Fixing some IWYU errors with PCH disabled Change 3252765 on 2017/01/10 by Jamie.Dale Fixing some static analysis warnings Change 3252793 on 2017/01/10 by Jamie.Dale Fixing FText natvis The text data visualizers have to be defined before the text visualizer Change 3253987 on 2017/01/11 by Matt.Kuhlenschmidt PR #3108: Git Plugin: use asynchronous "MarkForAdd" and "CheckIn" operations for the initial commit (Contributed by SRombauts) Change 3254378 on 2017/01/11 by Matt.Kuhlenschmidt Refactor scene importing to allow for plugins to make scene importers Change 3254679 on 2017/01/11 by Matt.Kuhlenschmidt Fix calling LoadModule in perforce source control off the main thread Change 3256472 on 2017/01/12 by Jamie.Dale Improved error reporting from IncludeTool - The error reporting was using zero-based line indices which was misleading. - The error reporting now includes the offending line to remove ambiguity. Change 3256725 on 2017/01/13 by Jamie.Dale IncludeTool can now parse typedef in Fwd headers Change 3256758 on 2017/01/13 by Jamie.Dale Added support for String Tables String Tables provide a way to centralize your localized text into one (or several) known locations, and then reference the entries within a string table from other assets or code in a robust way that allows for easy re-use of localized text. String Tables can be defined in C++ (using the LOCTABLE family of macros), loaded via CSV file, or created as an asset. They can be referenced in C++ using either the LOCTABLE macro, or the static FText::FromStringTable function. INI files can reference them using the LOCTABLE macro syntax, and FText properties in assets can reference them via the advanced settings combo. Change 3257018 on 2017/01/13 by Alexis.Matte FbxAutomationTest fix the import reload operation, it was calling garbagecollect with no keep flag Change 3257168 on 2017/01/13 by Jamie.Dale Removed code that was writing null into bytecode during save Change 3257344 on 2017/01/13 by Jamie.Dale Backing out changelist 3256725, and excluding my header from the scan instead Change 3257426 on 2017/01/13 by Nick.Darnell Slate - Adding the ability to invert alpha when drawing slate textures. Going to be used in the future for rendering render targets for the scene which have inverted alpha. Change 3257572 on 2017/01/13 by Nick.Darnell Slate - Fixing a build error. Change 3257970 on 2017/01/14 by Jamie.Dale Fixing exclude path Change 3258458 on 2017/01/16 by Matt.Kuhlenschmidt PR #3135: GameViewportClient: FOnCloseRequested is now a multicast delegate (Contributed by Nadrin) Change 3258472 on 2017/01/16 by Matt.Kuhlenschmidt PR #3126: Fix to load editor style assets (Contributed by projectgheist) Change 3258473 on 2017/01/16 by Matt.Kuhlenschmidt PR #3124: Fix wrong result with Image-DrawAsBox with PaperSprite. (Contributed by valval88) Change 3258539 on 2017/01/16 by Nick.Darnell Slate - Pixel Snapping has been moved to the GPU for the RHI rendering policy. Additionally, widgets with a render transform of Scale, Rotation or Sheer, and their children are no longer pixel snapped, this should reduce some of jittering seen by users when animations are applied to widgets. NOTE: This only affects render transforms, any transform in layout space is still subject to pixel snapping. Change 3258607 on 2017/01/16 by Nick.Darnell Fixing the mac build. Change 3258661 on 2017/01/16 by Matt.Kuhlenschmidt Actors with experimental components no longer say "Uses experimental class: Actor" when selecting the actor root in the details panel #jira UE-40535 Change 3258678 on 2017/01/16 by Nick.Darnell Platform - Introducing a way to get the mimetype for a file on Windows. Other platforms don't yet have an implementation outside of returning application/unknown. Change 3258924 on 2017/01/16 by Nick.Darnell Platform - Implementing a fallback for the generic platform http, that can do some basic mimetype lookups. Change 3258929 on 2017/01/16 by Nick.Darnell UMG - Fixing the animation to finish the evaluation before it notifies that the animation completed. Change 3259109 on 2017/01/16 by Nick.Darnell Platform - The GetMimeType function now only takes in FilePath, since some platforms will require that actually resolve to a file on disk in order to determine the true mimetype. Change 3259111 on 2017/01/16 by Alexis.Matte Avoid to move the camera when we re-import in the static mesh editor #jira UE-40613 Change 3259275 on 2017/01/16 by Matt.Kuhlenschmidt Fix crash when a slate window is resized and calls into a scene viewport during loading code when the scene viewport is not in a slate hierarchy and thus has no widget Change 3259300 on 2017/01/16 by Nick.Darnell UMG - Introducing PreConstruct and NativePreConstruct to the base UUserWidget. Users can now visualize non-binding based changes in the designer by evaluating a very limited amount of the blueprint code. In the event your user widget crashes on load, due to calling something unsafe, you can disable evaluation in the editor preferences under Widget Designer. Change 3259306 on 2017/01/16 by Nick.Darnell Games - Removing the Game Specific implementations of PreConstruct. Change 3260182 on 2017/01/17 by Matt.Kuhlenschmidt Fix static analysis Change 3261049 on 2017/01/17 by Nick.Darnell Slate - Putting in some fixes for the non-gpu pixel snapping mode, and disabling gpu snapping while we dig into why it looks weird. Change 3261434 on 2017/01/17 by Nick.Darnell Fixing the mac build. Change 3261435 on 2017/01/17 by Nick.Darnell Slate - Tweaking some aspects of the slate rounding code on the GPU. There's still some precision loss somewhere causing subtle differences in where the snap occurs, that's different from previously. Change 3261460 on 2017/01/17 by Nick.Darnell UMG - Tweaking the defintiions of NativePreConstruct, dropping passing in design time since that is readily available in native code. Change 3261833 on 2017/01/18 by Alexis.Matte Fix all warning for fbx automation tests #jira UE-40208 Change 3261874 on 2017/01/18 by Matt.Kuhlenschmidt PR #3136: Fix Submit to Source Control Window for Git plugin : use CanCheckIn() to filter out unmodified assets files (Contributed by SRombauts) Change 3262000 on 2017/01/18 by Jamie.Dale Updated Slate to allocate widgets using MakeShared This saves one allocation per-widget Change 3262003 on 2017/01/18 by Nick.Darnell UMG - Widget Interaction Components now ignore Visible(false) Widget Components when tracing. #jira UE-40523 Change 3262052 on 2017/01/18 by Alexis.Matte Put back the staticmesh skinxx workflow #jira UE-40782 Change 3262775 on 2017/01/18 by Nick.Darnell Slate - Ditching moving vertex rounding to the GPU, some precision issues could not be overcome. Ended up writing a clean way to implement it on the CPU. Change 3262818 on 2017/01/18 by Alex.Delesky #jira UE-40668 - Editor preferences will now save for data pin styles Change 3263679 on 2017/01/19 by Nick.Darnell Slate - Adding some comments to the Slate Vertex Rounder. Change 3265154 on 2017/01/19 by Nick.Darnell Slate/UMG - Putting in some more time into pixel snapping. I've re-introduced the old constructors, and decided to go with the templated approach, as to not break old code that relied on the FSlateVertex working a certain way. Change 3265478 on 2017/01/20 by Chris.Wood Added config support for hang detection time and switching hang detection on/off in UnrealWatchdog [UE-40838] - Make hang time configurable and increase default in UnrealWatchdog Change 3265600 on 2017/01/20 by Nick.Darnell Slate - Making some const local variables const. Change 3265714 on 2017/01/20 by Alex.Delesky #jira UE-40791 - The ForceFeedback thumbnail's Play and Stop icons will now render correctly, and will only be visible while an effect is playing or when the cursor hovers over the icon. Change 3265865 on 2017/01/20 by Alex.Delesky #jira UE-40511 - The Content Browser file path will now update when inside a folder that is deleted from the Sources Panel. Change 3267989 on 2017/01/23 by Jamie.Dale Exposed String Tables to Blueprints Change 3268018 on 2017/01/23 by Jamie.Dale Small API clean-up for string tables Change 3268455 on 2017/01/23 by Matt.Kuhlenschmidt Fix SaveAs (Which says SaveCurrentAs) not saving the current level and only saving the persistent level and then reloading everything thus causing work to be lost if editing a sub-level #jira UE-40930 Change 3269388 on 2017/01/24 by Chris.Wood Refactored tick timing in UnrealWatchdog to stop bug where it doesn't close. [UE-40839] - UnrealWatchdog running and blocking use of Unreal Game Sync for internal users Standalone tool code only - doesn't touch engine Change 3270205 on 2017/01/24 by Cody.Albert Updated FUnrealEdMisc::OnMessageTokenActivated to properly traverse up the outer hierarchy of an object. Change 3270231 on 2017/01/24 by Cody.Albert Renamed and exposed GetFullScreenAlignment and GetViewportAnchors for consistency with the setters Change 3271734 on 2017/01/25 by Michael.Dupuis #jira UE-38631 Add sorting for landscape target layer, user can now sort alphabetical, material based or custom Added a new vertical box SDragNDropVerticalBox to handle drag & drop of FSlot Fixed SDropTarget to only consider the drop action if it was started by it Added visibility toggle to only show used layers in the currently loaded data Change 3271797 on 2017/01/25 by Jamie.Dale Renamed HasBeenAlreadyMadeSharable to DoesSharedInstanceExist as the old name was nonsense Change 3271813 on 2017/01/25 by Jamie.Dale Fixed bad access of a shared this during widget destruction when a context menu was open Change 3271988 on 2017/01/25 by Nick.Darnell Slate - Removing some old checkbox deprecated code from the 4.3 and 4.6 days. Change 3271992 on 2017/01/25 by Nick.Darnell Blueprints - Making the checked call better to log out more information when dragging and dropping a missing property. Change 3272134 on 2017/01/25 by Jamie.Dale Updated the GatherText commandlet to no longer hold a ConfigFile pointer while it runs This pointer is internal to GConfig, and may be updated (or invalidated) when other config files are loaded (as can happen via game code while gathering text). Change 3272301 on 2017/01/25 by Nick.Darnell Slate - More cleanup from the removal of a old legacy enum that people were still using. Change 3273070 on 2017/01/26 by Chris.Wood Fix CIS errors in landscape code from CL 3271734 Change 3273123 on 2017/01/26 by Chris.Wood Fix crash during init of CRC when running packaged without access to main engine config hierarchy. Change 3273194 on 2017/01/26 by Nick.Darnell Fixing some build warnings. Change 3273242 on 2017/01/26 by Michael.Dupuis #jira UE-39948 : if we detect there is multiple levels in the current persistent when we add a new foliage asset we ask to save the foliage as an asset to permit paiting over multiple levels Change 3273279 on 2017/01/26 by Jamie.Dale String Table INI redirects are now in the "Core.StringTable" section (rather than "/Script/Engine.Engine") Change 3273483 on 2017/01/26 by Alex.Delesky #jira UE-32047 - Made changes to the FixupRedirects commandlet to ensure that files that are marked for delete are moved from the default changelist to the pending changelist and submitted when using Perforce. Also makes a slight change to the ResavePackages commandlet to submit files marked for delete. Change 3273568 on 2017/01/26 by Alex.Delesky Modifying changes made to SPluginWizard to have the plugin loading phase determined by the wizard's definition rather than from the first selected template. #jira none Change 3273855 on 2017/01/26 by Alex.Delesky #jira UE-41117 - Updating the tooltip on the "Allow Paint of all LODs" option for mesh paint mode. Change 3274200 on 2017/01/26 by Alex.Delesky For IPluginWizardDefinition, temporarily adding function bodies to two methods instead of having them be pure virtual methods. Change 3274317 on 2017/01/26 by Jamie.Dale Deleting a seemingly corrupted asset that was accidentially submitted Change 3275072 on 2017/01/27 by Michael.Dupuis #jira UE-38631 tweaks Fix typo error Iterate all components, not only active one Force expand the Target Layers widget Change 3275249 on 2017/01/27 by Alexis.Matte Color grading controls: Keep the vector ratio when changing the master slider #jira UETOOL-1098 Change 3275282 on 2017/01/27 by Alexis.Matte Color grading controls: Cosmetic changes #jira UETOOL-1099 Change 3275292 on 2017/01/27 by Alexis.Matte Make sure the build is called once when we import a staticmesh. #jira UE-40947 Change 3275430 on 2017/01/27 by Alexis.Matte Add some fbx automation tests - Import a mesh with no material - Import corrupted asset with no section in a LOD - Import morph targets - Materials name clash - Max Multimap material ordering Change 3275683 on 2017/01/27 by Michael.Dupuis #jira UE-41215 : when saving an asset do not register the transaction, and make sure that the duplicate wont keep a copy in the transaction buffer as an asset can't be undo Change 3276237 on 2017/01/27 by Jamie.Dale Deleting a seemingly corrupted asset that was accidentially submitted Change 3276266 on 2017/01/27 by Jamie.Dale Fix for accessing a potentially null pointer Change 3277065 on 2017/01/30 by Chris.Wood Move crash report temp files to saved config and cleanup on schedule. [UE-39506] - CrashReportClient ini folders are not cleaned when opening the editor Change 3277236 on 2017/01/30 by Matt.Kuhlenschmidt Fix crash when cancelling SaveCurrentLevelAs #jira UE-41182 Change 3277409 on 2017/01/30 by Jamie.Dale Improved text rendering when the last resort font is missing The last resort font is no longer included in shipping builds, so this change makes some improvements to text rendering when it's missing. - The legacy font cache no longer tries to use the last resort font if it's not available (preventing warnings). - The Slate font renderer no longer tries to use the last resort font if it's not available. - Text shaping will use the last resort character if none of the available fonts can render a given character (likely because the last resort font is missing). - HarfBuzz shaped text now uses the fallback character correctly. Change 3277749 on 2017/01/30 by Nick.Darnell Slate - Moving ESlateDrawEffect & ESlateBatchDrawFlag over to be enum class, found cases where users were improperly assuming the enum order, and so now it won't be possible to just treat an int32 or a bool as the draw effect value. Core - Adding EnumHasAllFlags and EnumHasAnyFlags, templated functions to make it easier to check for the existance of a flag on enum classes. Change 3277805 on 2017/01/30 by Nick.Darnell Rendering - Changing some LoadModuleChecked calls to GetModuleChecked, as these calls are not happening on the main thread and are not safe to make. Change 3277914 on 2017/01/30 by Matt.Kuhlenschmidt Fix Niagara slate style warning on startup Change 3278058 on 2017/01/30 by Matt.Kuhlenschmidt Fixed compile error Change 3278132 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278133 on 2017/01/30 by Matt.Kuhlenschmidt Fixed compile errors Change 3278186 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278525 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278534 on 2017/01/30 by Nick.Darnell Automation - Clearing up several warnings/errors with automation results, trying to get Automation Tests to at least yellow before integration. Change 3278941 on 2017/01/31 by Nick.Darnell Fixing a build warning due to build team refactor. Change 3278949 on 2017/01/31 by Nick.Darnell Fixing incrmenetal build issues. Change 3278953 on 2017/01/31 by Nick.Darnell Fixing some incrmental linux build issues. Change 3278964 on 2017/01/31 by Nick.Darnell FIxing more incremental build issues. Change 3279256 on 2017/01/31 by Michael.Dupuis #jira UE-41319 #jira UE-41315 #jira UE-41316 Instead of getting the Landscape Actor, call GetLandscapeProxy so all case are handled, either proxy or landscape actor Change 3279270 on 2017/01/31 by Chad.Garyet re-updating the automation test pool [CL 3279775 by Matt Kuhlenschmidt in Main branch]
2017-01-31 15:22:49 -05:00
static const FMargin ColumnItemPadding( 5, 0, 5, 0 );
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
if ( ColumnName == "Name" )
{
const FSlateBrush* IconBrush;
if(IsFolder())
{
if(AssetItem.IsValid() && StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->bDeveloperFolder)
{
IconBrush = FEditorStyle::GetBrush("ContentBrowser.ColumnViewDeveloperFolderIcon");
}
else
{
IconBrush = FEditorStyle::GetBrush("ContentBrowser.ColumnViewFolderIcon");
}
}
else
{
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3279756) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3229490 on 2016/12/09 by Cody.Albert Integrated fix to support named changelists in SVN Change 3229574 on 2016/12/09 by Simon.Tourangeau Fix actor mobility getting changed on scene reimport #jira UE-39102 Change 3229692 on 2016/12/09 by Cody.Albert Fixing an XML Parser assert when parsing a root tag that completes on the same line. #jira UE-30393 Change 3230582 on 2016/12/12 by Matt.Kuhlenschmidt PR #3024: Correct the outdated error message instructions for how to fix being unable to launch on an iOS device. (Contributed by CleanCut) Change 3231470 on 2016/12/12 by Matt.Kuhlenschmidt Eliminate editor sounds that play when you PIE, simulate or possess the player. They get in the way of game sounds, are annoying to hear when you are constantly starting and stopping pie, and flush async loading that the game might be doing when they load. Change 3231475 on 2016/12/12 by Alex.Delesky #jira UE-39023 - Using the High Resolution screenshot tool with the "custom depth as mask" option checked should no longer crash the editor or a PIE viewport when the screen percentage is not set to 100. Change 3231476 on 2016/12/12 by Alex.Delesky #jira UE-39380 - Thumbnails for static meshes in the foliage paint mode window should now update to show the correct mesh if the thumbnail pool has been exhausted. This also increases the number of foliage thumbnals that can exist onscreen at once. Change 3231477 on 2016/12/12 by Alex.Delesky #jira none - Extending the IPluginWizardDefinition interface to allow it to return the descriptor type of the plugin. This fixes a merge conflict from Odin where the new plugin wizard was modified to allow for multiple template selection. Change 3231479 on 2016/12/12 by Alex.Delesky #jira UE-39376 - Changing the number of players or changing the dedicated server options in PIE settings should now always persist on editor shutdown. Change 3231480 on 2016/12/12 by Alex.Delesky #jira UE-39417 - A texture will now match to update a dropped in file if the source path differs from that of the dropped in file Change 3231508 on 2016/12/12 by Alex.Delesky Removing todo comment #jira none Change 3231603 on 2016/12/12 by Matt.Kuhlenschmidt Exposed a 0-1 UV set and the scaled pixel size for Box and Border brushes Also added a material function that exposes all of the current UV sets with nice names instead of indexed coordinates Change 3231618 on 2016/12/12 by Alex.Delesky #jira UE-38732 - When editing a spin box with a delta value, committing the value with the Enter key and then clearing the focus from the spin box will no longer change the internal value to match the snapped value. Change 3231638 on 2016/12/12 by Matt.Kuhlenschmidt Add RF_Transactional to the list of default flags for creating or importing new assets. All should be transactional by default Change 3231642 on 2016/12/12 by Matt.Kuhlenschmidt Brighten up the output log by default Change 3231648 on 2016/12/12 by Alex.Delesky #jira UE-38033 - Selecting a Named Slot that's part of a widget in a Widget Switcher will now show that widget instead of the widget at index 0. This also applies to any content set inside the named slot. Change 3231666 on 2016/12/12 by Alex.Delesky #jira UE-38952 - Widgets that have been copied and pasted into the same hierarchy will now retain the same name in the hierarchy. This does not fix widgets that have been previously copied and pasted from other widgets, nor copies of those widgets. Change 3231674 on 2016/12/12 by Alex.Delesky #jira UE-37106 - When using or simulating touch for Widget Components, the hover/clicked state will now be accurately determined rather than showing hover on initial touch. Change 3231745 on 2016/12/12 by Alex.Delesky Back out changelist 3231477 to fix build error C2259 Change 3232417 on 2016/12/13 by Simon.Tourangeau Add the following attributes to the Editor.Usage.FBX.Import EngineAnalytics event - FBX Version - Filename Hash - Import Type #jira UE-37453 Change 3232477 on 2016/12/13 by Michael.Dupuis #jira UE-39675 : There was an issue when the Neutral Value == the Min or Max value, so we simply prevent using the concept of neutral value if min or max == neutral as it mean you only want a log on one side. Change 3232571 on 2016/12/13 by Alex.Delesky Back out changelist 3231745 #jira none - Extending the IPluginWizardDefinition interface to allow it to return the descriptor type of the plugin. This fixes a merge conflict from Odin where the new plugin wizard was modified to allow for multiple template selection. Change 3232675 on 2016/12/13 by Alexis.Matte Fix a crash when reordering material with a fbx containing unused materials, add a fbx automation test to prevent similar issue. #jira UE-39692 Change 3232975 on 2016/12/13 by Alex.Delesky Fix to build error C2259 for the IPluginWizardDefinition API change. Change 3233146 on 2016/12/13 by Michael.Dupuis #jira UE-38766 : Added eye dropper to select flatten height Fixed a rounding errors resulting in not flattening to the specified height Fixed a rounding error resulting in LandscapeDataAccess::GetTexHeight not always returning the appropriate value Change 3233153 on 2016/12/13 by Alexis.Matte We cannot anymore change the instance override materials array topology, the topology is limited by the mesh materials array #jira UE-38827 Change 3234406 on 2016/12/14 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3234485 on 2016/12/14 by Michael.Dupuis tentative build fix for Mac Change 3234495 on 2016/12/14 by Matt.Kuhlenschmidt Made a setting to control if PIE enter and exit sounds are played. Off by default Change 3236709 on 2016/12/15 by Simon.Tourangeau Fix camera export rotation offset #jira UE-34692 #jira UE-39740 Change 3236782 on 2016/12/15 by Jamie.Dale Fixed EmitTermExpr failing to use the correct package ID FBPTerminal::Source used to be set to the pin, however when pins were moved away from being UObjects, FBPTerminal::SourcePin was added and FBPTerminal::Source is typically null. Change 3236853 on 2016/12/15 by Alexis.Matte Fix the serialization of the staticmesh property FMeshSectionInfoMap Change 3236890 on 2016/12/15 by Matt.Kuhlenschmidt Remove old define Change 3239328 on 2016/12/18 by Richard.TalbotWatkin Fixed Focus Viewport action in Static Mesh Viewport. Problem was that the conversion to Orbit Camera for storing the camera position was trashing the desired position during cvamera transitions. Orbit camera position is now only stored at the end of a transition. #jira UE-39825 - Key "F" for Focus acts Sporadically in the Static Mesh Editor Viewport Change 3239660 on 2016/12/19 by Alex.Delesky #jira UE-38968, UE-36826 - Components attached to actors can now be directly scaled to negative values using the transform gizmo for that component. Change 3239662 on 2016/12/19 by Alex.Delesky #jira UE-39007 - The data table row editor now contains a Reset to Default control. Change 3239663 on 2016/12/19 by Alex.Delesky #jira UE-39698 - Importing CSV files will now show the name of the file in the import dialog. Change 3240696 on 2016/12/20 by Michael.Dupuis #jira UETOOL-1009: Added paddiing to columns view Added auto resize of column when double clicking on splitter handle in the header Remove right number alignment after discussion with Matt K. Change 3240758 on 2016/12/20 by Michael.Dupuis added missing non abstract implementation Change 3240782 on 2016/12/20 by Michael.Dupuis Added missing documentation for content browser column auto resizing Change 3240817 on 2016/12/20 by Alex.Delesky #jira UE-38940 - Copying a Material-Custom node with a tab character should now correctly render the tab. Change 3240834 on 2016/12/20 by Michael.Dupuis tentative fix for build error Change 3240984 on 2016/12/20 by Michael.Dupuis Removed unnecessary functions Change 3241174 on 2016/12/20 by Matt.Kuhlenschmidt Fix compile errors Change 3241966 on 2016/12/21 by Chris.Wood Fixed Typo and changed execution order in "ComboBoxString" Component [UE-38994] - GitHub 2971 : Fixed Typo and changed execution order in "ComboBoxString" Component PR #2971: Fixed Typo and changed execution order in "ComboBoxString" Component (Contributed by eXifreXi) #github https://github.com/EpicGames/UnrealEngine/pull/2971 Change 3242126 on 2016/12/21 by Alexis.Matte Back out changelist 3236853 We have to back out this change list because the change was implement in the 4.15 release branch and the EditorObjectVersion.h change is now implement in the ReleaseObjectVersion.h. Change 3244492 on 2017/01/02 by Jamie.Dale Improved error message Change 3244545 on 2017/01/02 by Nick.Darnell Navigation - Making it so we don't attempt to load HotReload during shutdown, we only access it if it's still loaded. Change 3244549 on 2017/01/02 by Nick.Darnell Slate - Implementing custom hardware cursor loading across Windows, Mac and Linux and supports loading cursors from PAK files. All platforms support loading PNGs through the FHardwareCursor interface. Some platforms support additional formats, for multiresolution support, but there's a naming convention that can be used on PNGs for the same capability. All of it is documented in the FHardwareCursor header. The platform layer for ICursor, now has support for replacing cursor shapes as an override, and can be reset safely. The FHardwareCursor supports loading cursors from raw pixel buffers as well, the plan is to allow for the option to UTextures to also be used for hardware cursors. Now users through C++ can load and replace the hardware cursors with custom ones of their own, e.g. FSlateApplication::Get().RegisterCursor(EMouseCursor::Default, MakeShareable(new FHardwareCursor(FPaths::GameContentDir() / "Slate/FancyPointer", FIntPoint(0,0)))); The next step is to expose a game friendly layer that supports caching cursors, and letting users change them out by name, without a bunch of destruction of OS resources. Change 3244845 on 2017/01/03 by Jamie.Dale Fixing typo #jira UE-39920 Change 3244903 on 2017/01/03 by Jamie.Dale PR #3044: fix link error when FAssetData::PrintAssetData() is used in project (Contributed by kayama-shift) Change 3245125 on 2017/01/03 by Alexis.Matte Put back the dev-editor version because there was some data create before we back it out Change 3246106 on 2017/01/04 by Chris.Wood Removed broken CrashReportReciever pre-upload phase from CrashReportClient. [UE-40153] - CrashReportClient fails when used in legacy mode with a CrashReportReciever Change 3246251 on 2017/01/04 by Alex.Delesky #jira UE-39869 - Moving an asset before saving it and then hitting Save All from the file menu will no longer save the asset in its original location. Change 3246252 on 2017/01/04 by Alex.Delesky #jira UE-39793 - Fixes an issue with the AutoReimporter where specifying a non-existent mount point (a directory in the content browser) would cause a crash when attempting to auto-import an asset from a monitored directory, as well as ensuring that valid mount points will be able to create new assets from auto-import. The "Map Directory To" field when setting directories to monitor for auto-reimport has also been changed to use the content browser path picker instead of relying on the user to manually enter a mount point. Change 3247620 on 2017/01/05 by Nick.Darnell Automation - Removing an adjustment to the number of shots we take for high res shots. Change 3247621 on 2017/01/05 by Nick.Darnell Automation - Adding a few more rendering tests to the cornell box. Change 3247629 on 2017/01/05 by Nick.Darnell Automation - Improving the comparison row display for screenshots so it's obvious what each image represents. Change 3248811 on 2017/01/05 by Matt.Kuhlenschmidt PR #3091: Removed unnecessary UPackage casts (Contributed by projectgheist) Change 3248860 on 2017/01/06 by Matt.Kuhlenschmidt Made the plugin browser select the "built in" category by default instead of the 2D category. There is no reason for a sub-category to be selected first as it makes searching for plugins globally an extra click because you have to click on the base category first Change 3249264 on 2017/01/06 by Matt.Kuhlenschmidt Fixed automation test warnings #jira UE-40198 Change 3249481 on 2017/01/06 by Michael.Dupuis #jira UE-37875 : Fill empty layers of components on assignation or creation Also fill new component added with the tool from neighbours predominance Change 3249505 on 2017/01/06 by Matt.Kuhlenschmidt PR #3093: Include guard cleanup (Contributed by projectgheist) Change 3249544 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3250738 on 2017/01/09 by Nick.Darnell UMG - The WIC now checks if the Widget is enabled before it claims that it's over an interactable or keyboard focusable widget. #jira UE-39845 Change 3250865 on 2017/01/09 by Nick.Darnell Slate - Updating EAutoCenter and ESizingRule to use the newer enum class style enums. Change 3250867 on 2017/01/09 by Nick.Darnell Slate - Adding more logging to the hardware cursor code so that it reports more information when it doesn't find an exact match when it comes to cursor size. Change 3250936 on 2017/01/09 by Nick.Darnell Automation - Refactoring the screenshot comparison tool to no longer require one one generated report. Doing screenshot comparions now generates individual reports for each failed comparison so that they can be evaluated in bits, and as changes occur as the user reviews aspects, we can remove the reports. There is now async image loading for the comparison view so that it doesn't hitch. Change 3250937 on 2017/01/09 by Nick.Darnell Automation - Adding another example to the CornellBox test. Change 3250958 on 2017/01/09 by Nick.Darnell Slate - Fixing some other cases where people were referring to ESizingRule::Type. Change 3251162 on 2017/01/09 by Nick.Darnell Slate - Fixing some other cases where people were referring to ESizingRule::Type. Change 3251254 on 2017/01/09 by Matt.Kuhlenschmidt Attempt to fix static analysis warnings Change 3251373 on 2017/01/09 by Nick.Darnell Core - Now writing a log warning instead of ensuring if calling LoadModule wouldn't have been safe to do here, depending on load order. Change 3251525 on 2017/01/09 by Nick.Darnell Automation - Fixing a build issue in ImageComparer. Change 3252321 on 2017/01/10 by Alex.Delesky #jira UE-40164 - Importing multiple files to overwrite existing assets such as sounds will now correctly persist the "Yes to All" / "No to All" dialog selections. Change 3252354 on 2017/01/10 by Nick.Darnell Image Compare - Fixing a potential threading hazard in the image comparer. Change 3252356 on 2017/01/10 by Nick.Darnell Automation - The screenshot metadata now captures the commit/CL that the screenshot was taken at and records it in the metadata. Change 3252601 on 2017/01/10 by Alexis.Matte Fbx automation test, reload feature implementation Change 3252761 on 2017/01/10 by Jamie.Dale Fixing some IWYU errors with PCH disabled Change 3252765 on 2017/01/10 by Jamie.Dale Fixing some static analysis warnings Change 3252793 on 2017/01/10 by Jamie.Dale Fixing FText natvis The text data visualizers have to be defined before the text visualizer Change 3253987 on 2017/01/11 by Matt.Kuhlenschmidt PR #3108: Git Plugin: use asynchronous "MarkForAdd" and "CheckIn" operations for the initial commit (Contributed by SRombauts) Change 3254378 on 2017/01/11 by Matt.Kuhlenschmidt Refactor scene importing to allow for plugins to make scene importers Change 3254679 on 2017/01/11 by Matt.Kuhlenschmidt Fix calling LoadModule in perforce source control off the main thread Change 3256472 on 2017/01/12 by Jamie.Dale Improved error reporting from IncludeTool - The error reporting was using zero-based line indices which was misleading. - The error reporting now includes the offending line to remove ambiguity. Change 3256725 on 2017/01/13 by Jamie.Dale IncludeTool can now parse typedef in Fwd headers Change 3256758 on 2017/01/13 by Jamie.Dale Added support for String Tables String Tables provide a way to centralize your localized text into one (or several) known locations, and then reference the entries within a string table from other assets or code in a robust way that allows for easy re-use of localized text. String Tables can be defined in C++ (using the LOCTABLE family of macros), loaded via CSV file, or created as an asset. They can be referenced in C++ using either the LOCTABLE macro, or the static FText::FromStringTable function. INI files can reference them using the LOCTABLE macro syntax, and FText properties in assets can reference them via the advanced settings combo. Change 3257018 on 2017/01/13 by Alexis.Matte FbxAutomationTest fix the import reload operation, it was calling garbagecollect with no keep flag Change 3257168 on 2017/01/13 by Jamie.Dale Removed code that was writing null into bytecode during save Change 3257344 on 2017/01/13 by Jamie.Dale Backing out changelist 3256725, and excluding my header from the scan instead Change 3257426 on 2017/01/13 by Nick.Darnell Slate - Adding the ability to invert alpha when drawing slate textures. Going to be used in the future for rendering render targets for the scene which have inverted alpha. Change 3257572 on 2017/01/13 by Nick.Darnell Slate - Fixing a build error. Change 3257970 on 2017/01/14 by Jamie.Dale Fixing exclude path Change 3258458 on 2017/01/16 by Matt.Kuhlenschmidt PR #3135: GameViewportClient: FOnCloseRequested is now a multicast delegate (Contributed by Nadrin) Change 3258472 on 2017/01/16 by Matt.Kuhlenschmidt PR #3126: Fix to load editor style assets (Contributed by projectgheist) Change 3258473 on 2017/01/16 by Matt.Kuhlenschmidt PR #3124: Fix wrong result with Image-DrawAsBox with PaperSprite. (Contributed by valval88) Change 3258539 on 2017/01/16 by Nick.Darnell Slate - Pixel Snapping has been moved to the GPU for the RHI rendering policy. Additionally, widgets with a render transform of Scale, Rotation or Sheer, and their children are no longer pixel snapped, this should reduce some of jittering seen by users when animations are applied to widgets. NOTE: This only affects render transforms, any transform in layout space is still subject to pixel snapping. Change 3258607 on 2017/01/16 by Nick.Darnell Fixing the mac build. Change 3258661 on 2017/01/16 by Matt.Kuhlenschmidt Actors with experimental components no longer say "Uses experimental class: Actor" when selecting the actor root in the details panel #jira UE-40535 Change 3258678 on 2017/01/16 by Nick.Darnell Platform - Introducing a way to get the mimetype for a file on Windows. Other platforms don't yet have an implementation outside of returning application/unknown. Change 3258924 on 2017/01/16 by Nick.Darnell Platform - Implementing a fallback for the generic platform http, that can do some basic mimetype lookups. Change 3258929 on 2017/01/16 by Nick.Darnell UMG - Fixing the animation to finish the evaluation before it notifies that the animation completed. Change 3259109 on 2017/01/16 by Nick.Darnell Platform - The GetMimeType function now only takes in FilePath, since some platforms will require that actually resolve to a file on disk in order to determine the true mimetype. Change 3259111 on 2017/01/16 by Alexis.Matte Avoid to move the camera when we re-import in the static mesh editor #jira UE-40613 Change 3259275 on 2017/01/16 by Matt.Kuhlenschmidt Fix crash when a slate window is resized and calls into a scene viewport during loading code when the scene viewport is not in a slate hierarchy and thus has no widget Change 3259300 on 2017/01/16 by Nick.Darnell UMG - Introducing PreConstruct and NativePreConstruct to the base UUserWidget. Users can now visualize non-binding based changes in the designer by evaluating a very limited amount of the blueprint code. In the event your user widget crashes on load, due to calling something unsafe, you can disable evaluation in the editor preferences under Widget Designer. Change 3259306 on 2017/01/16 by Nick.Darnell Games - Removing the Game Specific implementations of PreConstruct. Change 3260182 on 2017/01/17 by Matt.Kuhlenschmidt Fix static analysis Change 3261049 on 2017/01/17 by Nick.Darnell Slate - Putting in some fixes for the non-gpu pixel snapping mode, and disabling gpu snapping while we dig into why it looks weird. Change 3261434 on 2017/01/17 by Nick.Darnell Fixing the mac build. Change 3261435 on 2017/01/17 by Nick.Darnell Slate - Tweaking some aspects of the slate rounding code on the GPU. There's still some precision loss somewhere causing subtle differences in where the snap occurs, that's different from previously. Change 3261460 on 2017/01/17 by Nick.Darnell UMG - Tweaking the defintiions of NativePreConstruct, dropping passing in design time since that is readily available in native code. Change 3261833 on 2017/01/18 by Alexis.Matte Fix all warning for fbx automation tests #jira UE-40208 Change 3261874 on 2017/01/18 by Matt.Kuhlenschmidt PR #3136: Fix Submit to Source Control Window for Git plugin : use CanCheckIn() to filter out unmodified assets files (Contributed by SRombauts) Change 3262000 on 2017/01/18 by Jamie.Dale Updated Slate to allocate widgets using MakeShared This saves one allocation per-widget Change 3262003 on 2017/01/18 by Nick.Darnell UMG - Widget Interaction Components now ignore Visible(false) Widget Components when tracing. #jira UE-40523 Change 3262052 on 2017/01/18 by Alexis.Matte Put back the staticmesh skinxx workflow #jira UE-40782 Change 3262775 on 2017/01/18 by Nick.Darnell Slate - Ditching moving vertex rounding to the GPU, some precision issues could not be overcome. Ended up writing a clean way to implement it on the CPU. Change 3262818 on 2017/01/18 by Alex.Delesky #jira UE-40668 - Editor preferences will now save for data pin styles Change 3263679 on 2017/01/19 by Nick.Darnell Slate - Adding some comments to the Slate Vertex Rounder. Change 3265154 on 2017/01/19 by Nick.Darnell Slate/UMG - Putting in some more time into pixel snapping. I've re-introduced the old constructors, and decided to go with the templated approach, as to not break old code that relied on the FSlateVertex working a certain way. Change 3265478 on 2017/01/20 by Chris.Wood Added config support for hang detection time and switching hang detection on/off in UnrealWatchdog [UE-40838] - Make hang time configurable and increase default in UnrealWatchdog Change 3265600 on 2017/01/20 by Nick.Darnell Slate - Making some const local variables const. Change 3265714 on 2017/01/20 by Alex.Delesky #jira UE-40791 - The ForceFeedback thumbnail's Play and Stop icons will now render correctly, and will only be visible while an effect is playing or when the cursor hovers over the icon. Change 3265865 on 2017/01/20 by Alex.Delesky #jira UE-40511 - The Content Browser file path will now update when inside a folder that is deleted from the Sources Panel. Change 3267989 on 2017/01/23 by Jamie.Dale Exposed String Tables to Blueprints Change 3268018 on 2017/01/23 by Jamie.Dale Small API clean-up for string tables Change 3268455 on 2017/01/23 by Matt.Kuhlenschmidt Fix SaveAs (Which says SaveCurrentAs) not saving the current level and only saving the persistent level and then reloading everything thus causing work to be lost if editing a sub-level #jira UE-40930 Change 3269388 on 2017/01/24 by Chris.Wood Refactored tick timing in UnrealWatchdog to stop bug where it doesn't close. [UE-40839] - UnrealWatchdog running and blocking use of Unreal Game Sync for internal users Standalone tool code only - doesn't touch engine Change 3270205 on 2017/01/24 by Cody.Albert Updated FUnrealEdMisc::OnMessageTokenActivated to properly traverse up the outer hierarchy of an object. Change 3270231 on 2017/01/24 by Cody.Albert Renamed and exposed GetFullScreenAlignment and GetViewportAnchors for consistency with the setters Change 3271734 on 2017/01/25 by Michael.Dupuis #jira UE-38631 Add sorting for landscape target layer, user can now sort alphabetical, material based or custom Added a new vertical box SDragNDropVerticalBox to handle drag & drop of FSlot Fixed SDropTarget to only consider the drop action if it was started by it Added visibility toggle to only show used layers in the currently loaded data Change 3271797 on 2017/01/25 by Jamie.Dale Renamed HasBeenAlreadyMadeSharable to DoesSharedInstanceExist as the old name was nonsense Change 3271813 on 2017/01/25 by Jamie.Dale Fixed bad access of a shared this during widget destruction when a context menu was open Change 3271988 on 2017/01/25 by Nick.Darnell Slate - Removing some old checkbox deprecated code from the 4.3 and 4.6 days. Change 3271992 on 2017/01/25 by Nick.Darnell Blueprints - Making the checked call better to log out more information when dragging and dropping a missing property. Change 3272134 on 2017/01/25 by Jamie.Dale Updated the GatherText commandlet to no longer hold a ConfigFile pointer while it runs This pointer is internal to GConfig, and may be updated (or invalidated) when other config files are loaded (as can happen via game code while gathering text). Change 3272301 on 2017/01/25 by Nick.Darnell Slate - More cleanup from the removal of a old legacy enum that people were still using. Change 3273070 on 2017/01/26 by Chris.Wood Fix CIS errors in landscape code from CL 3271734 Change 3273123 on 2017/01/26 by Chris.Wood Fix crash during init of CRC when running packaged without access to main engine config hierarchy. Change 3273194 on 2017/01/26 by Nick.Darnell Fixing some build warnings. Change 3273242 on 2017/01/26 by Michael.Dupuis #jira UE-39948 : if we detect there is multiple levels in the current persistent when we add a new foliage asset we ask to save the foliage as an asset to permit paiting over multiple levels Change 3273279 on 2017/01/26 by Jamie.Dale String Table INI redirects are now in the "Core.StringTable" section (rather than "/Script/Engine.Engine") Change 3273483 on 2017/01/26 by Alex.Delesky #jira UE-32047 - Made changes to the FixupRedirects commandlet to ensure that files that are marked for delete are moved from the default changelist to the pending changelist and submitted when using Perforce. Also makes a slight change to the ResavePackages commandlet to submit files marked for delete. Change 3273568 on 2017/01/26 by Alex.Delesky Modifying changes made to SPluginWizard to have the plugin loading phase determined by the wizard's definition rather than from the first selected template. #jira none Change 3273855 on 2017/01/26 by Alex.Delesky #jira UE-41117 - Updating the tooltip on the "Allow Paint of all LODs" option for mesh paint mode. Change 3274200 on 2017/01/26 by Alex.Delesky For IPluginWizardDefinition, temporarily adding function bodies to two methods instead of having them be pure virtual methods. Change 3274317 on 2017/01/26 by Jamie.Dale Deleting a seemingly corrupted asset that was accidentially submitted Change 3275072 on 2017/01/27 by Michael.Dupuis #jira UE-38631 tweaks Fix typo error Iterate all components, not only active one Force expand the Target Layers widget Change 3275249 on 2017/01/27 by Alexis.Matte Color grading controls: Keep the vector ratio when changing the master slider #jira UETOOL-1098 Change 3275282 on 2017/01/27 by Alexis.Matte Color grading controls: Cosmetic changes #jira UETOOL-1099 Change 3275292 on 2017/01/27 by Alexis.Matte Make sure the build is called once when we import a staticmesh. #jira UE-40947 Change 3275430 on 2017/01/27 by Alexis.Matte Add some fbx automation tests - Import a mesh with no material - Import corrupted asset with no section in a LOD - Import morph targets - Materials name clash - Max Multimap material ordering Change 3275683 on 2017/01/27 by Michael.Dupuis #jira UE-41215 : when saving an asset do not register the transaction, and make sure that the duplicate wont keep a copy in the transaction buffer as an asset can't be undo Change 3276237 on 2017/01/27 by Jamie.Dale Deleting a seemingly corrupted asset that was accidentially submitted Change 3276266 on 2017/01/27 by Jamie.Dale Fix for accessing a potentially null pointer Change 3277065 on 2017/01/30 by Chris.Wood Move crash report temp files to saved config and cleanup on schedule. [UE-39506] - CrashReportClient ini folders are not cleaned when opening the editor Change 3277236 on 2017/01/30 by Matt.Kuhlenschmidt Fix crash when cancelling SaveCurrentLevelAs #jira UE-41182 Change 3277409 on 2017/01/30 by Jamie.Dale Improved text rendering when the last resort font is missing The last resort font is no longer included in shipping builds, so this change makes some improvements to text rendering when it's missing. - The legacy font cache no longer tries to use the last resort font if it's not available (preventing warnings). - The Slate font renderer no longer tries to use the last resort font if it's not available. - Text shaping will use the last resort character if none of the available fonts can render a given character (likely because the last resort font is missing). - HarfBuzz shaped text now uses the fallback character correctly. Change 3277749 on 2017/01/30 by Nick.Darnell Slate - Moving ESlateDrawEffect & ESlateBatchDrawFlag over to be enum class, found cases where users were improperly assuming the enum order, and so now it won't be possible to just treat an int32 or a bool as the draw effect value. Core - Adding EnumHasAllFlags and EnumHasAnyFlags, templated functions to make it easier to check for the existance of a flag on enum classes. Change 3277805 on 2017/01/30 by Nick.Darnell Rendering - Changing some LoadModuleChecked calls to GetModuleChecked, as these calls are not happening on the main thread and are not safe to make. Change 3277914 on 2017/01/30 by Matt.Kuhlenschmidt Fix Niagara slate style warning on startup Change 3278058 on 2017/01/30 by Matt.Kuhlenschmidt Fixed compile error Change 3278132 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278133 on 2017/01/30 by Matt.Kuhlenschmidt Fixed compile errors Change 3278186 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278525 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278534 on 2017/01/30 by Nick.Darnell Automation - Clearing up several warnings/errors with automation results, trying to get Automation Tests to at least yellow before integration. Change 3278941 on 2017/01/31 by Nick.Darnell Fixing a build warning due to build team refactor. Change 3278949 on 2017/01/31 by Nick.Darnell Fixing incrmenetal build issues. Change 3278953 on 2017/01/31 by Nick.Darnell Fixing some incrmental linux build issues. Change 3278964 on 2017/01/31 by Nick.Darnell FIxing more incremental build issues. Change 3279256 on 2017/01/31 by Michael.Dupuis #jira UE-41319 #jira UE-41315 #jira UE-41316 Instead of getting the Landscape Actor, call GetLandscapeProxy so all case are handled, either proxy or landscape actor Change 3279270 on 2017/01/31 by Chad.Garyet re-updating the automation test pool [CL 3279775 by Matt Kuhlenschmidt in Main branch]
2017-01-31 15:22:49 -05:00
IconBrush = FEditorStyle::GetBrush("ContentBrowser.ColumnViewAssetIcon");
}
// Make icon overlays (eg, SCC and dirty status) a reasonable size in relation to the icon size (note: it is assumed this icon is square)
const float IconOverlaySize = IconBrush->ImageSize.X * 0.6f;
Content = SNew(SHorizontalBox)
.AddMetaData<FTagMetaData>(FTagMetaData(AssetItem->GetType() == EAssetItemType::Normal ? StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.ObjectPath : NAME_None))
// Icon
+SHorizontalBox::Slot()
.AutoWidth()
.Padding(0, 0, 4, 0)
[
SNew(SOverlay)
// The actual icon
+SOverlay::Slot()
[
SNew(SImage)
.Image( IconBrush )
.ColorAndOpacity(this, &SAssetColumnItem::GetAssetColor)
]
// Source control state
+SOverlay::Slot()
.HAlign(HAlign_Right)
.VAlign(VAlign_Top)
[
SNew(SBox)
.WidthOverride(IconOverlaySize)
.HeightOverride(IconOverlaySize)
[
SNew(SImage)
.Image(this, &SAssetColumnItem::GetSCCStateImage)
]
]
// Dirty state
+SOverlay::Slot()
.HAlign(HAlign_Left)
.VAlign(VAlign_Bottom)
[
SNew(SBox)
.WidthOverride(IconOverlaySize)
.HeightOverride(IconOverlaySize)
[
SNew(SImage)
.Image(this, &SAssetColumnItem::GetDirtyImage)
]
]
]
// Editable Name
+SHorizontalBox::Slot()
.AutoWidth()
[
SAssignNew(InlineRenameWidget, SInlineEditableTextBlock)
.Text( GetNameText() )
.OnBeginTextEdit(this, &SAssetColumnItem::HandleBeginNameChange)
.OnTextCommitted(this, &SAssetColumnItem::HandleNameCommitted)
.OnVerifyTextChanged(this, &SAssetColumnItem::HandleVerifyNameChanged)
.HighlightText(HighlightText)
.IsSelected(InIsSelected)
.IsReadOnly(this, &SAssetColumnItem::IsNameReadOnly)
];
if(AssetItem.IsValid())
{
AssetItem->RenamedRequestEvent.BindSP( InlineRenameWidget.Get(), &SInlineEditableTextBlock::EnterEditingMode );
}
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
return SNew(SBorder)
.BorderImage(this, &SAssetViewItem::GetBorderImage)
.Padding(0)
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3279756) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3229490 on 2016/12/09 by Cody.Albert Integrated fix to support named changelists in SVN Change 3229574 on 2016/12/09 by Simon.Tourangeau Fix actor mobility getting changed on scene reimport #jira UE-39102 Change 3229692 on 2016/12/09 by Cody.Albert Fixing an XML Parser assert when parsing a root tag that completes on the same line. #jira UE-30393 Change 3230582 on 2016/12/12 by Matt.Kuhlenschmidt PR #3024: Correct the outdated error message instructions for how to fix being unable to launch on an iOS device. (Contributed by CleanCut) Change 3231470 on 2016/12/12 by Matt.Kuhlenschmidt Eliminate editor sounds that play when you PIE, simulate or possess the player. They get in the way of game sounds, are annoying to hear when you are constantly starting and stopping pie, and flush async loading that the game might be doing when they load. Change 3231475 on 2016/12/12 by Alex.Delesky #jira UE-39023 - Using the High Resolution screenshot tool with the "custom depth as mask" option checked should no longer crash the editor or a PIE viewport when the screen percentage is not set to 100. Change 3231476 on 2016/12/12 by Alex.Delesky #jira UE-39380 - Thumbnails for static meshes in the foliage paint mode window should now update to show the correct mesh if the thumbnail pool has been exhausted. This also increases the number of foliage thumbnals that can exist onscreen at once. Change 3231477 on 2016/12/12 by Alex.Delesky #jira none - Extending the IPluginWizardDefinition interface to allow it to return the descriptor type of the plugin. This fixes a merge conflict from Odin where the new plugin wizard was modified to allow for multiple template selection. Change 3231479 on 2016/12/12 by Alex.Delesky #jira UE-39376 - Changing the number of players or changing the dedicated server options in PIE settings should now always persist on editor shutdown. Change 3231480 on 2016/12/12 by Alex.Delesky #jira UE-39417 - A texture will now match to update a dropped in file if the source path differs from that of the dropped in file Change 3231508 on 2016/12/12 by Alex.Delesky Removing todo comment #jira none Change 3231603 on 2016/12/12 by Matt.Kuhlenschmidt Exposed a 0-1 UV set and the scaled pixel size for Box and Border brushes Also added a material function that exposes all of the current UV sets with nice names instead of indexed coordinates Change 3231618 on 2016/12/12 by Alex.Delesky #jira UE-38732 - When editing a spin box with a delta value, committing the value with the Enter key and then clearing the focus from the spin box will no longer change the internal value to match the snapped value. Change 3231638 on 2016/12/12 by Matt.Kuhlenschmidt Add RF_Transactional to the list of default flags for creating or importing new assets. All should be transactional by default Change 3231642 on 2016/12/12 by Matt.Kuhlenschmidt Brighten up the output log by default Change 3231648 on 2016/12/12 by Alex.Delesky #jira UE-38033 - Selecting a Named Slot that's part of a widget in a Widget Switcher will now show that widget instead of the widget at index 0. This also applies to any content set inside the named slot. Change 3231666 on 2016/12/12 by Alex.Delesky #jira UE-38952 - Widgets that have been copied and pasted into the same hierarchy will now retain the same name in the hierarchy. This does not fix widgets that have been previously copied and pasted from other widgets, nor copies of those widgets. Change 3231674 on 2016/12/12 by Alex.Delesky #jira UE-37106 - When using or simulating touch for Widget Components, the hover/clicked state will now be accurately determined rather than showing hover on initial touch. Change 3231745 on 2016/12/12 by Alex.Delesky Back out changelist 3231477 to fix build error C2259 Change 3232417 on 2016/12/13 by Simon.Tourangeau Add the following attributes to the Editor.Usage.FBX.Import EngineAnalytics event - FBX Version - Filename Hash - Import Type #jira UE-37453 Change 3232477 on 2016/12/13 by Michael.Dupuis #jira UE-39675 : There was an issue when the Neutral Value == the Min or Max value, so we simply prevent using the concept of neutral value if min or max == neutral as it mean you only want a log on one side. Change 3232571 on 2016/12/13 by Alex.Delesky Back out changelist 3231745 #jira none - Extending the IPluginWizardDefinition interface to allow it to return the descriptor type of the plugin. This fixes a merge conflict from Odin where the new plugin wizard was modified to allow for multiple template selection. Change 3232675 on 2016/12/13 by Alexis.Matte Fix a crash when reordering material with a fbx containing unused materials, add a fbx automation test to prevent similar issue. #jira UE-39692 Change 3232975 on 2016/12/13 by Alex.Delesky Fix to build error C2259 for the IPluginWizardDefinition API change. Change 3233146 on 2016/12/13 by Michael.Dupuis #jira UE-38766 : Added eye dropper to select flatten height Fixed a rounding errors resulting in not flattening to the specified height Fixed a rounding error resulting in LandscapeDataAccess::GetTexHeight not always returning the appropriate value Change 3233153 on 2016/12/13 by Alexis.Matte We cannot anymore change the instance override materials array topology, the topology is limited by the mesh materials array #jira UE-38827 Change 3234406 on 2016/12/14 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3234485 on 2016/12/14 by Michael.Dupuis tentative build fix for Mac Change 3234495 on 2016/12/14 by Matt.Kuhlenschmidt Made a setting to control if PIE enter and exit sounds are played. Off by default Change 3236709 on 2016/12/15 by Simon.Tourangeau Fix camera export rotation offset #jira UE-34692 #jira UE-39740 Change 3236782 on 2016/12/15 by Jamie.Dale Fixed EmitTermExpr failing to use the correct package ID FBPTerminal::Source used to be set to the pin, however when pins were moved away from being UObjects, FBPTerminal::SourcePin was added and FBPTerminal::Source is typically null. Change 3236853 on 2016/12/15 by Alexis.Matte Fix the serialization of the staticmesh property FMeshSectionInfoMap Change 3236890 on 2016/12/15 by Matt.Kuhlenschmidt Remove old define Change 3239328 on 2016/12/18 by Richard.TalbotWatkin Fixed Focus Viewport action in Static Mesh Viewport. Problem was that the conversion to Orbit Camera for storing the camera position was trashing the desired position during cvamera transitions. Orbit camera position is now only stored at the end of a transition. #jira UE-39825 - Key "F" for Focus acts Sporadically in the Static Mesh Editor Viewport Change 3239660 on 2016/12/19 by Alex.Delesky #jira UE-38968, UE-36826 - Components attached to actors can now be directly scaled to negative values using the transform gizmo for that component. Change 3239662 on 2016/12/19 by Alex.Delesky #jira UE-39007 - The data table row editor now contains a Reset to Default control. Change 3239663 on 2016/12/19 by Alex.Delesky #jira UE-39698 - Importing CSV files will now show the name of the file in the import dialog. Change 3240696 on 2016/12/20 by Michael.Dupuis #jira UETOOL-1009: Added paddiing to columns view Added auto resize of column when double clicking on splitter handle in the header Remove right number alignment after discussion with Matt K. Change 3240758 on 2016/12/20 by Michael.Dupuis added missing non abstract implementation Change 3240782 on 2016/12/20 by Michael.Dupuis Added missing documentation for content browser column auto resizing Change 3240817 on 2016/12/20 by Alex.Delesky #jira UE-38940 - Copying a Material-Custom node with a tab character should now correctly render the tab. Change 3240834 on 2016/12/20 by Michael.Dupuis tentative fix for build error Change 3240984 on 2016/12/20 by Michael.Dupuis Removed unnecessary functions Change 3241174 on 2016/12/20 by Matt.Kuhlenschmidt Fix compile errors Change 3241966 on 2016/12/21 by Chris.Wood Fixed Typo and changed execution order in "ComboBoxString" Component [UE-38994] - GitHub 2971 : Fixed Typo and changed execution order in "ComboBoxString" Component PR #2971: Fixed Typo and changed execution order in "ComboBoxString" Component (Contributed by eXifreXi) #github https://github.com/EpicGames/UnrealEngine/pull/2971 Change 3242126 on 2016/12/21 by Alexis.Matte Back out changelist 3236853 We have to back out this change list because the change was implement in the 4.15 release branch and the EditorObjectVersion.h change is now implement in the ReleaseObjectVersion.h. Change 3244492 on 2017/01/02 by Jamie.Dale Improved error message Change 3244545 on 2017/01/02 by Nick.Darnell Navigation - Making it so we don't attempt to load HotReload during shutdown, we only access it if it's still loaded. Change 3244549 on 2017/01/02 by Nick.Darnell Slate - Implementing custom hardware cursor loading across Windows, Mac and Linux and supports loading cursors from PAK files. All platforms support loading PNGs through the FHardwareCursor interface. Some platforms support additional formats, for multiresolution support, but there's a naming convention that can be used on PNGs for the same capability. All of it is documented in the FHardwareCursor header. The platform layer for ICursor, now has support for replacing cursor shapes as an override, and can be reset safely. The FHardwareCursor supports loading cursors from raw pixel buffers as well, the plan is to allow for the option to UTextures to also be used for hardware cursors. Now users through C++ can load and replace the hardware cursors with custom ones of their own, e.g. FSlateApplication::Get().RegisterCursor(EMouseCursor::Default, MakeShareable(new FHardwareCursor(FPaths::GameContentDir() / "Slate/FancyPointer", FIntPoint(0,0)))); The next step is to expose a game friendly layer that supports caching cursors, and letting users change them out by name, without a bunch of destruction of OS resources. Change 3244845 on 2017/01/03 by Jamie.Dale Fixing typo #jira UE-39920 Change 3244903 on 2017/01/03 by Jamie.Dale PR #3044: fix link error when FAssetData::PrintAssetData() is used in project (Contributed by kayama-shift) Change 3245125 on 2017/01/03 by Alexis.Matte Put back the dev-editor version because there was some data create before we back it out Change 3246106 on 2017/01/04 by Chris.Wood Removed broken CrashReportReciever pre-upload phase from CrashReportClient. [UE-40153] - CrashReportClient fails when used in legacy mode with a CrashReportReciever Change 3246251 on 2017/01/04 by Alex.Delesky #jira UE-39869 - Moving an asset before saving it and then hitting Save All from the file menu will no longer save the asset in its original location. Change 3246252 on 2017/01/04 by Alex.Delesky #jira UE-39793 - Fixes an issue with the AutoReimporter where specifying a non-existent mount point (a directory in the content browser) would cause a crash when attempting to auto-import an asset from a monitored directory, as well as ensuring that valid mount points will be able to create new assets from auto-import. The "Map Directory To" field when setting directories to monitor for auto-reimport has also been changed to use the content browser path picker instead of relying on the user to manually enter a mount point. Change 3247620 on 2017/01/05 by Nick.Darnell Automation - Removing an adjustment to the number of shots we take for high res shots. Change 3247621 on 2017/01/05 by Nick.Darnell Automation - Adding a few more rendering tests to the cornell box. Change 3247629 on 2017/01/05 by Nick.Darnell Automation - Improving the comparison row display for screenshots so it's obvious what each image represents. Change 3248811 on 2017/01/05 by Matt.Kuhlenschmidt PR #3091: Removed unnecessary UPackage casts (Contributed by projectgheist) Change 3248860 on 2017/01/06 by Matt.Kuhlenschmidt Made the plugin browser select the "built in" category by default instead of the 2D category. There is no reason for a sub-category to be selected first as it makes searching for plugins globally an extra click because you have to click on the base category first Change 3249264 on 2017/01/06 by Matt.Kuhlenschmidt Fixed automation test warnings #jira UE-40198 Change 3249481 on 2017/01/06 by Michael.Dupuis #jira UE-37875 : Fill empty layers of components on assignation or creation Also fill new component added with the tool from neighbours predominance Change 3249505 on 2017/01/06 by Matt.Kuhlenschmidt PR #3093: Include guard cleanup (Contributed by projectgheist) Change 3249544 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3250738 on 2017/01/09 by Nick.Darnell UMG - The WIC now checks if the Widget is enabled before it claims that it's over an interactable or keyboard focusable widget. #jira UE-39845 Change 3250865 on 2017/01/09 by Nick.Darnell Slate - Updating EAutoCenter and ESizingRule to use the newer enum class style enums. Change 3250867 on 2017/01/09 by Nick.Darnell Slate - Adding more logging to the hardware cursor code so that it reports more information when it doesn't find an exact match when it comes to cursor size. Change 3250936 on 2017/01/09 by Nick.Darnell Automation - Refactoring the screenshot comparison tool to no longer require one one generated report. Doing screenshot comparions now generates individual reports for each failed comparison so that they can be evaluated in bits, and as changes occur as the user reviews aspects, we can remove the reports. There is now async image loading for the comparison view so that it doesn't hitch. Change 3250937 on 2017/01/09 by Nick.Darnell Automation - Adding another example to the CornellBox test. Change 3250958 on 2017/01/09 by Nick.Darnell Slate - Fixing some other cases where people were referring to ESizingRule::Type. Change 3251162 on 2017/01/09 by Nick.Darnell Slate - Fixing some other cases where people were referring to ESizingRule::Type. Change 3251254 on 2017/01/09 by Matt.Kuhlenschmidt Attempt to fix static analysis warnings Change 3251373 on 2017/01/09 by Nick.Darnell Core - Now writing a log warning instead of ensuring if calling LoadModule wouldn't have been safe to do here, depending on load order. Change 3251525 on 2017/01/09 by Nick.Darnell Automation - Fixing a build issue in ImageComparer. Change 3252321 on 2017/01/10 by Alex.Delesky #jira UE-40164 - Importing multiple files to overwrite existing assets such as sounds will now correctly persist the "Yes to All" / "No to All" dialog selections. Change 3252354 on 2017/01/10 by Nick.Darnell Image Compare - Fixing a potential threading hazard in the image comparer. Change 3252356 on 2017/01/10 by Nick.Darnell Automation - The screenshot metadata now captures the commit/CL that the screenshot was taken at and records it in the metadata. Change 3252601 on 2017/01/10 by Alexis.Matte Fbx automation test, reload feature implementation Change 3252761 on 2017/01/10 by Jamie.Dale Fixing some IWYU errors with PCH disabled Change 3252765 on 2017/01/10 by Jamie.Dale Fixing some static analysis warnings Change 3252793 on 2017/01/10 by Jamie.Dale Fixing FText natvis The text data visualizers have to be defined before the text visualizer Change 3253987 on 2017/01/11 by Matt.Kuhlenschmidt PR #3108: Git Plugin: use asynchronous "MarkForAdd" and "CheckIn" operations for the initial commit (Contributed by SRombauts) Change 3254378 on 2017/01/11 by Matt.Kuhlenschmidt Refactor scene importing to allow for plugins to make scene importers Change 3254679 on 2017/01/11 by Matt.Kuhlenschmidt Fix calling LoadModule in perforce source control off the main thread Change 3256472 on 2017/01/12 by Jamie.Dale Improved error reporting from IncludeTool - The error reporting was using zero-based line indices which was misleading. - The error reporting now includes the offending line to remove ambiguity. Change 3256725 on 2017/01/13 by Jamie.Dale IncludeTool can now parse typedef in Fwd headers Change 3256758 on 2017/01/13 by Jamie.Dale Added support for String Tables String Tables provide a way to centralize your localized text into one (or several) known locations, and then reference the entries within a string table from other assets or code in a robust way that allows for easy re-use of localized text. String Tables can be defined in C++ (using the LOCTABLE family of macros), loaded via CSV file, or created as an asset. They can be referenced in C++ using either the LOCTABLE macro, or the static FText::FromStringTable function. INI files can reference them using the LOCTABLE macro syntax, and FText properties in assets can reference them via the advanced settings combo. Change 3257018 on 2017/01/13 by Alexis.Matte FbxAutomationTest fix the import reload operation, it was calling garbagecollect with no keep flag Change 3257168 on 2017/01/13 by Jamie.Dale Removed code that was writing null into bytecode during save Change 3257344 on 2017/01/13 by Jamie.Dale Backing out changelist 3256725, and excluding my header from the scan instead Change 3257426 on 2017/01/13 by Nick.Darnell Slate - Adding the ability to invert alpha when drawing slate textures. Going to be used in the future for rendering render targets for the scene which have inverted alpha. Change 3257572 on 2017/01/13 by Nick.Darnell Slate - Fixing a build error. Change 3257970 on 2017/01/14 by Jamie.Dale Fixing exclude path Change 3258458 on 2017/01/16 by Matt.Kuhlenschmidt PR #3135: GameViewportClient: FOnCloseRequested is now a multicast delegate (Contributed by Nadrin) Change 3258472 on 2017/01/16 by Matt.Kuhlenschmidt PR #3126: Fix to load editor style assets (Contributed by projectgheist) Change 3258473 on 2017/01/16 by Matt.Kuhlenschmidt PR #3124: Fix wrong result with Image-DrawAsBox with PaperSprite. (Contributed by valval88) Change 3258539 on 2017/01/16 by Nick.Darnell Slate - Pixel Snapping has been moved to the GPU for the RHI rendering policy. Additionally, widgets with a render transform of Scale, Rotation or Sheer, and their children are no longer pixel snapped, this should reduce some of jittering seen by users when animations are applied to widgets. NOTE: This only affects render transforms, any transform in layout space is still subject to pixel snapping. Change 3258607 on 2017/01/16 by Nick.Darnell Fixing the mac build. Change 3258661 on 2017/01/16 by Matt.Kuhlenschmidt Actors with experimental components no longer say "Uses experimental class: Actor" when selecting the actor root in the details panel #jira UE-40535 Change 3258678 on 2017/01/16 by Nick.Darnell Platform - Introducing a way to get the mimetype for a file on Windows. Other platforms don't yet have an implementation outside of returning application/unknown. Change 3258924 on 2017/01/16 by Nick.Darnell Platform - Implementing a fallback for the generic platform http, that can do some basic mimetype lookups. Change 3258929 on 2017/01/16 by Nick.Darnell UMG - Fixing the animation to finish the evaluation before it notifies that the animation completed. Change 3259109 on 2017/01/16 by Nick.Darnell Platform - The GetMimeType function now only takes in FilePath, since some platforms will require that actually resolve to a file on disk in order to determine the true mimetype. Change 3259111 on 2017/01/16 by Alexis.Matte Avoid to move the camera when we re-import in the static mesh editor #jira UE-40613 Change 3259275 on 2017/01/16 by Matt.Kuhlenschmidt Fix crash when a slate window is resized and calls into a scene viewport during loading code when the scene viewport is not in a slate hierarchy and thus has no widget Change 3259300 on 2017/01/16 by Nick.Darnell UMG - Introducing PreConstruct and NativePreConstruct to the base UUserWidget. Users can now visualize non-binding based changes in the designer by evaluating a very limited amount of the blueprint code. In the event your user widget crashes on load, due to calling something unsafe, you can disable evaluation in the editor preferences under Widget Designer. Change 3259306 on 2017/01/16 by Nick.Darnell Games - Removing the Game Specific implementations of PreConstruct. Change 3260182 on 2017/01/17 by Matt.Kuhlenschmidt Fix static analysis Change 3261049 on 2017/01/17 by Nick.Darnell Slate - Putting in some fixes for the non-gpu pixel snapping mode, and disabling gpu snapping while we dig into why it looks weird. Change 3261434 on 2017/01/17 by Nick.Darnell Fixing the mac build. Change 3261435 on 2017/01/17 by Nick.Darnell Slate - Tweaking some aspects of the slate rounding code on the GPU. There's still some precision loss somewhere causing subtle differences in where the snap occurs, that's different from previously. Change 3261460 on 2017/01/17 by Nick.Darnell UMG - Tweaking the defintiions of NativePreConstruct, dropping passing in design time since that is readily available in native code. Change 3261833 on 2017/01/18 by Alexis.Matte Fix all warning for fbx automation tests #jira UE-40208 Change 3261874 on 2017/01/18 by Matt.Kuhlenschmidt PR #3136: Fix Submit to Source Control Window for Git plugin : use CanCheckIn() to filter out unmodified assets files (Contributed by SRombauts) Change 3262000 on 2017/01/18 by Jamie.Dale Updated Slate to allocate widgets using MakeShared This saves one allocation per-widget Change 3262003 on 2017/01/18 by Nick.Darnell UMG - Widget Interaction Components now ignore Visible(false) Widget Components when tracing. #jira UE-40523 Change 3262052 on 2017/01/18 by Alexis.Matte Put back the staticmesh skinxx workflow #jira UE-40782 Change 3262775 on 2017/01/18 by Nick.Darnell Slate - Ditching moving vertex rounding to the GPU, some precision issues could not be overcome. Ended up writing a clean way to implement it on the CPU. Change 3262818 on 2017/01/18 by Alex.Delesky #jira UE-40668 - Editor preferences will now save for data pin styles Change 3263679 on 2017/01/19 by Nick.Darnell Slate - Adding some comments to the Slate Vertex Rounder. Change 3265154 on 2017/01/19 by Nick.Darnell Slate/UMG - Putting in some more time into pixel snapping. I've re-introduced the old constructors, and decided to go with the templated approach, as to not break old code that relied on the FSlateVertex working a certain way. Change 3265478 on 2017/01/20 by Chris.Wood Added config support for hang detection time and switching hang detection on/off in UnrealWatchdog [UE-40838] - Make hang time configurable and increase default in UnrealWatchdog Change 3265600 on 2017/01/20 by Nick.Darnell Slate - Making some const local variables const. Change 3265714 on 2017/01/20 by Alex.Delesky #jira UE-40791 - The ForceFeedback thumbnail's Play and Stop icons will now render correctly, and will only be visible while an effect is playing or when the cursor hovers over the icon. Change 3265865 on 2017/01/20 by Alex.Delesky #jira UE-40511 - The Content Browser file path will now update when inside a folder that is deleted from the Sources Panel. Change 3267989 on 2017/01/23 by Jamie.Dale Exposed String Tables to Blueprints Change 3268018 on 2017/01/23 by Jamie.Dale Small API clean-up for string tables Change 3268455 on 2017/01/23 by Matt.Kuhlenschmidt Fix SaveAs (Which says SaveCurrentAs) not saving the current level and only saving the persistent level and then reloading everything thus causing work to be lost if editing a sub-level #jira UE-40930 Change 3269388 on 2017/01/24 by Chris.Wood Refactored tick timing in UnrealWatchdog to stop bug where it doesn't close. [UE-40839] - UnrealWatchdog running and blocking use of Unreal Game Sync for internal users Standalone tool code only - doesn't touch engine Change 3270205 on 2017/01/24 by Cody.Albert Updated FUnrealEdMisc::OnMessageTokenActivated to properly traverse up the outer hierarchy of an object. Change 3270231 on 2017/01/24 by Cody.Albert Renamed and exposed GetFullScreenAlignment and GetViewportAnchors for consistency with the setters Change 3271734 on 2017/01/25 by Michael.Dupuis #jira UE-38631 Add sorting for landscape target layer, user can now sort alphabetical, material based or custom Added a new vertical box SDragNDropVerticalBox to handle drag & drop of FSlot Fixed SDropTarget to only consider the drop action if it was started by it Added visibility toggle to only show used layers in the currently loaded data Change 3271797 on 2017/01/25 by Jamie.Dale Renamed HasBeenAlreadyMadeSharable to DoesSharedInstanceExist as the old name was nonsense Change 3271813 on 2017/01/25 by Jamie.Dale Fixed bad access of a shared this during widget destruction when a context menu was open Change 3271988 on 2017/01/25 by Nick.Darnell Slate - Removing some old checkbox deprecated code from the 4.3 and 4.6 days. Change 3271992 on 2017/01/25 by Nick.Darnell Blueprints - Making the checked call better to log out more information when dragging and dropping a missing property. Change 3272134 on 2017/01/25 by Jamie.Dale Updated the GatherText commandlet to no longer hold a ConfigFile pointer while it runs This pointer is internal to GConfig, and may be updated (or invalidated) when other config files are loaded (as can happen via game code while gathering text). Change 3272301 on 2017/01/25 by Nick.Darnell Slate - More cleanup from the removal of a old legacy enum that people were still using. Change 3273070 on 2017/01/26 by Chris.Wood Fix CIS errors in landscape code from CL 3271734 Change 3273123 on 2017/01/26 by Chris.Wood Fix crash during init of CRC when running packaged without access to main engine config hierarchy. Change 3273194 on 2017/01/26 by Nick.Darnell Fixing some build warnings. Change 3273242 on 2017/01/26 by Michael.Dupuis #jira UE-39948 : if we detect there is multiple levels in the current persistent when we add a new foliage asset we ask to save the foliage as an asset to permit paiting over multiple levels Change 3273279 on 2017/01/26 by Jamie.Dale String Table INI redirects are now in the "Core.StringTable" section (rather than "/Script/Engine.Engine") Change 3273483 on 2017/01/26 by Alex.Delesky #jira UE-32047 - Made changes to the FixupRedirects commandlet to ensure that files that are marked for delete are moved from the default changelist to the pending changelist and submitted when using Perforce. Also makes a slight change to the ResavePackages commandlet to submit files marked for delete. Change 3273568 on 2017/01/26 by Alex.Delesky Modifying changes made to SPluginWizard to have the plugin loading phase determined by the wizard's definition rather than from the first selected template. #jira none Change 3273855 on 2017/01/26 by Alex.Delesky #jira UE-41117 - Updating the tooltip on the "Allow Paint of all LODs" option for mesh paint mode. Change 3274200 on 2017/01/26 by Alex.Delesky For IPluginWizardDefinition, temporarily adding function bodies to two methods instead of having them be pure virtual methods. Change 3274317 on 2017/01/26 by Jamie.Dale Deleting a seemingly corrupted asset that was accidentially submitted Change 3275072 on 2017/01/27 by Michael.Dupuis #jira UE-38631 tweaks Fix typo error Iterate all components, not only active one Force expand the Target Layers widget Change 3275249 on 2017/01/27 by Alexis.Matte Color grading controls: Keep the vector ratio when changing the master slider #jira UETOOL-1098 Change 3275282 on 2017/01/27 by Alexis.Matte Color grading controls: Cosmetic changes #jira UETOOL-1099 Change 3275292 on 2017/01/27 by Alexis.Matte Make sure the build is called once when we import a staticmesh. #jira UE-40947 Change 3275430 on 2017/01/27 by Alexis.Matte Add some fbx automation tests - Import a mesh with no material - Import corrupted asset with no section in a LOD - Import morph targets - Materials name clash - Max Multimap material ordering Change 3275683 on 2017/01/27 by Michael.Dupuis #jira UE-41215 : when saving an asset do not register the transaction, and make sure that the duplicate wont keep a copy in the transaction buffer as an asset can't be undo Change 3276237 on 2017/01/27 by Jamie.Dale Deleting a seemingly corrupted asset that was accidentially submitted Change 3276266 on 2017/01/27 by Jamie.Dale Fix for accessing a potentially null pointer Change 3277065 on 2017/01/30 by Chris.Wood Move crash report temp files to saved config and cleanup on schedule. [UE-39506] - CrashReportClient ini folders are not cleaned when opening the editor Change 3277236 on 2017/01/30 by Matt.Kuhlenschmidt Fix crash when cancelling SaveCurrentLevelAs #jira UE-41182 Change 3277409 on 2017/01/30 by Jamie.Dale Improved text rendering when the last resort font is missing The last resort font is no longer included in shipping builds, so this change makes some improvements to text rendering when it's missing. - The legacy font cache no longer tries to use the last resort font if it's not available (preventing warnings). - The Slate font renderer no longer tries to use the last resort font if it's not available. - Text shaping will use the last resort character if none of the available fonts can render a given character (likely because the last resort font is missing). - HarfBuzz shaped text now uses the fallback character correctly. Change 3277749 on 2017/01/30 by Nick.Darnell Slate - Moving ESlateDrawEffect & ESlateBatchDrawFlag over to be enum class, found cases where users were improperly assuming the enum order, and so now it won't be possible to just treat an int32 or a bool as the draw effect value. Core - Adding EnumHasAllFlags and EnumHasAnyFlags, templated functions to make it easier to check for the existance of a flag on enum classes. Change 3277805 on 2017/01/30 by Nick.Darnell Rendering - Changing some LoadModuleChecked calls to GetModuleChecked, as these calls are not happening on the main thread and are not safe to make. Change 3277914 on 2017/01/30 by Matt.Kuhlenschmidt Fix Niagara slate style warning on startup Change 3278058 on 2017/01/30 by Matt.Kuhlenschmidt Fixed compile error Change 3278132 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278133 on 2017/01/30 by Matt.Kuhlenschmidt Fixed compile errors Change 3278186 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278525 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278534 on 2017/01/30 by Nick.Darnell Automation - Clearing up several warnings/errors with automation results, trying to get Automation Tests to at least yellow before integration. Change 3278941 on 2017/01/31 by Nick.Darnell Fixing a build warning due to build team refactor. Change 3278949 on 2017/01/31 by Nick.Darnell Fixing incrmenetal build issues. Change 3278953 on 2017/01/31 by Nick.Darnell Fixing some incrmental linux build issues. Change 3278964 on 2017/01/31 by Nick.Darnell FIxing more incremental build issues. Change 3279256 on 2017/01/31 by Michael.Dupuis #jira UE-41319 #jira UE-41315 #jira UE-41316 Instead of getting the Landscape Actor, call GetLandscapeProxy so all case are handled, either proxy or landscape actor Change 3279270 on 2017/01/31 by Chad.Garyet re-updating the automation test pool [CL 3279775 by Matt Kuhlenschmidt in Main branch]
2017-01-31 15:22:49 -05:00
.VAlign(VAlign_Center)
.HAlign(HAlign_Left)
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
[
SNew( SAssetColumnItemNameBox, SharedThis(this) )
.Padding( ColumnItemPadding )
[
Content.ToSharedRef()
]
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
];
}
else if ( ColumnName == "Class" )
{
Content = SAssignNew(ClassText, STextBlock)
.ToolTipText( this, &SAssetColumnItem::GetAssetClassText )
.Text( GetAssetClassText() )
.HighlightText( HighlightText );
}
else if ( ColumnName == "Path" )
{
Content = SAssignNew(PathText, STextBlock)
.ToolTipText( this, &SAssetColumnItem::GetAssetPathText )
.Text( GetAssetPathText() )
.HighlightText( HighlightText );
}
else
{
Content = SNew(STextBlock)
.ToolTipText( TAttribute<FText>::Create( TAttribute<FText>::FGetter::CreateSP(this, &SAssetColumnItem::GetAssetTagText, ColumnName) ) )
.Text( TAttribute<FText>::Create( TAttribute<FText>::FGetter::CreateSP(this, &SAssetColumnItem::GetAssetTagText, ColumnName) ) );
}
return SNew(SBox)
---- Merging with SlateDev branch ---- Introduces the concept of "Active Ticking" to allow Slate to go to sleep when there is no need to update the UI. While asleep, Slate will skip the Tick & Paint pass for that frame entirely. - There are TWO ways to "wake" Slate and cause a Tick/Paint pass: 1. Provide some sort of input (mouse movement, clicks, and key presses). Slate will always tick when the user is active. - Therefore, if the logic in a given widget's Tick is only relevant in response to user action, there is no need to register an active tick. 2. Register an Active Tick. Currently this is an all-or-nothing situation, so if a single active tick needs to execute, all of Slate will be ticked. - The purpose of an Active Tick is to allow a widget to "drive" Slate and guarantee a Tick/Paint pass in the absence of any user action. - Examples include animation, async operations that update periodically, progress updates, loading bars, etc. - An empty active tick is registered for viewports when they are real-time, so game project widgets are unaffected by this change and should continue to work as before. - An Active Tick is registered by creating an FWidgetActiveTickDelegate and passing it to SWidget::RegisterActiveTick() - There are THREE ways to unregister an active tick: 1. Return EActiveTickReturnType::StopTicking from the active tick function 2. Pass the FActiveTickHandle returned by RegisterActiveTick() to SWidget::UnregisterActiveTick() 3. Destroy the widget responsible for the active tick - Sleeping is currently disabled, can be enabled with Slate.AllowSlateToSleep cvar - There is currently a little buffer time during which Slate continues to tick following any input. Long-term, this is planned to be removed. - The duration of the buffer can be adjusted using Slate.SleepBufferPostInput cvar (defaults to 1.0f) - The FCurveSequence API has been updated to work with the active tick system - Playing a curve sequence now requires that you pass the widget being animated by the sequence - The active tick will automatically be registered on behalf of the widget and unregister when the sequence is complete - GetLerpLooping() has been removed. Instead, pass true as the second param to Play() to indicate that the animation will loop. This causes the active tick to be registered indefinitely until paused or jumped to the start/end. [CL 2391669 by Dan Hertzka in Main branch]
2014-12-17 16:07:57 -05:00
.Padding( ColumnItemPadding )
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3279756) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3229490 on 2016/12/09 by Cody.Albert Integrated fix to support named changelists in SVN Change 3229574 on 2016/12/09 by Simon.Tourangeau Fix actor mobility getting changed on scene reimport #jira UE-39102 Change 3229692 on 2016/12/09 by Cody.Albert Fixing an XML Parser assert when parsing a root tag that completes on the same line. #jira UE-30393 Change 3230582 on 2016/12/12 by Matt.Kuhlenschmidt PR #3024: Correct the outdated error message instructions for how to fix being unable to launch on an iOS device. (Contributed by CleanCut) Change 3231470 on 2016/12/12 by Matt.Kuhlenschmidt Eliminate editor sounds that play when you PIE, simulate or possess the player. They get in the way of game sounds, are annoying to hear when you are constantly starting and stopping pie, and flush async loading that the game might be doing when they load. Change 3231475 on 2016/12/12 by Alex.Delesky #jira UE-39023 - Using the High Resolution screenshot tool with the "custom depth as mask" option checked should no longer crash the editor or a PIE viewport when the screen percentage is not set to 100. Change 3231476 on 2016/12/12 by Alex.Delesky #jira UE-39380 - Thumbnails for static meshes in the foliage paint mode window should now update to show the correct mesh if the thumbnail pool has been exhausted. This also increases the number of foliage thumbnals that can exist onscreen at once. Change 3231477 on 2016/12/12 by Alex.Delesky #jira none - Extending the IPluginWizardDefinition interface to allow it to return the descriptor type of the plugin. This fixes a merge conflict from Odin where the new plugin wizard was modified to allow for multiple template selection. Change 3231479 on 2016/12/12 by Alex.Delesky #jira UE-39376 - Changing the number of players or changing the dedicated server options in PIE settings should now always persist on editor shutdown. Change 3231480 on 2016/12/12 by Alex.Delesky #jira UE-39417 - A texture will now match to update a dropped in file if the source path differs from that of the dropped in file Change 3231508 on 2016/12/12 by Alex.Delesky Removing todo comment #jira none Change 3231603 on 2016/12/12 by Matt.Kuhlenschmidt Exposed a 0-1 UV set and the scaled pixel size for Box and Border brushes Also added a material function that exposes all of the current UV sets with nice names instead of indexed coordinates Change 3231618 on 2016/12/12 by Alex.Delesky #jira UE-38732 - When editing a spin box with a delta value, committing the value with the Enter key and then clearing the focus from the spin box will no longer change the internal value to match the snapped value. Change 3231638 on 2016/12/12 by Matt.Kuhlenschmidt Add RF_Transactional to the list of default flags for creating or importing new assets. All should be transactional by default Change 3231642 on 2016/12/12 by Matt.Kuhlenschmidt Brighten up the output log by default Change 3231648 on 2016/12/12 by Alex.Delesky #jira UE-38033 - Selecting a Named Slot that's part of a widget in a Widget Switcher will now show that widget instead of the widget at index 0. This also applies to any content set inside the named slot. Change 3231666 on 2016/12/12 by Alex.Delesky #jira UE-38952 - Widgets that have been copied and pasted into the same hierarchy will now retain the same name in the hierarchy. This does not fix widgets that have been previously copied and pasted from other widgets, nor copies of those widgets. Change 3231674 on 2016/12/12 by Alex.Delesky #jira UE-37106 - When using or simulating touch for Widget Components, the hover/clicked state will now be accurately determined rather than showing hover on initial touch. Change 3231745 on 2016/12/12 by Alex.Delesky Back out changelist 3231477 to fix build error C2259 Change 3232417 on 2016/12/13 by Simon.Tourangeau Add the following attributes to the Editor.Usage.FBX.Import EngineAnalytics event - FBX Version - Filename Hash - Import Type #jira UE-37453 Change 3232477 on 2016/12/13 by Michael.Dupuis #jira UE-39675 : There was an issue when the Neutral Value == the Min or Max value, so we simply prevent using the concept of neutral value if min or max == neutral as it mean you only want a log on one side. Change 3232571 on 2016/12/13 by Alex.Delesky Back out changelist 3231745 #jira none - Extending the IPluginWizardDefinition interface to allow it to return the descriptor type of the plugin. This fixes a merge conflict from Odin where the new plugin wizard was modified to allow for multiple template selection. Change 3232675 on 2016/12/13 by Alexis.Matte Fix a crash when reordering material with a fbx containing unused materials, add a fbx automation test to prevent similar issue. #jira UE-39692 Change 3232975 on 2016/12/13 by Alex.Delesky Fix to build error C2259 for the IPluginWizardDefinition API change. Change 3233146 on 2016/12/13 by Michael.Dupuis #jira UE-38766 : Added eye dropper to select flatten height Fixed a rounding errors resulting in not flattening to the specified height Fixed a rounding error resulting in LandscapeDataAccess::GetTexHeight not always returning the appropriate value Change 3233153 on 2016/12/13 by Alexis.Matte We cannot anymore change the instance override materials array topology, the topology is limited by the mesh materials array #jira UE-38827 Change 3234406 on 2016/12/14 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3234485 on 2016/12/14 by Michael.Dupuis tentative build fix for Mac Change 3234495 on 2016/12/14 by Matt.Kuhlenschmidt Made a setting to control if PIE enter and exit sounds are played. Off by default Change 3236709 on 2016/12/15 by Simon.Tourangeau Fix camera export rotation offset #jira UE-34692 #jira UE-39740 Change 3236782 on 2016/12/15 by Jamie.Dale Fixed EmitTermExpr failing to use the correct package ID FBPTerminal::Source used to be set to the pin, however when pins were moved away from being UObjects, FBPTerminal::SourcePin was added and FBPTerminal::Source is typically null. Change 3236853 on 2016/12/15 by Alexis.Matte Fix the serialization of the staticmesh property FMeshSectionInfoMap Change 3236890 on 2016/12/15 by Matt.Kuhlenschmidt Remove old define Change 3239328 on 2016/12/18 by Richard.TalbotWatkin Fixed Focus Viewport action in Static Mesh Viewport. Problem was that the conversion to Orbit Camera for storing the camera position was trashing the desired position during cvamera transitions. Orbit camera position is now only stored at the end of a transition. #jira UE-39825 - Key "F" for Focus acts Sporadically in the Static Mesh Editor Viewport Change 3239660 on 2016/12/19 by Alex.Delesky #jira UE-38968, UE-36826 - Components attached to actors can now be directly scaled to negative values using the transform gizmo for that component. Change 3239662 on 2016/12/19 by Alex.Delesky #jira UE-39007 - The data table row editor now contains a Reset to Default control. Change 3239663 on 2016/12/19 by Alex.Delesky #jira UE-39698 - Importing CSV files will now show the name of the file in the import dialog. Change 3240696 on 2016/12/20 by Michael.Dupuis #jira UETOOL-1009: Added paddiing to columns view Added auto resize of column when double clicking on splitter handle in the header Remove right number alignment after discussion with Matt K. Change 3240758 on 2016/12/20 by Michael.Dupuis added missing non abstract implementation Change 3240782 on 2016/12/20 by Michael.Dupuis Added missing documentation for content browser column auto resizing Change 3240817 on 2016/12/20 by Alex.Delesky #jira UE-38940 - Copying a Material-Custom node with a tab character should now correctly render the tab. Change 3240834 on 2016/12/20 by Michael.Dupuis tentative fix for build error Change 3240984 on 2016/12/20 by Michael.Dupuis Removed unnecessary functions Change 3241174 on 2016/12/20 by Matt.Kuhlenschmidt Fix compile errors Change 3241966 on 2016/12/21 by Chris.Wood Fixed Typo and changed execution order in "ComboBoxString" Component [UE-38994] - GitHub 2971 : Fixed Typo and changed execution order in "ComboBoxString" Component PR #2971: Fixed Typo and changed execution order in "ComboBoxString" Component (Contributed by eXifreXi) #github https://github.com/EpicGames/UnrealEngine/pull/2971 Change 3242126 on 2016/12/21 by Alexis.Matte Back out changelist 3236853 We have to back out this change list because the change was implement in the 4.15 release branch and the EditorObjectVersion.h change is now implement in the ReleaseObjectVersion.h. Change 3244492 on 2017/01/02 by Jamie.Dale Improved error message Change 3244545 on 2017/01/02 by Nick.Darnell Navigation - Making it so we don't attempt to load HotReload during shutdown, we only access it if it's still loaded. Change 3244549 on 2017/01/02 by Nick.Darnell Slate - Implementing custom hardware cursor loading across Windows, Mac and Linux and supports loading cursors from PAK files. All platforms support loading PNGs through the FHardwareCursor interface. Some platforms support additional formats, for multiresolution support, but there's a naming convention that can be used on PNGs for the same capability. All of it is documented in the FHardwareCursor header. The platform layer for ICursor, now has support for replacing cursor shapes as an override, and can be reset safely. The FHardwareCursor supports loading cursors from raw pixel buffers as well, the plan is to allow for the option to UTextures to also be used for hardware cursors. Now users through C++ can load and replace the hardware cursors with custom ones of their own, e.g. FSlateApplication::Get().RegisterCursor(EMouseCursor::Default, MakeShareable(new FHardwareCursor(FPaths::GameContentDir() / "Slate/FancyPointer", FIntPoint(0,0)))); The next step is to expose a game friendly layer that supports caching cursors, and letting users change them out by name, without a bunch of destruction of OS resources. Change 3244845 on 2017/01/03 by Jamie.Dale Fixing typo #jira UE-39920 Change 3244903 on 2017/01/03 by Jamie.Dale PR #3044: fix link error when FAssetData::PrintAssetData() is used in project (Contributed by kayama-shift) Change 3245125 on 2017/01/03 by Alexis.Matte Put back the dev-editor version because there was some data create before we back it out Change 3246106 on 2017/01/04 by Chris.Wood Removed broken CrashReportReciever pre-upload phase from CrashReportClient. [UE-40153] - CrashReportClient fails when used in legacy mode with a CrashReportReciever Change 3246251 on 2017/01/04 by Alex.Delesky #jira UE-39869 - Moving an asset before saving it and then hitting Save All from the file menu will no longer save the asset in its original location. Change 3246252 on 2017/01/04 by Alex.Delesky #jira UE-39793 - Fixes an issue with the AutoReimporter where specifying a non-existent mount point (a directory in the content browser) would cause a crash when attempting to auto-import an asset from a monitored directory, as well as ensuring that valid mount points will be able to create new assets from auto-import. The "Map Directory To" field when setting directories to monitor for auto-reimport has also been changed to use the content browser path picker instead of relying on the user to manually enter a mount point. Change 3247620 on 2017/01/05 by Nick.Darnell Automation - Removing an adjustment to the number of shots we take for high res shots. Change 3247621 on 2017/01/05 by Nick.Darnell Automation - Adding a few more rendering tests to the cornell box. Change 3247629 on 2017/01/05 by Nick.Darnell Automation - Improving the comparison row display for screenshots so it's obvious what each image represents. Change 3248811 on 2017/01/05 by Matt.Kuhlenschmidt PR #3091: Removed unnecessary UPackage casts (Contributed by projectgheist) Change 3248860 on 2017/01/06 by Matt.Kuhlenschmidt Made the plugin browser select the "built in" category by default instead of the 2D category. There is no reason for a sub-category to be selected first as it makes searching for plugins globally an extra click because you have to click on the base category first Change 3249264 on 2017/01/06 by Matt.Kuhlenschmidt Fixed automation test warnings #jira UE-40198 Change 3249481 on 2017/01/06 by Michael.Dupuis #jira UE-37875 : Fill empty layers of components on assignation or creation Also fill new component added with the tool from neighbours predominance Change 3249505 on 2017/01/06 by Matt.Kuhlenschmidt PR #3093: Include guard cleanup (Contributed by projectgheist) Change 3249544 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3250738 on 2017/01/09 by Nick.Darnell UMG - The WIC now checks if the Widget is enabled before it claims that it's over an interactable or keyboard focusable widget. #jira UE-39845 Change 3250865 on 2017/01/09 by Nick.Darnell Slate - Updating EAutoCenter and ESizingRule to use the newer enum class style enums. Change 3250867 on 2017/01/09 by Nick.Darnell Slate - Adding more logging to the hardware cursor code so that it reports more information when it doesn't find an exact match when it comes to cursor size. Change 3250936 on 2017/01/09 by Nick.Darnell Automation - Refactoring the screenshot comparison tool to no longer require one one generated report. Doing screenshot comparions now generates individual reports for each failed comparison so that they can be evaluated in bits, and as changes occur as the user reviews aspects, we can remove the reports. There is now async image loading for the comparison view so that it doesn't hitch. Change 3250937 on 2017/01/09 by Nick.Darnell Automation - Adding another example to the CornellBox test. Change 3250958 on 2017/01/09 by Nick.Darnell Slate - Fixing some other cases where people were referring to ESizingRule::Type. Change 3251162 on 2017/01/09 by Nick.Darnell Slate - Fixing some other cases where people were referring to ESizingRule::Type. Change 3251254 on 2017/01/09 by Matt.Kuhlenschmidt Attempt to fix static analysis warnings Change 3251373 on 2017/01/09 by Nick.Darnell Core - Now writing a log warning instead of ensuring if calling LoadModule wouldn't have been safe to do here, depending on load order. Change 3251525 on 2017/01/09 by Nick.Darnell Automation - Fixing a build issue in ImageComparer. Change 3252321 on 2017/01/10 by Alex.Delesky #jira UE-40164 - Importing multiple files to overwrite existing assets such as sounds will now correctly persist the "Yes to All" / "No to All" dialog selections. Change 3252354 on 2017/01/10 by Nick.Darnell Image Compare - Fixing a potential threading hazard in the image comparer. Change 3252356 on 2017/01/10 by Nick.Darnell Automation - The screenshot metadata now captures the commit/CL that the screenshot was taken at and records it in the metadata. Change 3252601 on 2017/01/10 by Alexis.Matte Fbx automation test, reload feature implementation Change 3252761 on 2017/01/10 by Jamie.Dale Fixing some IWYU errors with PCH disabled Change 3252765 on 2017/01/10 by Jamie.Dale Fixing some static analysis warnings Change 3252793 on 2017/01/10 by Jamie.Dale Fixing FText natvis The text data visualizers have to be defined before the text visualizer Change 3253987 on 2017/01/11 by Matt.Kuhlenschmidt PR #3108: Git Plugin: use asynchronous "MarkForAdd" and "CheckIn" operations for the initial commit (Contributed by SRombauts) Change 3254378 on 2017/01/11 by Matt.Kuhlenschmidt Refactor scene importing to allow for plugins to make scene importers Change 3254679 on 2017/01/11 by Matt.Kuhlenschmidt Fix calling LoadModule in perforce source control off the main thread Change 3256472 on 2017/01/12 by Jamie.Dale Improved error reporting from IncludeTool - The error reporting was using zero-based line indices which was misleading. - The error reporting now includes the offending line to remove ambiguity. Change 3256725 on 2017/01/13 by Jamie.Dale IncludeTool can now parse typedef in Fwd headers Change 3256758 on 2017/01/13 by Jamie.Dale Added support for String Tables String Tables provide a way to centralize your localized text into one (or several) known locations, and then reference the entries within a string table from other assets or code in a robust way that allows for easy re-use of localized text. String Tables can be defined in C++ (using the LOCTABLE family of macros), loaded via CSV file, or created as an asset. They can be referenced in C++ using either the LOCTABLE macro, or the static FText::FromStringTable function. INI files can reference them using the LOCTABLE macro syntax, and FText properties in assets can reference them via the advanced settings combo. Change 3257018 on 2017/01/13 by Alexis.Matte FbxAutomationTest fix the import reload operation, it was calling garbagecollect with no keep flag Change 3257168 on 2017/01/13 by Jamie.Dale Removed code that was writing null into bytecode during save Change 3257344 on 2017/01/13 by Jamie.Dale Backing out changelist 3256725, and excluding my header from the scan instead Change 3257426 on 2017/01/13 by Nick.Darnell Slate - Adding the ability to invert alpha when drawing slate textures. Going to be used in the future for rendering render targets for the scene which have inverted alpha. Change 3257572 on 2017/01/13 by Nick.Darnell Slate - Fixing a build error. Change 3257970 on 2017/01/14 by Jamie.Dale Fixing exclude path Change 3258458 on 2017/01/16 by Matt.Kuhlenschmidt PR #3135: GameViewportClient: FOnCloseRequested is now a multicast delegate (Contributed by Nadrin) Change 3258472 on 2017/01/16 by Matt.Kuhlenschmidt PR #3126: Fix to load editor style assets (Contributed by projectgheist) Change 3258473 on 2017/01/16 by Matt.Kuhlenschmidt PR #3124: Fix wrong result with Image-DrawAsBox with PaperSprite. (Contributed by valval88) Change 3258539 on 2017/01/16 by Nick.Darnell Slate - Pixel Snapping has been moved to the GPU for the RHI rendering policy. Additionally, widgets with a render transform of Scale, Rotation or Sheer, and their children are no longer pixel snapped, this should reduce some of jittering seen by users when animations are applied to widgets. NOTE: This only affects render transforms, any transform in layout space is still subject to pixel snapping. Change 3258607 on 2017/01/16 by Nick.Darnell Fixing the mac build. Change 3258661 on 2017/01/16 by Matt.Kuhlenschmidt Actors with experimental components no longer say "Uses experimental class: Actor" when selecting the actor root in the details panel #jira UE-40535 Change 3258678 on 2017/01/16 by Nick.Darnell Platform - Introducing a way to get the mimetype for a file on Windows. Other platforms don't yet have an implementation outside of returning application/unknown. Change 3258924 on 2017/01/16 by Nick.Darnell Platform - Implementing a fallback for the generic platform http, that can do some basic mimetype lookups. Change 3258929 on 2017/01/16 by Nick.Darnell UMG - Fixing the animation to finish the evaluation before it notifies that the animation completed. Change 3259109 on 2017/01/16 by Nick.Darnell Platform - The GetMimeType function now only takes in FilePath, since some platforms will require that actually resolve to a file on disk in order to determine the true mimetype. Change 3259111 on 2017/01/16 by Alexis.Matte Avoid to move the camera when we re-import in the static mesh editor #jira UE-40613 Change 3259275 on 2017/01/16 by Matt.Kuhlenschmidt Fix crash when a slate window is resized and calls into a scene viewport during loading code when the scene viewport is not in a slate hierarchy and thus has no widget Change 3259300 on 2017/01/16 by Nick.Darnell UMG - Introducing PreConstruct and NativePreConstruct to the base UUserWidget. Users can now visualize non-binding based changes in the designer by evaluating a very limited amount of the blueprint code. In the event your user widget crashes on load, due to calling something unsafe, you can disable evaluation in the editor preferences under Widget Designer. Change 3259306 on 2017/01/16 by Nick.Darnell Games - Removing the Game Specific implementations of PreConstruct. Change 3260182 on 2017/01/17 by Matt.Kuhlenschmidt Fix static analysis Change 3261049 on 2017/01/17 by Nick.Darnell Slate - Putting in some fixes for the non-gpu pixel snapping mode, and disabling gpu snapping while we dig into why it looks weird. Change 3261434 on 2017/01/17 by Nick.Darnell Fixing the mac build. Change 3261435 on 2017/01/17 by Nick.Darnell Slate - Tweaking some aspects of the slate rounding code on the GPU. There's still some precision loss somewhere causing subtle differences in where the snap occurs, that's different from previously. Change 3261460 on 2017/01/17 by Nick.Darnell UMG - Tweaking the defintiions of NativePreConstruct, dropping passing in design time since that is readily available in native code. Change 3261833 on 2017/01/18 by Alexis.Matte Fix all warning for fbx automation tests #jira UE-40208 Change 3261874 on 2017/01/18 by Matt.Kuhlenschmidt PR #3136: Fix Submit to Source Control Window for Git plugin : use CanCheckIn() to filter out unmodified assets files (Contributed by SRombauts) Change 3262000 on 2017/01/18 by Jamie.Dale Updated Slate to allocate widgets using MakeShared This saves one allocation per-widget Change 3262003 on 2017/01/18 by Nick.Darnell UMG - Widget Interaction Components now ignore Visible(false) Widget Components when tracing. #jira UE-40523 Change 3262052 on 2017/01/18 by Alexis.Matte Put back the staticmesh skinxx workflow #jira UE-40782 Change 3262775 on 2017/01/18 by Nick.Darnell Slate - Ditching moving vertex rounding to the GPU, some precision issues could not be overcome. Ended up writing a clean way to implement it on the CPU. Change 3262818 on 2017/01/18 by Alex.Delesky #jira UE-40668 - Editor preferences will now save for data pin styles Change 3263679 on 2017/01/19 by Nick.Darnell Slate - Adding some comments to the Slate Vertex Rounder. Change 3265154 on 2017/01/19 by Nick.Darnell Slate/UMG - Putting in some more time into pixel snapping. I've re-introduced the old constructors, and decided to go with the templated approach, as to not break old code that relied on the FSlateVertex working a certain way. Change 3265478 on 2017/01/20 by Chris.Wood Added config support for hang detection time and switching hang detection on/off in UnrealWatchdog [UE-40838] - Make hang time configurable and increase default in UnrealWatchdog Change 3265600 on 2017/01/20 by Nick.Darnell Slate - Making some const local variables const. Change 3265714 on 2017/01/20 by Alex.Delesky #jira UE-40791 - The ForceFeedback thumbnail's Play and Stop icons will now render correctly, and will only be visible while an effect is playing or when the cursor hovers over the icon. Change 3265865 on 2017/01/20 by Alex.Delesky #jira UE-40511 - The Content Browser file path will now update when inside a folder that is deleted from the Sources Panel. Change 3267989 on 2017/01/23 by Jamie.Dale Exposed String Tables to Blueprints Change 3268018 on 2017/01/23 by Jamie.Dale Small API clean-up for string tables Change 3268455 on 2017/01/23 by Matt.Kuhlenschmidt Fix SaveAs (Which says SaveCurrentAs) not saving the current level and only saving the persistent level and then reloading everything thus causing work to be lost if editing a sub-level #jira UE-40930 Change 3269388 on 2017/01/24 by Chris.Wood Refactored tick timing in UnrealWatchdog to stop bug where it doesn't close. [UE-40839] - UnrealWatchdog running and blocking use of Unreal Game Sync for internal users Standalone tool code only - doesn't touch engine Change 3270205 on 2017/01/24 by Cody.Albert Updated FUnrealEdMisc::OnMessageTokenActivated to properly traverse up the outer hierarchy of an object. Change 3270231 on 2017/01/24 by Cody.Albert Renamed and exposed GetFullScreenAlignment and GetViewportAnchors for consistency with the setters Change 3271734 on 2017/01/25 by Michael.Dupuis #jira UE-38631 Add sorting for landscape target layer, user can now sort alphabetical, material based or custom Added a new vertical box SDragNDropVerticalBox to handle drag & drop of FSlot Fixed SDropTarget to only consider the drop action if it was started by it Added visibility toggle to only show used layers in the currently loaded data Change 3271797 on 2017/01/25 by Jamie.Dale Renamed HasBeenAlreadyMadeSharable to DoesSharedInstanceExist as the old name was nonsense Change 3271813 on 2017/01/25 by Jamie.Dale Fixed bad access of a shared this during widget destruction when a context menu was open Change 3271988 on 2017/01/25 by Nick.Darnell Slate - Removing some old checkbox deprecated code from the 4.3 and 4.6 days. Change 3271992 on 2017/01/25 by Nick.Darnell Blueprints - Making the checked call better to log out more information when dragging and dropping a missing property. Change 3272134 on 2017/01/25 by Jamie.Dale Updated the GatherText commandlet to no longer hold a ConfigFile pointer while it runs This pointer is internal to GConfig, and may be updated (or invalidated) when other config files are loaded (as can happen via game code while gathering text). Change 3272301 on 2017/01/25 by Nick.Darnell Slate - More cleanup from the removal of a old legacy enum that people were still using. Change 3273070 on 2017/01/26 by Chris.Wood Fix CIS errors in landscape code from CL 3271734 Change 3273123 on 2017/01/26 by Chris.Wood Fix crash during init of CRC when running packaged without access to main engine config hierarchy. Change 3273194 on 2017/01/26 by Nick.Darnell Fixing some build warnings. Change 3273242 on 2017/01/26 by Michael.Dupuis #jira UE-39948 : if we detect there is multiple levels in the current persistent when we add a new foliage asset we ask to save the foliage as an asset to permit paiting over multiple levels Change 3273279 on 2017/01/26 by Jamie.Dale String Table INI redirects are now in the "Core.StringTable" section (rather than "/Script/Engine.Engine") Change 3273483 on 2017/01/26 by Alex.Delesky #jira UE-32047 - Made changes to the FixupRedirects commandlet to ensure that files that are marked for delete are moved from the default changelist to the pending changelist and submitted when using Perforce. Also makes a slight change to the ResavePackages commandlet to submit files marked for delete. Change 3273568 on 2017/01/26 by Alex.Delesky Modifying changes made to SPluginWizard to have the plugin loading phase determined by the wizard's definition rather than from the first selected template. #jira none Change 3273855 on 2017/01/26 by Alex.Delesky #jira UE-41117 - Updating the tooltip on the "Allow Paint of all LODs" option for mesh paint mode. Change 3274200 on 2017/01/26 by Alex.Delesky For IPluginWizardDefinition, temporarily adding function bodies to two methods instead of having them be pure virtual methods. Change 3274317 on 2017/01/26 by Jamie.Dale Deleting a seemingly corrupted asset that was accidentially submitted Change 3275072 on 2017/01/27 by Michael.Dupuis #jira UE-38631 tweaks Fix typo error Iterate all components, not only active one Force expand the Target Layers widget Change 3275249 on 2017/01/27 by Alexis.Matte Color grading controls: Keep the vector ratio when changing the master slider #jira UETOOL-1098 Change 3275282 on 2017/01/27 by Alexis.Matte Color grading controls: Cosmetic changes #jira UETOOL-1099 Change 3275292 on 2017/01/27 by Alexis.Matte Make sure the build is called once when we import a staticmesh. #jira UE-40947 Change 3275430 on 2017/01/27 by Alexis.Matte Add some fbx automation tests - Import a mesh with no material - Import corrupted asset with no section in a LOD - Import morph targets - Materials name clash - Max Multimap material ordering Change 3275683 on 2017/01/27 by Michael.Dupuis #jira UE-41215 : when saving an asset do not register the transaction, and make sure that the duplicate wont keep a copy in the transaction buffer as an asset can't be undo Change 3276237 on 2017/01/27 by Jamie.Dale Deleting a seemingly corrupted asset that was accidentially submitted Change 3276266 on 2017/01/27 by Jamie.Dale Fix for accessing a potentially null pointer Change 3277065 on 2017/01/30 by Chris.Wood Move crash report temp files to saved config and cleanup on schedule. [UE-39506] - CrashReportClient ini folders are not cleaned when opening the editor Change 3277236 on 2017/01/30 by Matt.Kuhlenschmidt Fix crash when cancelling SaveCurrentLevelAs #jira UE-41182 Change 3277409 on 2017/01/30 by Jamie.Dale Improved text rendering when the last resort font is missing The last resort font is no longer included in shipping builds, so this change makes some improvements to text rendering when it's missing. - The legacy font cache no longer tries to use the last resort font if it's not available (preventing warnings). - The Slate font renderer no longer tries to use the last resort font if it's not available. - Text shaping will use the last resort character if none of the available fonts can render a given character (likely because the last resort font is missing). - HarfBuzz shaped text now uses the fallback character correctly. Change 3277749 on 2017/01/30 by Nick.Darnell Slate - Moving ESlateDrawEffect & ESlateBatchDrawFlag over to be enum class, found cases where users were improperly assuming the enum order, and so now it won't be possible to just treat an int32 or a bool as the draw effect value. Core - Adding EnumHasAllFlags and EnumHasAnyFlags, templated functions to make it easier to check for the existance of a flag on enum classes. Change 3277805 on 2017/01/30 by Nick.Darnell Rendering - Changing some LoadModuleChecked calls to GetModuleChecked, as these calls are not happening on the main thread and are not safe to make. Change 3277914 on 2017/01/30 by Matt.Kuhlenschmidt Fix Niagara slate style warning on startup Change 3278058 on 2017/01/30 by Matt.Kuhlenschmidt Fixed compile error Change 3278132 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278133 on 2017/01/30 by Matt.Kuhlenschmidt Fixed compile errors Change 3278186 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278525 on 2017/01/30 by Nick.Darnell Fixed compile error Change 3278534 on 2017/01/30 by Nick.Darnell Automation - Clearing up several warnings/errors with automation results, trying to get Automation Tests to at least yellow before integration. Change 3278941 on 2017/01/31 by Nick.Darnell Fixing a build warning due to build team refactor. Change 3278949 on 2017/01/31 by Nick.Darnell Fixing incrmenetal build issues. Change 3278953 on 2017/01/31 by Nick.Darnell Fixing some incrmental linux build issues. Change 3278964 on 2017/01/31 by Nick.Darnell FIxing more incremental build issues. Change 3279256 on 2017/01/31 by Michael.Dupuis #jira UE-41319 #jira UE-41315 #jira UE-41316 Instead of getting the Landscape Actor, call GetLandscapeProxy so all case are handled, either proxy or landscape actor Change 3279270 on 2017/01/31 by Chad.Garyet re-updating the automation test pool [CL 3279775 by Matt Kuhlenschmidt in Main branch]
2017-01-31 15:22:49 -05:00
.VAlign(VAlign_Center)
.HAlign(HAlign_Left)
[
Content.ToSharedRef()
];
}
END_SLATE_FUNCTION_BUILD_OPTIMIZATION
void SAssetColumnItem::OnAssetDataChanged()
{
SAssetViewItem::OnAssetDataChanged();
if ( ClassText.IsValid() )
{
ClassText->SetText( GetAssetClassText() );
}
if ( PathText.IsValid() )
{
PathText->SetText( GetAssetPathText() );
}
}
FString SAssetColumnItem::GetAssetNameToolTipText() const
{
if ( AssetItem.IsValid() )
{
if(AssetItem->GetType() == EAssetItemType::Folder)
{
FString Result = StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderName.ToString();
Result += TEXT("\n");
Result += LOCTEXT("FolderName", "Folder").ToString();
return Result;
}
else
{
const FString AssetName = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.AssetName.ToString();
const FString AssetType = StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.AssetClass.ToString();
FString Result = AssetName;
Result += TEXT("\n");
Result += AssetType;
return Result;
}
}
else
{
return FString();
}
}
FText SAssetColumnItem::GetAssetPathText() const
{
if ( AssetItem.IsValid() )
{
if(AssetItem->GetType() != EAssetItemType::Folder)
{
return FText::FromName(StaticCastSharedPtr<FAssetViewAsset>(AssetItem)->Data.PackagePath);
}
else
{
return FText::FromString(StaticCastSharedPtr<FAssetViewFolder>(AssetItem)->FolderPath);
}
}
else
{
return FText();
}
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3358467) #rb none #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3297108 on 2017/02/10 by Mieszko.Zielinski Added AISight's peripherial vision angle claming as well as marked up UI to not allow values from outside of [0,180] range #UE4 #jira UE-41114 Change 3299467 on 2017/02/13 by Marc.Audy Don't try to update active sounds on audio thread if the audio component is not active. If these functions are callled from a constructor on an async loading thread it can cause a crash Change 3300692 on 2017/02/13 by Marc.Audy no auto Change 3301424 on 2017/02/14 by Marc.Audy Handle gateway expansion before the node matching loop #jira UE-41858 Change 3301547 on 2017/02/14 by Marc.Audy PR #3246: Added BindDelegate that supports functions with custom (static) arguments (Contributed by PhoenixBlack) #jira UE-41926 Change 3301557 on 2017/02/14 by Marc.Audy When passing null to Rename for the new name, maintain the OldName is possible #jira UE-41937 Change 3301676 on 2017/02/14 by Marc.Audy Fix pending occlusion async traces from crashing during shutdown #jira UE-41939 Change 3302705 on 2017/02/14 by Mieszko.Zielinski Removed 'PRAGMA_DISABLE_OPTIMIZATION' uccurences from AIModule #UE4 Change 3302898 on 2017/02/14 by Dan.Oconnor Fix double negative Change 3302954 on 2017/02/14 by Dan.Oconnor Make sure we use a good version of the class Change 3302977 on 2017/02/14 by Dan.Oconnor Optimization in reinstancer turned back on - 3302898 has fixed the regression Change 3302984 on 2017/02/14 by Dan.Oconnor Relink classes that were not recompiled in a wave of the compilation manager - currently only happens for data only blueprints. This fixes issues in Odin when using the compilation manager Change 3303824 on 2017/02/15 by Richard.Hinckley Updating URL for FABRIK system information. Change 3304284 on 2017/02/15 by Dan.Oconnor Build fix Change 3304297 on 2017/02/15 by Dan.Oconnor Shadow variable fix Change 3304465 on 2017/02/15 by Lukasz.Furman fixed handling pathfollowing's requests by FloatingPawnMovement #jira UE-41884 Change 3305031 on 2017/02/15 by Marc.Audy All objects should get PostLoadSubobjects calls, regardless of whether they are outered to a CDO or not #jira UE-41708 Change 3305505 on 2017/02/15 by Michael.Noland Blueprints: Fix a crash when opening a BP with a parent class that no longer exists (unguarded access to the parent class) Change 3305506 on 2017/02/15 by Michael.Noland QAGame: Created some assets that reference a non-existent type to test 'gracefully' handling missing native class types Change 3306091 on 2017/02/16 by Marc.Audy PR #3263: Fixed duplicate comment from OnAudioFinished (Contributed by FrostByteGER) #jira UE-42027 Change 3306574 on 2017/02/16 by Marc.Audy Linked To pins can belong to invalid nodes and fail to load, this shouldn't be considered fatal Change 3307160 on 2017/02/16 by Marc.Audy Rename(null, null ... is sometimes used to just force a name out of the way, so in that case don't try and maintain old name. Change 3307982 on 2017/02/16 by Michael.Noland QAGame: Added another test asset for missing classes (this time a missing node class placed in a BP) Change 3308097 on 2017/02/16 by Michael.Noland Graph Editor: Instantly clear GraphNodeForMenu and GraphPinForMenu as soon as the menu is dismissed, fixing crashes and other odd issues after deleting pins #jira UE-41789 Change 3308303 on 2017/02/16 by Dan.Oconnor Make sure we don't call GetDefaultObject while compiling on a non-native class Change 3308850 on 2017/02/17 by Mieszko.Zielinski Fully exposed NavModifierVolume as ENGINE_API #UE4 Change 3309624 on 2017/02/17 by Phillip.Kavan [UE-40443] Recursively emit ctor initialization code for nested default subobjects when nativizing a Blueprint class. change summary: - modified FEmitDefaultValueHelper::OuterGenerate() to recursively detect and handle nested default subobjects. #jira UE-40443 Change 3310475 on 2017/02/17 by Dan.Oconnor Split bluepint compilation into CompileClassLayout and CompileFunctions, fix class hierarchy after creating reinstancers in blueprintcompilation manager. Together this means we don't need to run RecompileBlueprintBytecode Change 3310487 on 2017/02/17 by Dan.Oconnor Fix build error missed by preflgiht Change 3310497 on 2017/02/17 by Dan.Oconnor More build fixes for things missed by preflight... Change 3310635 on 2017/02/17 by Dan.Oconnor Remove unused parameter and add comment to blueprint compilation manager explaining abuse of bBeingCompiled Change 3310639 on 2017/02/17 by Dan.Oconnor Shadow variable fixes, not sure why these are being detected now Change 3311855 on 2017/02/20 by Marc.Audy Fix UChildActorComponent::ParentComponent being null on the client #jira UE-42140 Change 3312444 on 2017/02/20 by Marc.Audy Add a bAutoDestroy pin to BP Spawn Sound and Force Feedback nodes to allow users to reuse the created component #jira UE-41267 Change 3312691 on 2017/02/20 by mason.seay Deleting map now that bug has been fixed Change 3312709 on 2017/02/20 by Phillip.Kavan [UE-39705] Fix broken collision shapes when cooking with optimized BP component data option. change summary: - modified FComponentInstancingDataUtils::RecursivePropertyGather() to exclude deprecated properties, since they won't be serialized on save. - modified FBlueprintCookedComponentInstancingData::LoadCachedPropertyDataForSerialization() to remove the PPF_UseDeprecatedProperties flag (these are no longer included in the delta). - modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to remove the PPF_UseDeprecatedProperties flag (was being incorrectly used here). - modified AActor::CreateComponentFromTemplateData() to remove the PPF_UseDeprecatedProperties flag (was being incorrectly used here; this caused deprecated property defaults to be copied out to the instance). - modified AActor::CreateComponentFromTemplateData() to append RF_PostLoad/RF_NeedPostLoadSubobjects and call PostDuplicate()/ConditionalPostLoad() on the new instance (needed to mirror what SDO does in the unoptimized case - for proper physics RB setup specifically, but may be other areas where that's needed). #jira UE-39705 Change 3313161 on 2017/02/20 by Mieszko.Zielinski PR #3272: Use Pawn for GetNavAgentPropertiesRef(). (Contributed by drelidan7) Change 3314151 on 2017/02/21 by Mieszko.Zielinski fix to hlods complaining about missing nav collision in cooked builds #UE4 Made sure hlod-generated StaticMeshes are marked as not having navigation data #jira UE-42034 Change 3314355 on 2017/02/21 by Marc.Audy Set error message back to be correctly about mobility #jira UE-42209 Change 3314566 on 2017/02/21 by Phillip.Kavan [UE-40801] Switch to an ensure() to potentially help diagnose a one-off assertion crash in the SCS editor if encountered again in a future release. #jira UE-40801 Change 3315459 on 2017/02/21 by Mike.Beach Updated marquee selection in graph editors. Ctrl dragging now inverts nodes' selection state (not only deselects them - holding alt is now for only deselection). #jira UE-16359 Change 3315546 on 2017/02/21 by Mike.Beach Mirroring CL 3294552 Count "GeneratedStub" as a success for cooked file generation - ensures the saved asset gets recorded in the asset registry. #jira ODIN-5869 Change 3315554 on 2017/02/21 by Mike.Beach Do not generate NativizedAsset plugin files if no Blueprints were nativized (cut down on mod generate/cook time). #jira ODIN-6211 Change 3317225 on 2017/02/22 by mason.seay Enable Net Use Owner Frequency on blueprints. This allows the client to use different weapons. Doesn't fix UE-42017 though. Change 3317495 on 2017/02/22 by Marc.Audy Expose raw input device configurations to other modules by request #jira UE-42204 Change 3319966 on 2017/02/23 by Nick.Atamas Polished up the material reroute node: - Removed some unnecessary widgets - Centered the pin node Change 3320099 on 2017/02/23 by Mike.Beach Guarding against passing self pins to referance parameters (it is not a property that is referencable, and would crash). Notifying the user through pin connection messages, and providing a script exception. #jira UE-40861 Change 3321227 on 2017/02/24 by Marc.Audy Just use name rather than going Name -> String -> TCHAR -> Name Change 3321425 on 2017/02/24 by Marc.Audy Minor optimizations to avoid string construction when doing StaticFindObject and ResolveName Change 3321630 on 2017/02/24 by Mike.Beach Removing reference notation from actor pointer param - allowing you to pass 'self' to Blueprint exposed function. Change 3321845 on 2017/02/24 by Lukasz.Furman fixed navlink processor trace accepting only components with WorldStatic object type #ue4 Change 3322474 on 2017/02/24 by Aaron.McLeran UE-42345 Rewriting thumbnail renderer Change 3322490 on 2017/02/24 by Aaron.McLeran UE-42345 Forgot to take abs of sample before averaging Change 3323562 on 2017/02/27 by Mike.Beach Fixing bad merge, copying loop from //UE4/Main that accidently got replaced. Change 3323685 on 2017/02/27 by Mike.Beach Preventing us from cross-binding editor & PIE actors when we fixup level script actor bindings (on duplicate for PIE). #jira UE-30816 Change 3323776 on 2017/02/27 by Marc.Audy Coding standard clean up pass Change 3324050 on 2017/02/27 by Ben.Zeigler Fix issue with a StreamableHandle being cancelled while in progress leaving the in progress flag active. Added and improved error messages when streaming goes wrong Port of 3317217, 3315540, and 3314374 from UE4-Fortnite Change 3324294 on 2017/02/27 by Ben.Zeigler Engine changes needed to support "Asset Management" UI: Add concept of "Manage" dependency to the Asset Registry, to represent that an asset like a texture is managed by a Primary Asset. This will be used to compute usage statistics and chunking Add ability for AssetManager to override the PrimaryAssetType/Id on a asset data loaded off disk. Needed so the asset audit tools work properly Significant performance improvements to the asset registry dependency gather, and correctly report as in progress while dependencies are still being gathered. On Fortnite it now finishes in 10 seconds instead of 100 Add bUpdateDiskCacheAfterLoad option for the asset registry, if true (default) this will update the Asset Registry's disk cache when an object is loaded, only in the editor. This is so changes made in PostLoad are correctly mirrored in the disk cache Add PrimaryAssetType as a wrapper struct around FName to allow customizations and blueprint usage, clean up the noexport definitions for a few related classes Add Asset Manager code to create and query "Manage" references used for auditing and chunking Add code to read AssetManager scanning rules out of the AssetManagerSettings object, also settable in editor Made it so UWorlds are now PrimaryAssets of the type Map, and enable the AssetManager by default for all games Port of CL #3323720 and related fixes from Fortnite Change 3324295 on 2017/02/27 by Ben.Zeigler Add AssetManagerEditor which contains the editor interface for the AssetManager system, and engine code needed to support it Add support for Management references to the Reference Viewer, and add ability to extend that context menu from plugins/games Add struct customizations for PrimaryAssetId and PrimaryAssetType Add AssetAuditBrowser window that shows a specialized asset picker for auditing, accessible from content browser, reference viewer, and main windows pane Add AssetAuditContext, which is a cleaned up port of the one from Paragon. This needs some more work before being final Expose PropertyCustomizationHelpers::MakePropertyComboBox which allows making an "enum-like" combo box for struct customizations, it now works much like the PropertyEditorAsset UI Add Custom Column support to AssetView/AssetPicker. This can be used to show runtime-generated column data Fix bug in SAssetView where column view did not work with a filter predicate, because the column view was generated before the deferred filter predicate run, leading to an empty filter Port of CL #3323722 and related fixes from Fortnite Change 3324398 on 2017/02/27 by Ben.Zeigler CIS fix Change 3324442 on 2017/02/27 by Ben.Zeigler Nonunity fix discovered while testing my nonunity fix Change 3325465 on 2017/02/28 by Marc.Audy Expand RawInput to support up to 20 buttons Change 3325468 on 2017/02/28 by Marc.Audy Fix CIS Change 3325887 on 2017/02/28 by Phillip.Kavan [UE-41893] Implicitly nativize child Blueprints that override one or more BlueprintCallable functions from a parent Blueprint. change summary: - added FBlueprintEditorUtils::ShouldNativizeImplicitly() - modified FBlueprintGlobalOptionsDetails::IsNativizeEnabled() to disable the 'Nativize' checkbox when the BP is implicitly enabled - modified FBlueprintGlobalOptionsDetails::GetNativizeState() to set the 'Checked' state when the BP is implicitly enabled - modified FBlueprintGlobalOptionsDetails::GetNativizeTooltip() to set an alternate tooltip for the disabled state (when the BP is implicitly enabled) - modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to ensure that implicitly-enabled BPs are flagged as selected for nativization #jira UE-41893 Change 3326713 on 2017/02/28 by Marc.Audy Update MAX_NUM_CONTROLLER_BUTTONS to match number of keys created Change 3327688 on 2017/03/01 by Marc.Audy Fix spelling, remove autos Change 3328139 on 2017/03/01 by Marc.Audy Win32 doesn't report the DeviceData in the same way that Win64 does, removing filtered check for now so that Win32 packaged games can use RawInput (4.15.1) #jira UE-42375 Change 3328550 on 2017/03/01 by Mike.Beach Typo fix in cast node tooltip. Change 3328575 on 2017/03/01 by Nicholas.Blackford Submitting Tick Interval Functional Test Change 3328972 on 2017/03/02 by Jack.Porter Fix for crash entering Landscape mode #jira UE-42497 Change 3329224 on 2017/03/02 by Nick.Bullard Removing Redirector from EngineTest project Change 3330093 on 2017/03/02 by Mike.Beach Modified fix from Marc.Audy - Guarding against malformed graphs (missing their schema), which can happen in the middle of an undo transaction (removing the graph). Returning the graph's path name in this situation (instead of the display name), so we atleast have some semblance of context. #jira UE-42166 Change 3330306 on 2017/03/02 by Mike.Beach Replacing ArrayLibrary Get() calls in blueprints with a custom node, which can be toggled back and forth from returning by reference or by value. #jira UE-6451 Change 3330626 on 2017/03/02 by samuel.proctor Functional Test for Blueprint Containers Change 3330690 on 2017/03/02 by Mike.Beach Modified the fix from CL 3308097 - cannot clear the edgraph pin context since many menu actions expect it be available still as the menu is clossing (menu's dismiss gets triggered before the action is executed). #jira UE-42500 Change 3330704 on 2017/03/02 by Mike.Beach CIS fix - fallout from CL 3330306 Change 3330875 on 2017/03/02 by Dan.Oconnor Iteration on compile manager - removed skeleton compile pass in favor of FastGenerateSkeletonClass (directly generate reflection data from blueprint source data - no graph cloning) Change 3330892 on 2017/03/02 by Mike.Beach CIS fix for linux builds - include filename is case sensitive. Change 3331585 on 2017/03/03 by Mike.Beach Fix for CIS issues (fallout from CL 3330306) - had success/failure return value flipped. Spuriously failing on deprecated node fixup. Change 3333455 on 2017/03/06 by Ben.Zeigler Cleaned up version of CL #3332060, fixes crashes when calling StreamableManager::SynchronousLoad from inside a async PostLoad callback Also disable the "do sync load as async load" code in EDL, as EDL basically already does that internally Move the recursion guard inside async load tick outside of the EDL section, it's just as unsafe with EDL off Change 3333484 on 2017/03/06 by Ben.Zeigler #jira UE-42312 Fix crash trying to read Searchable Name references to objects in the same package, now guess at package/object name Change 3333553 on 2017/03/06 by Ben.Zeigler #jira UE-42387 Don't write out empty generated ini files for config files that are empty in both source and destination, this stops plugins without configs from ending up in cache Change 3333697 on 2017/03/06 by Mike.Beach Resolving some CIS errors - fix for missed handling of split-struct pins (fallout from CL 3330306) on deprecated node conversion (mapping old pins to new pins). Change 3334047 on 2017/03/06 by Ben.Zeigler #jira UE-42587 Now that we handle Add gameplay cues correctly by deferring them until after load, we also need to handle Remove cues, to avoid cues being stuck on permanently. Change 3334228 on 2017/03/06 by Ben.Zeigler #jira UE-42153 Fix several crashes with gameplay tag query structs #jira UE-39760 Fix it to display tag query description on creation Change 3335221 on 2017/03/07 by Lukasz.Furman fixed compilation errors for macros: UE_VLOG_MESH, UE_CVLOG_MESH #ue4 Change 3335733 on 2017/03/07 by dan.reynolds Fixing Attenuation Shape Material Reference Change 3335918 on 2017/03/07 by Mike.Beach More deeply nesting an active world check in UMeshComponent::CacheMaterialParameterNameIndices(). Only guarding the parts that use the world (prior to this, we were blocking material parameter discovery, which was causing cooked content to loose material settings). #jira UE-42480 Change 3336053 on 2017/03/07 by zack.letters Moved and renamed test to meet naming convention and proper location Change 3336087 on 2017/03/07 by Phillip.Kavan [UE-18618] Fix an ensure() misfire on PIE exit for listen server mode. change summary: - Modified UWorld::TransferBlueprintDebugReferences() to allow the LevelScript BP's target debug object reference to be reset to NULL when CreatePIEWorldBySavingToTemp() has recompiled it during the PIE startup process and autosaved the BP as a temporary. #jira UE-18618 Change 3336118 on 2017/03/07 by Phillip.Kavan Ensure that BP class component templates are included as preload dependencies where appropriate. Change 3336418 on 2017/03/07 by Marc.Audy Set the PIEInstanceID before calling ConvertToPIEPackageName (4.15.1) #jira UE-42507 Change 3336529 on 2017/03/07 by dan.reynolds AEOverview UMG Interface Change 3336729 on 2017/03/07 by Michael.Noland Blueprints: Changed a checkSlow() followed by unguarded access to an if and ensure() in BlueprintActionFilterImpl::IsDeprecated to prevent a potential crash in release if the node class is invalid for some reason #jira UE-42519 Change 3337054 on 2017/03/08 by Mieszko.Zielinski Fixed UGameplayTaskResource::AutoResourceID getting cleared on hot reload #UE4 Change 3337605 on 2017/03/08 by Mieszko.Zielinski PR #3345: Fix reversed comparison in FGameplayResourceSet::HasAllIDs (Contributed by hoelzl) Change 3337612 on 2017/03/08 by Lina.Halper Commenting out ensure as this doesn't cause any harm and fix it up later by itself. - adding ticket for further investigation #rb: Martin.Wilson #jira: UE-42062 Change 3338353 on 2017/03/08 by Mike.Beach Undoing CL 3320099, and instead allowing self nodes to be plugged into const ref inputs. Now auto-generating ref terms for the self node (the input param expects an addressable UProperty). Skipping this for native functions, as UHT already does something similar. #jira UE-40861 Change 3340052 on 2017/03/09 by Marc.Audy Don't mark a blueprint dirty if the default value isn't actually set #jira UE-42511 Change 3340211 on 2017/03/09 by samuel.proctor Adding TMap/TSet tests for Containers Functional Test Change 3340272 on 2017/03/09 by Marc.Audy auto removals small optimizations Change 3340341 on 2017/03/09 by Marc.Audy Fortnite fixes for blueprint exposed editor only struct members #jira UE-42430 Change 3340356 on 2017/03/09 by Marc.Audy Do not allow blueprint exposed editor only struct members #jira UE-42430 Change 3340369 on 2017/03/09 by Mike.Beach Certain operations expect set/map elements to be constructed, instead of using an 'uninitialized' value (like with FStrings, previously this would blow up attempting to assign a value to an FString that hadn't been constructed). Fix is to construct the member when we make space in the container (emulating execSetArray). #jira UE-42572 Change 3340445 on 2017/03/09 by mason.seay Renamed and updated test map. Also disabled tests until reviewed Change 3340627 on 2017/03/09 by Marc.Audy Remove autos Change 3340639 on 2017/03/09 by Dan.Oconnor Avoid CDO creation when asking if an object IsDefaultSubobject Change 3340642 on 2017/03/09 by Marc.Audy Correctly maintain removed items from arrays when duplicating actors via T3D #jira UE-42278 Change 3340689 on 2017/03/09 by Dan.Oconnor Avoid UObject::Modify calls when renaming edgraph nodes as part of UEdGraphNode::PostLoad() or UEdGraph::MoveNodesToAnotherGraph Change 3340709 on 2017/03/09 by Dan.Oconnor Remove misplace dClassDefaultObject null check for now Change 3340710 on 2017/03/09 by Dan.Oconnor Avoid FindRedirectedPropertyName when performing StaticDuplicateObject Change 3340728 on 2017/03/09 by Dan.Oconnor Null checking CDO so that we can duplicate a class with no CDO Change 3342184 on 2017/03/10 by mason.seay Nav mesh generation test - not finished Change 3342930 on 2017/03/13 by Mieszko.Zielinski Added missing undefining of local macros in VisualLoggerAutomationTests.cpp #UE4 Change 3343739 on 2017/03/13 by Marc.Audy Protect against ChildActorClass becoming null while ChildActorTemplate remains valid. Change 3343758 on 2017/03/13 by Marc.Audy Ensure that when you change visibility, children also get marked dirty as needed. SetVisibility is no longer virtual, use OnVisibilityChanged in subclasses instead #jira UE-42240 Change 3343816 on 2017/03/13 by Mike.Beach Making sure we build CrashReporter for nativized clients. #jira UE-42056 Change 3343858 on 2017/03/13 by Phillip.Kavan Back out changelist 3336118 (per discussion) - did not solve the issue. Change 3344218 on 2017/03/13 by Mike.Beach Patching some holes in the wildcard pin logic for our new array GetItem node (making sure the node properly retains its type). Change 3344388 on 2017/03/13 by Mike.Beach Preventing make/break nodes from being in the context menu for structs that are not labeled 'BlueprintType' (still available if you drag off a node with a struct pin of that type). #jira UE-37971 Change 3344411 on 2017/03/13 by dan.reynolds AEOverviewMain update - Organized Variables - Added comments on level interface with UI script Change 3344956 on 2017/03/14 by Marc.Audy Remove autos Slight optimization Change 3345365 on 2017/03/14 by Mike.Beach In the Blueprint diff tool, no longer assuming that graph names are unique (using the outer path to find matching graphs between diff panels). #jira UE-42787 Change 3345565 on 2017/03/14 by Marc.Audy auto removal Change 3345654 on 2017/03/14 by Marc.Audy Allow hierarchical metadata querying when HACK_HEADER_GENERATION is true Change 3345771 on 2017/03/14 by Zak.Middleton #ue4 - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]: ClientNetSendMoveDeltaTime=0.0111f ClientNetSendMoveDeltaTime=0.0222f ClientNetSendMoveThrottleAtNetSpeed = 10000 ClientNetSendMoveThrottleOverPlayerCount=10 These are the default values maintained for backwards compat. Related to OR-36422. Change 3346314 on 2017/03/14 by Dan.Oconnor Add two features to FBlueprintCompileReinstancer. Exposing it's CPFUO extensions and add a flag to avoid potentially unneeded CDO duplication. Change 3346329 on 2017/03/14 by Dan.Oconnor Avoid CDO creation in UBlueprintGeneratedClass::PostLoad - rely instead on compiler Change 3346436 on 2017/03/14 by Dan.Oconnor Compilation Manager iteration - improvements to reinstancing logic and postponement of reinstancing reference replacement until after loading has finished (done strictly to reduce the number of 'find references' calls). Behavior change is behind the GMinimalCompileOnLoad flag Change 3346632 on 2017/03/14 by Ben.Zeigler Change StringClassReference customization to use MustImplement and BlueprintBaseOnly metadata, to match the metadata used by SubclassOf customization Add missing Class Property metadata to the metadata list Change 3347525 on 2017/03/15 by Marc.Audy PR #3371: Fix for binding ability action to input component (Contributed by ryanjon2040) #jira UE-42810 Change 3347562 on 2017/03/15 by Phillip.Kavan [UE-32816] Support for value-based bitfield enum associations in the editor. notes: - default mode is still index-based, so there are no backwards-compatibility issues change summary: - new metadata key for flagging enums as value-based (UseEnumValuesAsMaskValuesInEditor) - modified SPropertyEditorNumeric::Construct() to include logic for handling value-based enum associations - modified SGraphPinInteger::Construct() to include logic for handling value-based enum associations - added default value fixup to UK2Node_BitmaskLiteral, so that changed/removed values get masked out on load - switched UK2Node_BitmaskLiteral::PostLoad() to Serialize(), so that default value fixup occurs before compilation #jira UE-32816 Change 3348030 on 2017/03/15 by Marc.Audy Remove experimental blueprintable components setting, they are supported fully Change 3348034 on 2017/03/15 by Phillip.Kavan CIS fix. Change 3348054 on 2017/03/15 by Marc.Audy Fix shadow error Change 3348063 on 2017/03/15 by mason.seay Updateed bp logic to use asserts. Added scenarios to descriptions of tests Change 3348131 on 2017/03/15 by mason.seay Updating maps and reorganizing content Change 3348146 on 2017/03/15 by Mike.Beach Making it so we can use DataTable variables as inputs in the GetDataTableRow node. The output pin is now a wildcard when the row type is undefined, and we throw an access error at runtime if the table and output type don't match. Change 3348213 on 2017/03/15 by dan.reynolds AEOverview UMG Update - Added level selection persistence between categories (so you can pick and choose from multiple categories) - Added a clear all selections button - Added comments to the UMG BP Change 3348344 on 2017/03/15 by Lukasz.Furman fixed missing path following result flag descriptions #ue4 Change 3348489 on 2017/03/15 by mason.seay Moved content and updated test descriptions Change 3348496 on 2017/03/15 by Mike.Beach Keeping the new version of the GetArrayItem node from causing a stack overflow with wildcard reroute nodes. Change 3348502 on 2017/03/15 by Ben.Zeigler #jira UE-42935 Fix several issues with GameplayTag and Container switch nodes crashing. Container didn't handling having multiple empty nodes correctly Fix general issue with Switch nodes where removing an execution pin with right click was not synchronizing the pin list properly Change it so the Container switch shows the simple tag string instead of Case 0, and change it to not quote by default for Container display strings Change 3348504 on 2017/03/15 by Ben.Zeigler #jira UE-41554 Add GameplayTag initialization to InitializeObjectReferences if it hasn't been initialized yet, this is important so it gets initialized before being initialized from unsafe areas like Serialize Change 3348512 on 2017/03/15 by Mike.Beach Reroute nodes connected to a new output, will propagate the type through its inputs (was previously treating the input's wildcard type as authoritative). Change 3348513 on 2017/03/15 by Phillip.Kavan [UE-38979] Error out on an attempt to nativize a Blueprint class that also implements a native C++ interface with a pure virtual function declaration. change summary: - added TIsAbstract<T> for traits testing to see if native C++ types are abstract (in terms of C++, not UE4) - changed TCppStructOps::IsAbstract() to use TIsAbstract<T> - added UClass::CppClassOps to capture class-specific traits info for the underlying C++ class type - modified UClass::PurgeClass() to clean up class-specific traits info (if valid) - modified FNativeClassHeaderGenerator::ExportNativeGeneratedInitCode() to generate code to initialize class-specific traits info for compiled-in class types - modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to throw an error during nativization if a target BP class is found to implement a native interface class that's also abstract (i.e. an interface class that declares one or more of its methods as pure virtual) - modified BlueprintActionFilterImpl::IsExtraneousInterfaceCall() to initially exclude any native interface class that is also abstract - modified FKismetEditorUtilities::CanBlueprintImplementInterface() to additionally exclude any native class that is also abstract - modified FBlueprintInterfaceFilter::IsClassAllowed() to additionally exclude any native class that is also abstract #jira UE-38979 Change 3348651 on 2017/03/15 by Mike.Beach Fixing the new GetDataTableRow node so that it'll give you the option of reroute nodes. Change 3348684 on 2017/03/15 by Michael.Noland Blueprints: Allow string and text variables to be marked as multi-line PR #3294: UE-42147: Add multiline to BP view details (Contributed by projectgheist) #jira UE-42275 Change 3348691 on 2017/03/15 by Michael.Noland Cameras: Added support for specifying a default aspect ratio and whether or not to constrain to it in a camera manager subclass; useful when using custom view logic that doesn't source from a camera component as the view target PR #2593: Finish implementing aspect ratio handling for PlayerCameraManager (Contributed by CleanCut) #jira UE-33052 Change 3348698 on 2017/03/15 by Michael.Noland Removed a sprite reference from trigger shape classes and excluded some component references from camera rigs in cooked builds PR #2922: Ensuring editor data is not accessed when excluded from cook (Contributed by moritz-wundke) #jira UE-38484 Change 3348722 on 2017/03/15 by Dan.Oconnor Fix replacement bug - due to last minute refactor of this reference replacer call Change 3348736 on 2017/03/15 by Michael.Noland Blueprints: Added missing include for UTextProperty (compiled fine locally both with the file checked out and the file unmodified) Change 3348810 on 2017/03/15 by Michael.Noland Blueprints: Added support for seeing the user defined tooltip on get/set nodes for local variables PR #3256: UE-41098: Added UFunction argument (Contributed by projectgheist) Change 3348811 on 2017/03/15 by Michael.Noland PR #3380: Added CancelAbility Blueprint node (Contributed by ryanjon2040) #jira UE-42904 Change 3348969 on 2017/03/15 by Dan.Oconnor Build fix Change 3349023 on 2017/03/16 by Aaron.McLeran Copying //Tasks/UE4/Private-GDC17-Audio to Dev-Framework (//UE4/Dev-Framework) Change 3349389 on 2017/03/16 by mason.seay Finished up Navigation map. Improved Navmesh map (still needs some work before review) Change 3349575 on 2017/03/16 by Marc.Audy Emit ScriptMacros.h in addition to ObjectMacros.h in generated headers Change 3349628 on 2017/03/16 by Ben.Zeigler Add direct support for Chunk setting to AssetManager. If AssetManager exists and no game callback is set it uses the new, much faster method. Otherwise it falls back to the old one Fix some memory corruption issues in ChunkManifestGenerator where it was modifying a map while iterating it, could lead to assets ending up in multiple chunks accidentally Remove the "Old Cooker" entirely, it hasn't functioned since around 4.9 Various fixes to AssetManagerEditorModule Convert ShooterGame to use the AssetManager for chunking Change 3349629 on 2017/03/16 by Ben.Zeigler Change Fortnite to use the AssetManager chunking system, which simplifies the chunk 1 setup significantly Also includes changes made on Fortnite Branch as CL #3323724: Fortnite changes to take advantage of the Manage dependency in the asset manager Move definition of asset types to ini from native, and simplify it so all zone themes are scanned, even if not used Make FeedbackBank a primary asset type. It's currently editor only as there are some outdated banks we don't want to cook Change 3350043 on 2017/03/16 by Marc.Audy Fix Audio compile errors Change 3350092 on 2017/03/16 by Dan.Oconnor Fix missing output parameters when the function result node is pruned Change 3350190 on 2017/03/16 by Ben.Zeigler CIS fix Change 3350707 on 2017/03/16 by Dan.Oconnor Add means of enabling BlueprintCompilationManager via editor ini. Wedging the check into LaunchEngineLoop because of assets that are loaded during engine initialization Change 3350820 on 2017/03/16 by Joe.Conley Xenakis project: Setting GameMode to GameMode instead of None so the game doesn't crash on Play Change 3350893 on 2017/03/16 by Dan.Oconnor Build fix Change 3351017 on 2017/03/16 by Dan.Oconnor Using ordered arguments instead of named arguments improves load time in BP heavy projects Change 3351056 on 2017/03/16 by Dan.Oconnor Avoiding Copies Change 3351062 on 2017/03/16 by Dan.Oconnor Enable BlueprintCompilationManager by default - this is a major change in code path when loading uassets that contain blueprints Change 3351770 on 2017/03/17 by Marc.Audy Fix CIS warnings Change 3351818 on 2017/03/17 by Mike.Beach CopyPropertiesForUnrelatedObjects() will now only copy tagged data when the two objects truly are unrelated (different native base classes). We have to do this because the two native base classes may have different serialization methods that add/expect different data, which is not compatible with the other. #jira UE-35970 Change 3351918 on 2017/03/17 by Mike.Beach CIS fix - renaming local so it doesn't conflict with the one in the outer scope. Change 3351931 on 2017/03/17 by Ben.Zeigler Make CoreRedirects a proper Automated Test, and fix a test failure with not handling : in the output string Fix legitimate regression where doing a package -> package rename would clear Outer, this was a result of a fix I made in Main a few weeks ago Change 3351956 on 2017/03/17 by Dan.Oconnor Make sure result element is emptied when calling Intersect, Union, or Difference #jira UE-42993 Change 3352049 on 2017/03/17 by Ben.Zeigler #Jira UE-42118 Add RemoveGameplayTag to the tag blueprint library Delete (with redirector) redundant AddGameplayTagToContainer function that got accidentally added in parallel on Fortnite. Decided to keep the shorter TagContainer parameter name for both though Change 3352065 on 2017/03/17 by Aaron.McLeran Fixing compile errors - deleting unused files - removing #pragma once in SSynthKnob.cpp - Making phonon have win64 whitelist to avoid compiling on other platforms Change 3352100 on 2017/03/17 by Aaron.McLeran Fixing compile errors - Moving header file to public folder since it's used outside of module Change 3352182 on 2017/03/17 by Ben.Zeigler #jira UE-39815 Fix several issues with renaming tags in the tag settings view, it now deletes redirectors properly when renaming or making a new tag that matches an existing redirector Change 3352286 on 2017/03/17 by Ben.Zeigler #jira UE-39519 Add error messages when only one of GameMode/GameState is derived from the outdated parent classes Modified version of PR #3285: Add error log messages if the GameMode/GameState are mis-matched (Contributed by jwatte) Change 3352299 on 2017/03/17 by Ben.Zeigler #jira UE-40544 PR #3130: UE-40544: Check pause state if state change is allowed (Contributed by projectgheist) Change 3352303 on 2017/03/17 by Ben.Zeigler #jira UE-40856 Commit PR #3147: Remove unnecessary directory separator for GetSaveGamePath (Contributed by projectgheist) Remove unnecessary FString casting and in OpenGLDebugFrameDump.cpp there were FString multiplications that would never compile Change 3352320 on 2017/03/17 by Ben.Zeigler #jira UE-40087 Fix it so console keybind can be used in shipping games with console enabled Commit PR #3079: Fix ALLOW_CONSOLE define usage (Contributed by KrisRedbeard) Change 3352338 on 2017/03/17 by Ben.Zeigler #jira UE-42800 PR #3367: Made CheatManager more useful for non-FPShooters (Contributed by crumblycake) Change 3352352 on 2017/03/17 by Dan.Oconnor Emptying map instead of trying to remove an element when conversion of a value type fails - can't remove a single element until the map is rehashed #jira UE-42937 Change 3352581 on 2017/03/17 by Lukasz.Furman fixed memory leak in navmesh generators copy of CL# 3352356 #ue4 Change 3352665 on 2017/03/17 by Aaron.McLeran Fixing build error - Adding virtual destructor to FSoundWaveSoundWaveAssetActionExtender - Also renamed the class to only include SoundWave once! - Fixing static analysis warning on null deref. Change 3352685 on 2017/03/17 by Dan.Oconnor Fix for bad behavior of GetValues and GetKeys functions when there are gaps in a TMap (e.g. due to Remove calls) #jira UE-42547 Change 3352706 on 2017/03/17 by Aaron.McLeran Fixing build error Changing TSharedPtr<FSoundWaveSoundWaveAssetActionExtender> to TSharedPtr<ISoundWaveAssetActionExtensions> Change 3352708 on 2017/03/17 by Dan.Oconnor Data only and interface blueprints need SkeletonGeneratedClass set on load so that they can be used by the BlueprintEditor #jira UE-43023 Change 3352860 on 2017/03/17 by Lukasz.Furman fixed memory leak in navmesh generators copy of CL# 3352849 #ue4 Change 3352967 on 2017/03/17 by Dan.Oconnor Avoid tagging blueprints as modified while compiling with the new compilation manager. Leaving old code path unaffected, although it may benefit from this change. #jira UE-43027 Change 3352979 on 2017/03/17 by Dan.Oconnor Static analysis driven fixes #jira UE-43044 Change 3352987 on 2017/03/17 by Aaron.McLeran Fixing build error - Removing myo from other platforms, win64 only Change 3353234 on 2017/03/18 by Marc.Audy Fix Win32 build Change 3353344 on 2017/03/19 by Marc.Audy Fix cyclic includes in new Audio code Change 3353350 on 2017/03/19 by Marc.Audy Disable static analysis for myo third party code Change 3353750 on 2017/03/20 by Marc.Audy Fix additional cyclic include Change 3353926 on 2017/03/20 by Mieszko.Zielinski Made FNavAgentProperties::GetExtent return INVALID_NAVEXTENT if prop's AgentRadius is not set #UE4 This results in using FNavAgentProperties::DefaultProperties in navigation system queries to fallback to default query extent. #jira UE-18493 Change 3354249 on 2017/03/20 by Mike.Beach Raising a UHT error if you use a non-byte enum type in a Blueprint function. Blueprints currently only support uint8 enums (already an error if you tag the enum with 'BlueprintType', this error just emulates/extends that one). #jira UE-42479 Change 3354464 on 2017/03/20 by Dan.Oconnor Fix missing source path when using compilation manager Change 3354499 on 2017/03/20 by Dan.Oconnor Disable compilation manager Change 3354620 on 2017/03/20 by Ben.Zeigler #jira UE-43087 Fix crash when calling HasGPUEmitter on a Server build, this is newly an issue because it is calling GetAssetRegistryTags in more places than it used to Change 3354714 on 2017/03/20 by Michael.Noland PR #3352: Fixed issue with diffed Blueprints being searchable (Contributed by MichaelSchoell) #jira UE-42655 Change 3354718 on 2017/03/20 by Michael.Noland Engine: Change FViewport::IsGameRenderingEnabled to be static PR #3317: FViewport::IsGameRenderingEnabled (Contributed by tomix1024) #jira UE-42471 Change 3354721 on 2017/03/20 by Michael.Noland PR #3293: Made GetDefaultLocale accessible in blueprint (Contributed by derekvanvliet) #jira UE-42274 Change 3354907 on 2017/03/20 by Aaron.McLeran Fixing content in xenakis map Change 3355223 on 2017/03/20 by Ben.Zeigler #jira UE-43096 Fix crash when trying to ResolveName a path that ends in . (apparently when you LoadObject empty string, it ends up trying to load "." before giving up Change 3355297 on 2017/03/20 by Dan.Oconnor Fix incorrect flag settings from fast skeleton path.. this is part of the fix for UE-43083 Change 3355373 on 2017/03/20 by Michael.Noland PR #3222: Allow Blueprint Variables to be Readonly (Contributed by FrostByteGER) #jira UE-41640 Change 3355417 on 2017/03/20 by Ben.Zeigler Fix formatting bug where I forgot some braces Change 3355462 on 2017/03/20 by Aaron.McLeran UE-43046 Property type changed with no possible conversion Resaved asset in question Change 3355629 on 2017/03/20 by Dan.Oconnor Don't warn the user when their return node that has no pins (other than an exec pin). These return nodes cannot be deleted and connecting them does nothing. Prior to recent changes the warning never fired because the return node would be pruned and not validated. Change 3355631 on 2017/03/20 by Dan.Oconnor Fix compilation results spam in compilation manager. Scoped compiler events (e.g. BP_SCOPED_COMPILER_EVENT_STAT(EKismetCompilerStats_CompileTime);) will flush the results log if no 'event' has been started. Timing data collected via this mechanism will not be useful (can only measure entire call to ::Flush in compilation manager) Change 3356127 on 2017/03/21 by Richard.Hinckley #jira UEDOC-4711 Updated an invalid/old URL in a comment to a valid/current URL. Change 3356193 on 2017/03/21 by Marc.Audy Temporarily remove editor only properties in FCameraFocusSettings until we correctly no longer create pins for struct properties that are not exposed to blueprints #jira UE-43420 Change 3356222 on 2017/03/21 by Marc.Audy Expose new attenuation settings to blueprints to resolve cook warnings. Change 3356286 on 2017/03/21 by Richard.Hinckley #jira UEDOC-4711 Selected a different URL for the update. Change 3356339 on 2017/03/21 by Marc.Audy Delete unconnected return nodes to fix fortnite cook warnings Change 3356827 on 2017/03/21 by Ben.Zeigler Explicitly disable copy operations for streamable manager objects. This may be causing some obscure crashes like WEX-5182 but I am not sure how the copy constructor would be getting called. Either way it's unsafe Put in protection against passing in duplicate items to RequestAsyncLoad, which is another possible cause of internal data corruption Add some more ensures to track down possible issues with handle corruption Change 3356920 on 2017/03/21 by Ben.Zeigler Fix ensure just checked in to not go off when handles are halfway through being cancelled Change 3358152 on 2017/03/22 by Phillip.Kavan #jira UE-43102 - Fix an occasional crash on load in nativized EDL-enabled builds with non-nativized child BPs. Change summary: - Modified AActor::PostLoadSubobjects() to skip the CheckAndApplyComponentTemplateOverrides() call in the CDO case; at that point the ICH may not be fully loaded, but we don't require the non-nativized child BP's CDO to be fixed up anyway. [CL 3358685 by Marc Audy in Main branch]
2017-03-22 12:57:30 -04:00
FText SAssetColumnItem::GetAssetTagText(FName AssetTag) const
{
if ( AssetItem.IsValid() )
{
if(AssetItem->GetType() != EAssetItemType::Folder)
{
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3358467) #rb none #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3297108 on 2017/02/10 by Mieszko.Zielinski Added AISight's peripherial vision angle claming as well as marked up UI to not allow values from outside of [0,180] range #UE4 #jira UE-41114 Change 3299467 on 2017/02/13 by Marc.Audy Don't try to update active sounds on audio thread if the audio component is not active. If these functions are callled from a constructor on an async loading thread it can cause a crash Change 3300692 on 2017/02/13 by Marc.Audy no auto Change 3301424 on 2017/02/14 by Marc.Audy Handle gateway expansion before the node matching loop #jira UE-41858 Change 3301547 on 2017/02/14 by Marc.Audy PR #3246: Added BindDelegate that supports functions with custom (static) arguments (Contributed by PhoenixBlack) #jira UE-41926 Change 3301557 on 2017/02/14 by Marc.Audy When passing null to Rename for the new name, maintain the OldName is possible #jira UE-41937 Change 3301676 on 2017/02/14 by Marc.Audy Fix pending occlusion async traces from crashing during shutdown #jira UE-41939 Change 3302705 on 2017/02/14 by Mieszko.Zielinski Removed 'PRAGMA_DISABLE_OPTIMIZATION' uccurences from AIModule #UE4 Change 3302898 on 2017/02/14 by Dan.Oconnor Fix double negative Change 3302954 on 2017/02/14 by Dan.Oconnor Make sure we use a good version of the class Change 3302977 on 2017/02/14 by Dan.Oconnor Optimization in reinstancer turned back on - 3302898 has fixed the regression Change 3302984 on 2017/02/14 by Dan.Oconnor Relink classes that were not recompiled in a wave of the compilation manager - currently only happens for data only blueprints. This fixes issues in Odin when using the compilation manager Change 3303824 on 2017/02/15 by Richard.Hinckley Updating URL for FABRIK system information. Change 3304284 on 2017/02/15 by Dan.Oconnor Build fix Change 3304297 on 2017/02/15 by Dan.Oconnor Shadow variable fix Change 3304465 on 2017/02/15 by Lukasz.Furman fixed handling pathfollowing's requests by FloatingPawnMovement #jira UE-41884 Change 3305031 on 2017/02/15 by Marc.Audy All objects should get PostLoadSubobjects calls, regardless of whether they are outered to a CDO or not #jira UE-41708 Change 3305505 on 2017/02/15 by Michael.Noland Blueprints: Fix a crash when opening a BP with a parent class that no longer exists (unguarded access to the parent class) Change 3305506 on 2017/02/15 by Michael.Noland QAGame: Created some assets that reference a non-existent type to test 'gracefully' handling missing native class types Change 3306091 on 2017/02/16 by Marc.Audy PR #3263: Fixed duplicate comment from OnAudioFinished (Contributed by FrostByteGER) #jira UE-42027 Change 3306574 on 2017/02/16 by Marc.Audy Linked To pins can belong to invalid nodes and fail to load, this shouldn't be considered fatal Change 3307160 on 2017/02/16 by Marc.Audy Rename(null, null ... is sometimes used to just force a name out of the way, so in that case don't try and maintain old name. Change 3307982 on 2017/02/16 by Michael.Noland QAGame: Added another test asset for missing classes (this time a missing node class placed in a BP) Change 3308097 on 2017/02/16 by Michael.Noland Graph Editor: Instantly clear GraphNodeForMenu and GraphPinForMenu as soon as the menu is dismissed, fixing crashes and other odd issues after deleting pins #jira UE-41789 Change 3308303 on 2017/02/16 by Dan.Oconnor Make sure we don't call GetDefaultObject while compiling on a non-native class Change 3308850 on 2017/02/17 by Mieszko.Zielinski Fully exposed NavModifierVolume as ENGINE_API #UE4 Change 3309624 on 2017/02/17 by Phillip.Kavan [UE-40443] Recursively emit ctor initialization code for nested default subobjects when nativizing a Blueprint class. change summary: - modified FEmitDefaultValueHelper::OuterGenerate() to recursively detect and handle nested default subobjects. #jira UE-40443 Change 3310475 on 2017/02/17 by Dan.Oconnor Split bluepint compilation into CompileClassLayout and CompileFunctions, fix class hierarchy after creating reinstancers in blueprintcompilation manager. Together this means we don't need to run RecompileBlueprintBytecode Change 3310487 on 2017/02/17 by Dan.Oconnor Fix build error missed by preflgiht Change 3310497 on 2017/02/17 by Dan.Oconnor More build fixes for things missed by preflight... Change 3310635 on 2017/02/17 by Dan.Oconnor Remove unused parameter and add comment to blueprint compilation manager explaining abuse of bBeingCompiled Change 3310639 on 2017/02/17 by Dan.Oconnor Shadow variable fixes, not sure why these are being detected now Change 3311855 on 2017/02/20 by Marc.Audy Fix UChildActorComponent::ParentComponent being null on the client #jira UE-42140 Change 3312444 on 2017/02/20 by Marc.Audy Add a bAutoDestroy pin to BP Spawn Sound and Force Feedback nodes to allow users to reuse the created component #jira UE-41267 Change 3312691 on 2017/02/20 by mason.seay Deleting map now that bug has been fixed Change 3312709 on 2017/02/20 by Phillip.Kavan [UE-39705] Fix broken collision shapes when cooking with optimized BP component data option. change summary: - modified FComponentInstancingDataUtils::RecursivePropertyGather() to exclude deprecated properties, since they won't be serialized on save. - modified FBlueprintCookedComponentInstancingData::LoadCachedPropertyDataForSerialization() to remove the PPF_UseDeprecatedProperties flag (these are no longer included in the delta). - modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to remove the PPF_UseDeprecatedProperties flag (was being incorrectly used here). - modified AActor::CreateComponentFromTemplateData() to remove the PPF_UseDeprecatedProperties flag (was being incorrectly used here; this caused deprecated property defaults to be copied out to the instance). - modified AActor::CreateComponentFromTemplateData() to append RF_PostLoad/RF_NeedPostLoadSubobjects and call PostDuplicate()/ConditionalPostLoad() on the new instance (needed to mirror what SDO does in the unoptimized case - for proper physics RB setup specifically, but may be other areas where that's needed). #jira UE-39705 Change 3313161 on 2017/02/20 by Mieszko.Zielinski PR #3272: Use Pawn for GetNavAgentPropertiesRef(). (Contributed by drelidan7) Change 3314151 on 2017/02/21 by Mieszko.Zielinski fix to hlods complaining about missing nav collision in cooked builds #UE4 Made sure hlod-generated StaticMeshes are marked as not having navigation data #jira UE-42034 Change 3314355 on 2017/02/21 by Marc.Audy Set error message back to be correctly about mobility #jira UE-42209 Change 3314566 on 2017/02/21 by Phillip.Kavan [UE-40801] Switch to an ensure() to potentially help diagnose a one-off assertion crash in the SCS editor if encountered again in a future release. #jira UE-40801 Change 3315459 on 2017/02/21 by Mike.Beach Updated marquee selection in graph editors. Ctrl dragging now inverts nodes' selection state (not only deselects them - holding alt is now for only deselection). #jira UE-16359 Change 3315546 on 2017/02/21 by Mike.Beach Mirroring CL 3294552 Count "GeneratedStub" as a success for cooked file generation - ensures the saved asset gets recorded in the asset registry. #jira ODIN-5869 Change 3315554 on 2017/02/21 by Mike.Beach Do not generate NativizedAsset plugin files if no Blueprints were nativized (cut down on mod generate/cook time). #jira ODIN-6211 Change 3317225 on 2017/02/22 by mason.seay Enable Net Use Owner Frequency on blueprints. This allows the client to use different weapons. Doesn't fix UE-42017 though. Change 3317495 on 2017/02/22 by Marc.Audy Expose raw input device configurations to other modules by request #jira UE-42204 Change 3319966 on 2017/02/23 by Nick.Atamas Polished up the material reroute node: - Removed some unnecessary widgets - Centered the pin node Change 3320099 on 2017/02/23 by Mike.Beach Guarding against passing self pins to referance parameters (it is not a property that is referencable, and would crash). Notifying the user through pin connection messages, and providing a script exception. #jira UE-40861 Change 3321227 on 2017/02/24 by Marc.Audy Just use name rather than going Name -> String -> TCHAR -> Name Change 3321425 on 2017/02/24 by Marc.Audy Minor optimizations to avoid string construction when doing StaticFindObject and ResolveName Change 3321630 on 2017/02/24 by Mike.Beach Removing reference notation from actor pointer param - allowing you to pass 'self' to Blueprint exposed function. Change 3321845 on 2017/02/24 by Lukasz.Furman fixed navlink processor trace accepting only components with WorldStatic object type #ue4 Change 3322474 on 2017/02/24 by Aaron.McLeran UE-42345 Rewriting thumbnail renderer Change 3322490 on 2017/02/24 by Aaron.McLeran UE-42345 Forgot to take abs of sample before averaging Change 3323562 on 2017/02/27 by Mike.Beach Fixing bad merge, copying loop from //UE4/Main that accidently got replaced. Change 3323685 on 2017/02/27 by Mike.Beach Preventing us from cross-binding editor & PIE actors when we fixup level script actor bindings (on duplicate for PIE). #jira UE-30816 Change 3323776 on 2017/02/27 by Marc.Audy Coding standard clean up pass Change 3324050 on 2017/02/27 by Ben.Zeigler Fix issue with a StreamableHandle being cancelled while in progress leaving the in progress flag active. Added and improved error messages when streaming goes wrong Port of 3317217, 3315540, and 3314374 from UE4-Fortnite Change 3324294 on 2017/02/27 by Ben.Zeigler Engine changes needed to support "Asset Management" UI: Add concept of "Manage" dependency to the Asset Registry, to represent that an asset like a texture is managed by a Primary Asset. This will be used to compute usage statistics and chunking Add ability for AssetManager to override the PrimaryAssetType/Id on a asset data loaded off disk. Needed so the asset audit tools work properly Significant performance improvements to the asset registry dependency gather, and correctly report as in progress while dependencies are still being gathered. On Fortnite it now finishes in 10 seconds instead of 100 Add bUpdateDiskCacheAfterLoad option for the asset registry, if true (default) this will update the Asset Registry's disk cache when an object is loaded, only in the editor. This is so changes made in PostLoad are correctly mirrored in the disk cache Add PrimaryAssetType as a wrapper struct around FName to allow customizations and blueprint usage, clean up the noexport definitions for a few related classes Add Asset Manager code to create and query "Manage" references used for auditing and chunking Add code to read AssetManager scanning rules out of the AssetManagerSettings object, also settable in editor Made it so UWorlds are now PrimaryAssets of the type Map, and enable the AssetManager by default for all games Port of CL #3323720 and related fixes from Fortnite Change 3324295 on 2017/02/27 by Ben.Zeigler Add AssetManagerEditor which contains the editor interface for the AssetManager system, and engine code needed to support it Add support for Management references to the Reference Viewer, and add ability to extend that context menu from plugins/games Add struct customizations for PrimaryAssetId and PrimaryAssetType Add AssetAuditBrowser window that shows a specialized asset picker for auditing, accessible from content browser, reference viewer, and main windows pane Add AssetAuditContext, which is a cleaned up port of the one from Paragon. This needs some more work before being final Expose PropertyCustomizationHelpers::MakePropertyComboBox which allows making an "enum-like" combo box for struct customizations, it now works much like the PropertyEditorAsset UI Add Custom Column support to AssetView/AssetPicker. This can be used to show runtime-generated column data Fix bug in SAssetView where column view did not work with a filter predicate, because the column view was generated before the deferred filter predicate run, leading to an empty filter Port of CL #3323722 and related fixes from Fortnite Change 3324398 on 2017/02/27 by Ben.Zeigler CIS fix Change 3324442 on 2017/02/27 by Ben.Zeigler Nonunity fix discovered while testing my nonunity fix Change 3325465 on 2017/02/28 by Marc.Audy Expand RawInput to support up to 20 buttons Change 3325468 on 2017/02/28 by Marc.Audy Fix CIS Change 3325887 on 2017/02/28 by Phillip.Kavan [UE-41893] Implicitly nativize child Blueprints that override one or more BlueprintCallable functions from a parent Blueprint. change summary: - added FBlueprintEditorUtils::ShouldNativizeImplicitly() - modified FBlueprintGlobalOptionsDetails::IsNativizeEnabled() to disable the 'Nativize' checkbox when the BP is implicitly enabled - modified FBlueprintGlobalOptionsDetails::GetNativizeState() to set the 'Checked' state when the BP is implicitly enabled - modified FBlueprintGlobalOptionsDetails::GetNativizeTooltip() to set an alternate tooltip for the disabled state (when the BP is implicitly enabled) - modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to ensure that implicitly-enabled BPs are flagged as selected for nativization #jira UE-41893 Change 3326713 on 2017/02/28 by Marc.Audy Update MAX_NUM_CONTROLLER_BUTTONS to match number of keys created Change 3327688 on 2017/03/01 by Marc.Audy Fix spelling, remove autos Change 3328139 on 2017/03/01 by Marc.Audy Win32 doesn't report the DeviceData in the same way that Win64 does, removing filtered check for now so that Win32 packaged games can use RawInput (4.15.1) #jira UE-42375 Change 3328550 on 2017/03/01 by Mike.Beach Typo fix in cast node tooltip. Change 3328575 on 2017/03/01 by Nicholas.Blackford Submitting Tick Interval Functional Test Change 3328972 on 2017/03/02 by Jack.Porter Fix for crash entering Landscape mode #jira UE-42497 Change 3329224 on 2017/03/02 by Nick.Bullard Removing Redirector from EngineTest project Change 3330093 on 2017/03/02 by Mike.Beach Modified fix from Marc.Audy - Guarding against malformed graphs (missing their schema), which can happen in the middle of an undo transaction (removing the graph). Returning the graph's path name in this situation (instead of the display name), so we atleast have some semblance of context. #jira UE-42166 Change 3330306 on 2017/03/02 by Mike.Beach Replacing ArrayLibrary Get() calls in blueprints with a custom node, which can be toggled back and forth from returning by reference or by value. #jira UE-6451 Change 3330626 on 2017/03/02 by samuel.proctor Functional Test for Blueprint Containers Change 3330690 on 2017/03/02 by Mike.Beach Modified the fix from CL 3308097 - cannot clear the edgraph pin context since many menu actions expect it be available still as the menu is clossing (menu's dismiss gets triggered before the action is executed). #jira UE-42500 Change 3330704 on 2017/03/02 by Mike.Beach CIS fix - fallout from CL 3330306 Change 3330875 on 2017/03/02 by Dan.Oconnor Iteration on compile manager - removed skeleton compile pass in favor of FastGenerateSkeletonClass (directly generate reflection data from blueprint source data - no graph cloning) Change 3330892 on 2017/03/02 by Mike.Beach CIS fix for linux builds - include filename is case sensitive. Change 3331585 on 2017/03/03 by Mike.Beach Fix for CIS issues (fallout from CL 3330306) - had success/failure return value flipped. Spuriously failing on deprecated node fixup. Change 3333455 on 2017/03/06 by Ben.Zeigler Cleaned up version of CL #3332060, fixes crashes when calling StreamableManager::SynchronousLoad from inside a async PostLoad callback Also disable the "do sync load as async load" code in EDL, as EDL basically already does that internally Move the recursion guard inside async load tick outside of the EDL section, it's just as unsafe with EDL off Change 3333484 on 2017/03/06 by Ben.Zeigler #jira UE-42312 Fix crash trying to read Searchable Name references to objects in the same package, now guess at package/object name Change 3333553 on 2017/03/06 by Ben.Zeigler #jira UE-42387 Don't write out empty generated ini files for config files that are empty in both source and destination, this stops plugins without configs from ending up in cache Change 3333697 on 2017/03/06 by Mike.Beach Resolving some CIS errors - fix for missed handling of split-struct pins (fallout from CL 3330306) on deprecated node conversion (mapping old pins to new pins). Change 3334047 on 2017/03/06 by Ben.Zeigler #jira UE-42587 Now that we handle Add gameplay cues correctly by deferring them until after load, we also need to handle Remove cues, to avoid cues being stuck on permanently. Change 3334228 on 2017/03/06 by Ben.Zeigler #jira UE-42153 Fix several crashes with gameplay tag query structs #jira UE-39760 Fix it to display tag query description on creation Change 3335221 on 2017/03/07 by Lukasz.Furman fixed compilation errors for macros: UE_VLOG_MESH, UE_CVLOG_MESH #ue4 Change 3335733 on 2017/03/07 by dan.reynolds Fixing Attenuation Shape Material Reference Change 3335918 on 2017/03/07 by Mike.Beach More deeply nesting an active world check in UMeshComponent::CacheMaterialParameterNameIndices(). Only guarding the parts that use the world (prior to this, we were blocking material parameter discovery, which was causing cooked content to loose material settings). #jira UE-42480 Change 3336053 on 2017/03/07 by zack.letters Moved and renamed test to meet naming convention and proper location Change 3336087 on 2017/03/07 by Phillip.Kavan [UE-18618] Fix an ensure() misfire on PIE exit for listen server mode. change summary: - Modified UWorld::TransferBlueprintDebugReferences() to allow the LevelScript BP's target debug object reference to be reset to NULL when CreatePIEWorldBySavingToTemp() has recompiled it during the PIE startup process and autosaved the BP as a temporary. #jira UE-18618 Change 3336118 on 2017/03/07 by Phillip.Kavan Ensure that BP class component templates are included as preload dependencies where appropriate. Change 3336418 on 2017/03/07 by Marc.Audy Set the PIEInstanceID before calling ConvertToPIEPackageName (4.15.1) #jira UE-42507 Change 3336529 on 2017/03/07 by dan.reynolds AEOverview UMG Interface Change 3336729 on 2017/03/07 by Michael.Noland Blueprints: Changed a checkSlow() followed by unguarded access to an if and ensure() in BlueprintActionFilterImpl::IsDeprecated to prevent a potential crash in release if the node class is invalid for some reason #jira UE-42519 Change 3337054 on 2017/03/08 by Mieszko.Zielinski Fixed UGameplayTaskResource::AutoResourceID getting cleared on hot reload #UE4 Change 3337605 on 2017/03/08 by Mieszko.Zielinski PR #3345: Fix reversed comparison in FGameplayResourceSet::HasAllIDs (Contributed by hoelzl) Change 3337612 on 2017/03/08 by Lina.Halper Commenting out ensure as this doesn't cause any harm and fix it up later by itself. - adding ticket for further investigation #rb: Martin.Wilson #jira: UE-42062 Change 3338353 on 2017/03/08 by Mike.Beach Undoing CL 3320099, and instead allowing self nodes to be plugged into const ref inputs. Now auto-generating ref terms for the self node (the input param expects an addressable UProperty). Skipping this for native functions, as UHT already does something similar. #jira UE-40861 Change 3340052 on 2017/03/09 by Marc.Audy Don't mark a blueprint dirty if the default value isn't actually set #jira UE-42511 Change 3340211 on 2017/03/09 by samuel.proctor Adding TMap/TSet tests for Containers Functional Test Change 3340272 on 2017/03/09 by Marc.Audy auto removals small optimizations Change 3340341 on 2017/03/09 by Marc.Audy Fortnite fixes for blueprint exposed editor only struct members #jira UE-42430 Change 3340356 on 2017/03/09 by Marc.Audy Do not allow blueprint exposed editor only struct members #jira UE-42430 Change 3340369 on 2017/03/09 by Mike.Beach Certain operations expect set/map elements to be constructed, instead of using an 'uninitialized' value (like with FStrings, previously this would blow up attempting to assign a value to an FString that hadn't been constructed). Fix is to construct the member when we make space in the container (emulating execSetArray). #jira UE-42572 Change 3340445 on 2017/03/09 by mason.seay Renamed and updated test map. Also disabled tests until reviewed Change 3340627 on 2017/03/09 by Marc.Audy Remove autos Change 3340639 on 2017/03/09 by Dan.Oconnor Avoid CDO creation when asking if an object IsDefaultSubobject Change 3340642 on 2017/03/09 by Marc.Audy Correctly maintain removed items from arrays when duplicating actors via T3D #jira UE-42278 Change 3340689 on 2017/03/09 by Dan.Oconnor Avoid UObject::Modify calls when renaming edgraph nodes as part of UEdGraphNode::PostLoad() or UEdGraph::MoveNodesToAnotherGraph Change 3340709 on 2017/03/09 by Dan.Oconnor Remove misplace dClassDefaultObject null check for now Change 3340710 on 2017/03/09 by Dan.Oconnor Avoid FindRedirectedPropertyName when performing StaticDuplicateObject Change 3340728 on 2017/03/09 by Dan.Oconnor Null checking CDO so that we can duplicate a class with no CDO Change 3342184 on 2017/03/10 by mason.seay Nav mesh generation test - not finished Change 3342930 on 2017/03/13 by Mieszko.Zielinski Added missing undefining of local macros in VisualLoggerAutomationTests.cpp #UE4 Change 3343739 on 2017/03/13 by Marc.Audy Protect against ChildActorClass becoming null while ChildActorTemplate remains valid. Change 3343758 on 2017/03/13 by Marc.Audy Ensure that when you change visibility, children also get marked dirty as needed. SetVisibility is no longer virtual, use OnVisibilityChanged in subclasses instead #jira UE-42240 Change 3343816 on 2017/03/13 by Mike.Beach Making sure we build CrashReporter for nativized clients. #jira UE-42056 Change 3343858 on 2017/03/13 by Phillip.Kavan Back out changelist 3336118 (per discussion) - did not solve the issue. Change 3344218 on 2017/03/13 by Mike.Beach Patching some holes in the wildcard pin logic for our new array GetItem node (making sure the node properly retains its type). Change 3344388 on 2017/03/13 by Mike.Beach Preventing make/break nodes from being in the context menu for structs that are not labeled 'BlueprintType' (still available if you drag off a node with a struct pin of that type). #jira UE-37971 Change 3344411 on 2017/03/13 by dan.reynolds AEOverviewMain update - Organized Variables - Added comments on level interface with UI script Change 3344956 on 2017/03/14 by Marc.Audy Remove autos Slight optimization Change 3345365 on 2017/03/14 by Mike.Beach In the Blueprint diff tool, no longer assuming that graph names are unique (using the outer path to find matching graphs between diff panels). #jira UE-42787 Change 3345565 on 2017/03/14 by Marc.Audy auto removal Change 3345654 on 2017/03/14 by Marc.Audy Allow hierarchical metadata querying when HACK_HEADER_GENERATION is true Change 3345771 on 2017/03/14 by Zak.Middleton #ue4 - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]: ClientNetSendMoveDeltaTime=0.0111f ClientNetSendMoveDeltaTime=0.0222f ClientNetSendMoveThrottleAtNetSpeed = 10000 ClientNetSendMoveThrottleOverPlayerCount=10 These are the default values maintained for backwards compat. Related to OR-36422. Change 3346314 on 2017/03/14 by Dan.Oconnor Add two features to FBlueprintCompileReinstancer. Exposing it's CPFUO extensions and add a flag to avoid potentially unneeded CDO duplication. Change 3346329 on 2017/03/14 by Dan.Oconnor Avoid CDO creation in UBlueprintGeneratedClass::PostLoad - rely instead on compiler Change 3346436 on 2017/03/14 by Dan.Oconnor Compilation Manager iteration - improvements to reinstancing logic and postponement of reinstancing reference replacement until after loading has finished (done strictly to reduce the number of 'find references' calls). Behavior change is behind the GMinimalCompileOnLoad flag Change 3346632 on 2017/03/14 by Ben.Zeigler Change StringClassReference customization to use MustImplement and BlueprintBaseOnly metadata, to match the metadata used by SubclassOf customization Add missing Class Property metadata to the metadata list Change 3347525 on 2017/03/15 by Marc.Audy PR #3371: Fix for binding ability action to input component (Contributed by ryanjon2040) #jira UE-42810 Change 3347562 on 2017/03/15 by Phillip.Kavan [UE-32816] Support for value-based bitfield enum associations in the editor. notes: - default mode is still index-based, so there are no backwards-compatibility issues change summary: - new metadata key for flagging enums as value-based (UseEnumValuesAsMaskValuesInEditor) - modified SPropertyEditorNumeric::Construct() to include logic for handling value-based enum associations - modified SGraphPinInteger::Construct() to include logic for handling value-based enum associations - added default value fixup to UK2Node_BitmaskLiteral, so that changed/removed values get masked out on load - switched UK2Node_BitmaskLiteral::PostLoad() to Serialize(), so that default value fixup occurs before compilation #jira UE-32816 Change 3348030 on 2017/03/15 by Marc.Audy Remove experimental blueprintable components setting, they are supported fully Change 3348034 on 2017/03/15 by Phillip.Kavan CIS fix. Change 3348054 on 2017/03/15 by Marc.Audy Fix shadow error Change 3348063 on 2017/03/15 by mason.seay Updateed bp logic to use asserts. Added scenarios to descriptions of tests Change 3348131 on 2017/03/15 by mason.seay Updating maps and reorganizing content Change 3348146 on 2017/03/15 by Mike.Beach Making it so we can use DataTable variables as inputs in the GetDataTableRow node. The output pin is now a wildcard when the row type is undefined, and we throw an access error at runtime if the table and output type don't match. Change 3348213 on 2017/03/15 by dan.reynolds AEOverview UMG Update - Added level selection persistence between categories (so you can pick and choose from multiple categories) - Added a clear all selections button - Added comments to the UMG BP Change 3348344 on 2017/03/15 by Lukasz.Furman fixed missing path following result flag descriptions #ue4 Change 3348489 on 2017/03/15 by mason.seay Moved content and updated test descriptions Change 3348496 on 2017/03/15 by Mike.Beach Keeping the new version of the GetArrayItem node from causing a stack overflow with wildcard reroute nodes. Change 3348502 on 2017/03/15 by Ben.Zeigler #jira UE-42935 Fix several issues with GameplayTag and Container switch nodes crashing. Container didn't handling having multiple empty nodes correctly Fix general issue with Switch nodes where removing an execution pin with right click was not synchronizing the pin list properly Change it so the Container switch shows the simple tag string instead of Case 0, and change it to not quote by default for Container display strings Change 3348504 on 2017/03/15 by Ben.Zeigler #jira UE-41554 Add GameplayTag initialization to InitializeObjectReferences if it hasn't been initialized yet, this is important so it gets initialized before being initialized from unsafe areas like Serialize Change 3348512 on 2017/03/15 by Mike.Beach Reroute nodes connected to a new output, will propagate the type through its inputs (was previously treating the input's wildcard type as authoritative). Change 3348513 on 2017/03/15 by Phillip.Kavan [UE-38979] Error out on an attempt to nativize a Blueprint class that also implements a native C++ interface with a pure virtual function declaration. change summary: - added TIsAbstract<T> for traits testing to see if native C++ types are abstract (in terms of C++, not UE4) - changed TCppStructOps::IsAbstract() to use TIsAbstract<T> - added UClass::CppClassOps to capture class-specific traits info for the underlying C++ class type - modified UClass::PurgeClass() to clean up class-specific traits info (if valid) - modified FNativeClassHeaderGenerator::ExportNativeGeneratedInitCode() to generate code to initialize class-specific traits info for compiled-in class types - modified FBlueprintNativeCodeGenModule::IsTargetedForReplacement() to throw an error during nativization if a target BP class is found to implement a native interface class that's also abstract (i.e. an interface class that declares one or more of its methods as pure virtual) - modified BlueprintActionFilterImpl::IsExtraneousInterfaceCall() to initially exclude any native interface class that is also abstract - modified FKismetEditorUtilities::CanBlueprintImplementInterface() to additionally exclude any native class that is also abstract - modified FBlueprintInterfaceFilter::IsClassAllowed() to additionally exclude any native class that is also abstract #jira UE-38979 Change 3348651 on 2017/03/15 by Mike.Beach Fixing the new GetDataTableRow node so that it'll give you the option of reroute nodes. Change 3348684 on 2017/03/15 by Michael.Noland Blueprints: Allow string and text variables to be marked as multi-line PR #3294: UE-42147: Add multiline to BP view details (Contributed by projectgheist) #jira UE-42275 Change 3348691 on 2017/03/15 by Michael.Noland Cameras: Added support for specifying a default aspect ratio and whether or not to constrain to it in a camera manager subclass; useful when using custom view logic that doesn't source from a camera component as the view target PR #2593: Finish implementing aspect ratio handling for PlayerCameraManager (Contributed by CleanCut) #jira UE-33052 Change 3348698 on 2017/03/15 by Michael.Noland Removed a sprite reference from trigger shape classes and excluded some component references from camera rigs in cooked builds PR #2922: Ensuring editor data is not accessed when excluded from cook (Contributed by moritz-wundke) #jira UE-38484 Change 3348722 on 2017/03/15 by Dan.Oconnor Fix replacement bug - due to last minute refactor of this reference replacer call Change 3348736 on 2017/03/15 by Michael.Noland Blueprints: Added missing include for UTextProperty (compiled fine locally both with the file checked out and the file unmodified) Change 3348810 on 2017/03/15 by Michael.Noland Blueprints: Added support for seeing the user defined tooltip on get/set nodes for local variables PR #3256: UE-41098: Added UFunction argument (Contributed by projectgheist) Change 3348811 on 2017/03/15 by Michael.Noland PR #3380: Added CancelAbility Blueprint node (Contributed by ryanjon2040) #jira UE-42904 Change 3348969 on 2017/03/15 by Dan.Oconnor Build fix Change 3349023 on 2017/03/16 by Aaron.McLeran Copying //Tasks/UE4/Private-GDC17-Audio to Dev-Framework (//UE4/Dev-Framework) Change 3349389 on 2017/03/16 by mason.seay Finished up Navigation map. Improved Navmesh map (still needs some work before review) Change 3349575 on 2017/03/16 by Marc.Audy Emit ScriptMacros.h in addition to ObjectMacros.h in generated headers Change 3349628 on 2017/03/16 by Ben.Zeigler Add direct support for Chunk setting to AssetManager. If AssetManager exists and no game callback is set it uses the new, much faster method. Otherwise it falls back to the old one Fix some memory corruption issues in ChunkManifestGenerator where it was modifying a map while iterating it, could lead to assets ending up in multiple chunks accidentally Remove the "Old Cooker" entirely, it hasn't functioned since around 4.9 Various fixes to AssetManagerEditorModule Convert ShooterGame to use the AssetManager for chunking Change 3349629 on 2017/03/16 by Ben.Zeigler Change Fortnite to use the AssetManager chunking system, which simplifies the chunk 1 setup significantly Also includes changes made on Fortnite Branch as CL #3323724: Fortnite changes to take advantage of the Manage dependency in the asset manager Move definition of asset types to ini from native, and simplify it so all zone themes are scanned, even if not used Make FeedbackBank a primary asset type. It's currently editor only as there are some outdated banks we don't want to cook Change 3350043 on 2017/03/16 by Marc.Audy Fix Audio compile errors Change 3350092 on 2017/03/16 by Dan.Oconnor Fix missing output parameters when the function result node is pruned Change 3350190 on 2017/03/16 by Ben.Zeigler CIS fix Change 3350707 on 2017/03/16 by Dan.Oconnor Add means of enabling BlueprintCompilationManager via editor ini. Wedging the check into LaunchEngineLoop because of assets that are loaded during engine initialization Change 3350820 on 2017/03/16 by Joe.Conley Xenakis project: Setting GameMode to GameMode instead of None so the game doesn't crash on Play Change 3350893 on 2017/03/16 by Dan.Oconnor Build fix Change 3351017 on 2017/03/16 by Dan.Oconnor Using ordered arguments instead of named arguments improves load time in BP heavy projects Change 3351056 on 2017/03/16 by Dan.Oconnor Avoiding Copies Change 3351062 on 2017/03/16 by Dan.Oconnor Enable BlueprintCompilationManager by default - this is a major change in code path when loading uassets that contain blueprints Change 3351770 on 2017/03/17 by Marc.Audy Fix CIS warnings Change 3351818 on 2017/03/17 by Mike.Beach CopyPropertiesForUnrelatedObjects() will now only copy tagged data when the two objects truly are unrelated (different native base classes). We have to do this because the two native base classes may have different serialization methods that add/expect different data, which is not compatible with the other. #jira UE-35970 Change 3351918 on 2017/03/17 by Mike.Beach CIS fix - renaming local so it doesn't conflict with the one in the outer scope. Change 3351931 on 2017/03/17 by Ben.Zeigler Make CoreRedirects a proper Automated Test, and fix a test failure with not handling : in the output string Fix legitimate regression where doing a package -> package rename would clear Outer, this was a result of a fix I made in Main a few weeks ago Change 3351956 on 2017/03/17 by Dan.Oconnor Make sure result element is emptied when calling Intersect, Union, or Difference #jira UE-42993 Change 3352049 on 2017/03/17 by Ben.Zeigler #Jira UE-42118 Add RemoveGameplayTag to the tag blueprint library Delete (with redirector) redundant AddGameplayTagToContainer function that got accidentally added in parallel on Fortnite. Decided to keep the shorter TagContainer parameter name for both though Change 3352065 on 2017/03/17 by Aaron.McLeran Fixing compile errors - deleting unused files - removing #pragma once in SSynthKnob.cpp - Making phonon have win64 whitelist to avoid compiling on other platforms Change 3352100 on 2017/03/17 by Aaron.McLeran Fixing compile errors - Moving header file to public folder since it's used outside of module Change 3352182 on 2017/03/17 by Ben.Zeigler #jira UE-39815 Fix several issues with renaming tags in the tag settings view, it now deletes redirectors properly when renaming or making a new tag that matches an existing redirector Change 3352286 on 2017/03/17 by Ben.Zeigler #jira UE-39519 Add error messages when only one of GameMode/GameState is derived from the outdated parent classes Modified version of PR #3285: Add error log messages if the GameMode/GameState are mis-matched (Contributed by jwatte) Change 3352299 on 2017/03/17 by Ben.Zeigler #jira UE-40544 PR #3130: UE-40544: Check pause state if state change is allowed (Contributed by projectgheist) Change 3352303 on 2017/03/17 by Ben.Zeigler #jira UE-40856 Commit PR #3147: Remove unnecessary directory separator for GetSaveGamePath (Contributed by projectgheist) Remove unnecessary FString casting and in OpenGLDebugFrameDump.cpp there were FString multiplications that would never compile Change 3352320 on 2017/03/17 by Ben.Zeigler #jira UE-40087 Fix it so console keybind can be used in shipping games with console enabled Commit PR #3079: Fix ALLOW_CONSOLE define usage (Contributed by KrisRedbeard) Change 3352338 on 2017/03/17 by Ben.Zeigler #jira UE-42800 PR #3367: Made CheatManager more useful for non-FPShooters (Contributed by crumblycake) Change 3352352 on 2017/03/17 by Dan.Oconnor Emptying map instead of trying to remove an element when conversion of a value type fails - can't remove a single element until the map is rehashed #jira UE-42937 Change 3352581 on 2017/03/17 by Lukasz.Furman fixed memory leak in navmesh generators copy of CL# 3352356 #ue4 Change 3352665 on 2017/03/17 by Aaron.McLeran Fixing build error - Adding virtual destructor to FSoundWaveSoundWaveAssetActionExtender - Also renamed the class to only include SoundWave once! - Fixing static analysis warning on null deref. Change 3352685 on 2017/03/17 by Dan.Oconnor Fix for bad behavior of GetValues and GetKeys functions when there are gaps in a TMap (e.g. due to Remove calls) #jira UE-42547 Change 3352706 on 2017/03/17 by Aaron.McLeran Fixing build error Changing TSharedPtr<FSoundWaveSoundWaveAssetActionExtender> to TSharedPtr<ISoundWaveAssetActionExtensions> Change 3352708 on 2017/03/17 by Dan.Oconnor Data only and interface blueprints need SkeletonGeneratedClass set on load so that they can be used by the BlueprintEditor #jira UE-43023 Change 3352860 on 2017/03/17 by Lukasz.Furman fixed memory leak in navmesh generators copy of CL# 3352849 #ue4 Change 3352967 on 2017/03/17 by Dan.Oconnor Avoid tagging blueprints as modified while compiling with the new compilation manager. Leaving old code path unaffected, although it may benefit from this change. #jira UE-43027 Change 3352979 on 2017/03/17 by Dan.Oconnor Static analysis driven fixes #jira UE-43044 Change 3352987 on 2017/03/17 by Aaron.McLeran Fixing build error - Removing myo from other platforms, win64 only Change 3353234 on 2017/03/18 by Marc.Audy Fix Win32 build Change 3353344 on 2017/03/19 by Marc.Audy Fix cyclic includes in new Audio code Change 3353350 on 2017/03/19 by Marc.Audy Disable static analysis for myo third party code Change 3353750 on 2017/03/20 by Marc.Audy Fix additional cyclic include Change 3353926 on 2017/03/20 by Mieszko.Zielinski Made FNavAgentProperties::GetExtent return INVALID_NAVEXTENT if prop's AgentRadius is not set #UE4 This results in using FNavAgentProperties::DefaultProperties in navigation system queries to fallback to default query extent. #jira UE-18493 Change 3354249 on 2017/03/20 by Mike.Beach Raising a UHT error if you use a non-byte enum type in a Blueprint function. Blueprints currently only support uint8 enums (already an error if you tag the enum with 'BlueprintType', this error just emulates/extends that one). #jira UE-42479 Change 3354464 on 2017/03/20 by Dan.Oconnor Fix missing source path when using compilation manager Change 3354499 on 2017/03/20 by Dan.Oconnor Disable compilation manager Change 3354620 on 2017/03/20 by Ben.Zeigler #jira UE-43087 Fix crash when calling HasGPUEmitter on a Server build, this is newly an issue because it is calling GetAssetRegistryTags in more places than it used to Change 3354714 on 2017/03/20 by Michael.Noland PR #3352: Fixed issue with diffed Blueprints being searchable (Contributed by MichaelSchoell) #jira UE-42655 Change 3354718 on 2017/03/20 by Michael.Noland Engine: Change FViewport::IsGameRenderingEnabled to be static PR #3317: FViewport::IsGameRenderingEnabled (Contributed by tomix1024) #jira UE-42471 Change 3354721 on 2017/03/20 by Michael.Noland PR #3293: Made GetDefaultLocale accessible in blueprint (Contributed by derekvanvliet) #jira UE-42274 Change 3354907 on 2017/03/20 by Aaron.McLeran Fixing content in xenakis map Change 3355223 on 2017/03/20 by Ben.Zeigler #jira UE-43096 Fix crash when trying to ResolveName a path that ends in . (apparently when you LoadObject empty string, it ends up trying to load "." before giving up Change 3355297 on 2017/03/20 by Dan.Oconnor Fix incorrect flag settings from fast skeleton path.. this is part of the fix for UE-43083 Change 3355373 on 2017/03/20 by Michael.Noland PR #3222: Allow Blueprint Variables to be Readonly (Contributed by FrostByteGER) #jira UE-41640 Change 3355417 on 2017/03/20 by Ben.Zeigler Fix formatting bug where I forgot some braces Change 3355462 on 2017/03/20 by Aaron.McLeran UE-43046 Property type changed with no possible conversion Resaved asset in question Change 3355629 on 2017/03/20 by Dan.Oconnor Don't warn the user when their return node that has no pins (other than an exec pin). These return nodes cannot be deleted and connecting them does nothing. Prior to recent changes the warning never fired because the return node would be pruned and not validated. Change 3355631 on 2017/03/20 by Dan.Oconnor Fix compilation results spam in compilation manager. Scoped compiler events (e.g. BP_SCOPED_COMPILER_EVENT_STAT(EKismetCompilerStats_CompileTime);) will flush the results log if no 'event' has been started. Timing data collected via this mechanism will not be useful (can only measure entire call to ::Flush in compilation manager) Change 3356127 on 2017/03/21 by Richard.Hinckley #jira UEDOC-4711 Updated an invalid/old URL in a comment to a valid/current URL. Change 3356193 on 2017/03/21 by Marc.Audy Temporarily remove editor only properties in FCameraFocusSettings until we correctly no longer create pins for struct properties that are not exposed to blueprints #jira UE-43420 Change 3356222 on 2017/03/21 by Marc.Audy Expose new attenuation settings to blueprints to resolve cook warnings. Change 3356286 on 2017/03/21 by Richard.Hinckley #jira UEDOC-4711 Selected a different URL for the update. Change 3356339 on 2017/03/21 by Marc.Audy Delete unconnected return nodes to fix fortnite cook warnings Change 3356827 on 2017/03/21 by Ben.Zeigler Explicitly disable copy operations for streamable manager objects. This may be causing some obscure crashes like WEX-5182 but I am not sure how the copy constructor would be getting called. Either way it's unsafe Put in protection against passing in duplicate items to RequestAsyncLoad, which is another possible cause of internal data corruption Add some more ensures to track down possible issues with handle corruption Change 3356920 on 2017/03/21 by Ben.Zeigler Fix ensure just checked in to not go off when handles are halfway through being cancelled Change 3358152 on 2017/03/22 by Phillip.Kavan #jira UE-43102 - Fix an occasional crash on load in nativized EDL-enabled builds with non-nativized child BPs. Change summary: - Modified AActor::PostLoadSubobjects() to skip the CheckAndApplyComponentTemplateOverrides() call in the CDO case; at that point the ICH may not be fully loaded, but we don't require the non-nativized child BP's CDO to be fixed up anyway. [CL 3358685 by Marc Audy in Main branch]
2017-03-22 12:57:30 -04:00
const TSharedPtr<FAssetViewAsset>& ItemAsAsset = StaticCastSharedPtr<FAssetViewAsset>(AssetItem);
// Check custom type
FString* FoundString = ItemAsAsset->CustomColumnData.Find(AssetTag);
if (FoundString)
{
return FText::FromString(*FoundString);
}
return ItemAsAsset->Data.GetTagValueRef<FText>(AssetTag);
}
}
return FText();
}
#undef LOCTEXT_NAMESPACE