Files
UnrealEngineUWP/Engine/Source/Editor/GraphEditor/Public/SGraphNode.h

437 lines
16 KiB
C
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
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 "CoreMinimal.h"
#include "SlateFwd.h"
#include "Misc/Attribute.h"
#include "Layout/Visibility.h"
#include "Layout/SlateRect.h"
#include "Input/Reply.h"
#include "Styling/SlateColor.h"
#include "Widgets/SWidget.h"
#include "Animation/CurveHandle.h"
#include "Animation/CurveSequence.h"
#include "Widgets/DeclarativeSyntaxSupport.h"
#include "Widgets/SCompoundWidget.h"
#include "Widgets/SOverlay.h"
#include "GraphEditor.h"
#include "EdGraph/EdGraphNodeUtils.h"
#include "SNodePanel.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 "Widgets/Notifications/SErrorText.h"
#include "Styling/ISlateStyle.h"
#include "Styling/AppStyle.h"
class FActorDragDropOp;
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
class IToolTip;
class SGraphPanel;
class SGraphPin;
class SToolTip;
class SVerticalBox;
/////////////////////////////////////////////////////
// SNodeTitle
class GRAPHEDITOR_API SNodeTitle : public SCompoundWidget
{
public:
SLATE_BEGIN_ARGS(SNodeTitle)
: _StyleSet(&FAppStyle::Get())
, _Style(TEXT("Graph.Node.NodeTitle"))
, _ExtraLineStyle(TEXT("Graph.Node.NodeTitleExtraLines"))
{}
SLATE_ARGUMENT(const ISlateStyle*, StyleSet)
// The style of the text block, which dictates the font, color, and shadow options. Style overrides all other properties!
SLATE_ARGUMENT(FName, Style)
// The style of any additional lines in the the text block
SLATE_ARGUMENT(FName, ExtraLineStyle)
// Title text to display, auto-binds to get the title if not set externally
SLATE_ATTRIBUTE(FText, Text)
SLATE_END_ARGS()
void Construct(const FArguments& InArgs, UEdGraphNode* InNode);
// SWidget interface
---- 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
virtual void Tick( const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime ) override;
// End of SWidget interface
/** Returns the main title for the node */
FText GetHeadTitle() const;
/** Get the size of this title the last time it was drawn */
FVector2D GetTitleSize() const;
/** Mark the cached title dirty */
void MarkDirty();
protected:
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 4048875) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3808185 by Cody.Albert Added missing calls to FEditorViewportClient::AddReferencedObjects in overrides Change 3809824 by Michael.Trepka Improved the way we generate groups in Xcode project's source code navigator. They are now sorted alphabetically and have correct paths so Xcode no longer displays them in red. Also, added __INTELLISENSE__ to preprocessor definitions for indexing to improve indexing without game header files generated. Change 3810089 by Jamie.Dale Fixed PO files failing to import translations containing only whitespace Change 3811281 by Matt.Kuhlenschmidt PR #4331: Toggle SIE shortcut only in PIE (Contributed by projectgheist) Change 3813031 by Matt.Kuhlenschmidt Fix undocked tabs not dropping at users mouse location #jira UE-53427 Change 3813361 by Brandon.Schaefer Print what SDL video driver we are using Change 3818430 by Matt.Kuhlenschmidt PR #4365: Incorrect font name and forgotten undef (Contributed by projectgheist) Change 3818432 by Matt.Kuhlenschmidt PR #4366: Asset Color Strip updates correct on drag and drop (Contributed by projectgheist) Change 3818436 by Matt.Kuhlenschmidt PR #4367: Improved logging (Contributed by projectgheist) Change 3819886 by Matt.Kuhlenschmidt Add a way to optionally disable the warning about referenced actors being moved to other levels. Useful for bulk actor moves via script Change 3819888 by Matt.Kuhlenschmidt Avoid crashing when a window size becomes too large to render. Instead just ensure and clamp to the maximum allowed size. Avoids crashes where the screen dimensions are saved with super large numbers for unknown reasons Change 3821773 by Brandon.Schaefer Fix crash when importing to level #jira UE-31573 Change 3821892 by Jamie.Dale Improved the localized asset cooking so that it only cooks L10N variants if their source asset is cooked #jira UE-53010 Change 3823714 by Christina.TempelaarL #jira UE-52179 added support for grayscale PSD files Change 3826805 by Christina.TempelaarL #jira UE-49636 SceneCaptureComponent2D hidden actor and show only actors disabled in blueprints #jira UE-53445 SceneCaptureComponent2D hidden actors always disabled in details layout Change 3828444 by Anthony.Bills Add LXC container script for building third party libraries. The intention is that this should become the only way to rebuild the third party libraries that require system dependencies not included in the cross-compile toolchain and also to rebuild the toolchains. Other third party libraries without any system dependencies could be rebuilt via the cross-compile toolchains/UBT. This script has been tested running on CentOS 7 and Ubuntu 17.10. Buy default the x86 and x86_64 builds will be built against a CentOS 6 container (and targeting glibc 1.12) and the aarch64 and armhf builds will use an Ubuntu Ubuntu Trusty (14.04) but this is not yet complete. Change 3828754 by Brandon.Schaefer Linux: Fix gamepad thumbstick clicks not registering (github #4209 thanks J??rn M??ller) #jira UE-45722 #review-3828733 Arciel.Rekman Change 3830414 by Brandon.Schaefer Remove circular referencing to a parent window. Move to use AddSP vs AddRaw as well to be safe manually remove ourselves from the selection event delegate list due to Linux pending deletion of windows. Looks like this should fix UE-28322 as well which I've removed the work around placed in for that. #jira UE-53918 #review @michael.trepka, @matt.kuhlenschmidt, @arciel.rekman Change 3830916 by Brandon.Schaefer More verbose message about missing VK extensions (from Marcin Undak) #review-3830710 marcin.undak, arciel.rekman Change 3831339 by Brandon.Schaefer Default to as-needed for debug mode #jira none #review-3830658 Arciel.Rekman Change 3833102 by Jamie.Dale Re-added warning for duplicate package localization IDs when gathering asset localization Change 3834600 by Jamie.Dale Optimized asset registry filter intersection Change 3838024 by Brandon.Schaefer Remove tracking of CLion/CMake build files (from github #4346 thanks reapazor!) #jira UE-53551 #review-3835803 arciel.rekman Change 3839969 by Michael.Dupuis #jira UE-52289: When OnRegister is called on the component make sure our PerInstanceRenderData is up to date Prevent a possible crash if ClearInstanceSelection was called on a component with no PerInstanceRenderData existing Change 3840049 by Michael.Dupuis #jira UE-52975: Was always performing the equivalent of an Add, so now we use the Transform during the duplicate Change 3840071 by Matt.Kuhlenschmidt - Combine some shader params for slate in order to reduce overhead setting uniform buffers - Added better stats for slate draw call rendering - cleaned up huge lambda in Slate rendering main function so we can read the main slate rendering function again Change 3840291 by Michael.Dupuis #jira UE-53053: Was having a mismatch between the remove reorder and the actual remove Change 3840840 by Michael.Dupuis #jira UE-53944: Make sure the LOD generated is in the valid range to prevent the crash Change 3842072 by Michael.Dupuis #jira UE-50299: Include NumSubsection in calculation of component quad factor Change 3842487 by Christina.TempelaarL #jira UE-50573 HighResShot has wrong res in immersive mode Change 3845702 by Matt.Kuhlenschmidt PR #4381: DefaultASTCQualityBySpeed too high max value. (Contributed by kallehamalainen) Change 3845706 by Matt.Kuhlenschmidt PR #4388: Only restore window if minimized (Contributed by projectgheist) Change 3845993 by Christina.TempelaarL #jira UE-41558 crash when selecting PostProcessingVolumes in separate levels Change 3856395 by Brandon.Schaefer No longer using ALAudio on Linux #jira UE-53717 Change 3858324 by Michael.Trepka Preserve command line arguments in Xcode project when regenerating it Change 3858365 by Michael.Dupuis #jira UE-52049: There was a case where adding and removing multiple time would lead to reordering the instances and this would cause the regeneration of the random stream for all the reorded instances. Change 3858492 by Michael.Trepka Updated dependencies for Mac dSYM files so that only cross-referenced modules have their dSYMs recreated on subsequent builds instead of all modules. Change 3859470 by Michael.Trepka CIS fix. Make sure a scheme file exists before trying to read it when generating Xcode project. Change 3859900 by Joe.Conley Fix for "Check Out Assets" window not properly receiving focus. Change 3865218 by Michael.Dupuis #jira UE-45784: Exposed the possibility to edit LDMaxDrawDistance Change 3866957 by Michael.Dupuis #jira UE-42509: Added BodyInstance to ULandscapeSplineSegment and ULandscapeSplineControlPoint Deprecated bEnabledCollision and migrate data as it's replaced by BodyInstance Change 3867220 by Cody.Albert Fixed Project Launcher scrollbar to properly stay anchored at the bottom of the scroll area. Change 3869117 by Michael.Dupuis #jira UE-42509:Fixed compile error when not having editor data Change 3872478 by Arciel.Rekman Linux: disable PIE if compiler enables it by default. Change 3874786 by Michael.Dupuis #jira UE-46925: Remove the guessing functionality when importing a heightmap, and instead propose to the user valid size that can be used for the import through a combo button. Improved usability of the UI by disabling size field when no file was specified Change 3875859 by Jamie.Dale Implemented our own canonization for culture codes Change 3877604 by Cody.Albert We now validate actor names passed to SetActorLabel to ensure None isn't passed in, which can corrupt levels Change 3877777 by Nick.Shin PhysX build fix - this came from CL: 3809757 #jira UE-54924 Cannot rebuild Apex/PhysX/NvCloth .emscripten missing Change 3881693 by Alexis.Matte Fix local path search to not search in memory only #jira UE-55018 Change 3882512 by Michael.Dupuis #jira none : Fixed screen size calculation to take aspect ratio into account correctly Change 3886926 by Arciel.Rekman Linux: fixed checking clang settings during the cross-build (UE-55132). #jira UE-55132 Change 3887080 by Anthony.Bills Updated SDL2 build script. - Now allows compiling inside a CentOS 6 or Ubuntu 12.04 container with wayland support when using the ContainerBuildThirdParty.sh. - Added multiple build arch support to the BuildThirdParty script and pass this down to the SDL2 build script. Change 3887260 by Arciel.Rekman Linux: fix leaking process handles in the cross-toolchain. Change 3889072 by Brandon.Schaefer Fix RPath workaround, to better handle both cases #jira UE-55150 #review-3888119 @Arciel.Rekman, @Ben.Marsh Change 3892546 by Alexis.Matte Remove fbx exporter welded vertices options #jira UE-51575 Change 3893516 by Michael.Dupuis Remove static mesh instancing async buffer filling, as with all the changes made, it's no longer necessary, the cost of loading very large buffer is negligable Rebuild the occlusion tree when using foliage.DensityScale with something other than 1.0 Change 3894365 by Brandon.Schaefer Pass FileReference over a raw string to the LinkEnvironment #jira none #review-3894241 @Ben.Marsh, @Arciel.Rekman Change 3895251 by Brandon.Schaefer Use X11 pointer barriers to bound the cursor to a region over warping the pointers. Patch from Cengiz #jira UE-25615 #jira UE-30714 #review-3894886 @Arciel.Rekman Change 3897541 by Michael.Dupuis #jira UE-53787: Added guard if for some reason the material is null we should not try to draw using this material Change 3904143 by Rex.Hill #jira UE-55366: Fix crash when overwriting existing level during level save as #jira UE-42426: Map '_BuiltData' can now be deleted when selected at same time as map - Map '_BuiltData' package is now garbage collected when switching maps in the editor Change 3906373 by Brandon.Schaefer Fix splash image. Use alias format for big/little endian machines. #jira none Change 3906711 by Rex.Hill #jira UE-42426: BuiltData now deleted with maps Change 3907221 by Cody.Albert Add support for relative asset source paths in content plugins Change 3911670 by Alexis.Matte Fix assetimportdata creation owner #jira UE-55567 Change 3912382 by Anthony.Bills Linux: Add binaries for GoogleTest and add to BuildThirdParty script. Change 3914634 by Cody.Albert Added missing include that could cause compile errors if IWYU was disabled. Change 3916227 by Cody.Albert Fixing some cases where we check #ifdef WITH_EDITOR instead of #if WITH_EDITOR Change 3917245 by Michael.Dupuis #jira UE-35097: Fixed crash when creating a new landscape with 2x2 subsection and material containing grass spawning Change 3918331 by Anthony.Bills Linux: Bundled Mono - Explicilty pick libc.so.6 as libc.so is a linker script and store the config file directly. Change 3920191 by Rex.Hill #jira UE-44197 Fix saving sub-level level causing MapBuildData to be deleted Improved MapBuildData rename, move, duplicate, copy Change 3920333 by Matt.Kuhlenschmidt Render target clear color property now settable in editor #jira UE-55347 Change 3926094 by Michael.Dupuis #jira UE-51502: Added some min/max values to foliage and grass settings to prevent overflow/crash #coderevew jack.porter Change 3926243 by Michael.Dupuis #jira UE-54669: cleaned up invalid/duplicate shader and moved some shaders to appropriate list Change 3926760 by Jamie.Dale Added support for TTC/OTC fonts These can be used via a sub-face index on FFontData, which can be set via a new combo in the font editor. You can also see the cached list of sub-faces within a font file from the UFontFace asset. Change 3927793 by Anthony.Bills Mono: Remove SharpZipLib and references from bundled Mono. #review-3887212 @ben.marsh, @michael.trepka Change 3928029 by Anthony.Bills Linux: Add support for UnrealVersionSelector. - Supports using UVS to launch without a project file. This will then launch the selected engine's project wizard. - Linux UVS uses Slate for the version selection and error log dialogs. - Mime-types and desktop file support added to DesktopPlatformLinux to allow associating with UVS as per the Windows binary and git builds. - Icons added for Linux. #review-3882197 @arciel.rekman, @brandon.schaefer Change 3931293 by Alexis.Matte Add generic Levenshtein edit distance to core algo. This algorithm will help suggesting name matching when users have to resolve material name conflict when re-import fbx meshes. Add also plenty of automation tests for it. #jira none Change 3931436 by Arciel.Rekman Stop RHI thread before shutting down RHI. - Prevents crashes for some drivers that create TLS objects with destructors; those destructors will get called after the thread exited, but the library will already be unloaded on RHI shutdown. Change 3934287 by Alexis.Matte Fix crash when re-importing skeletal mesh. Skinned component render data resource is now release when re-importing. #jira none Change 3937585 by Lauren.Ridge Added labels to the colors stored in the theme bar. Change 3937738 by Alexis.Matte Make sure content browser do not show a preview asset created when we cancel an export animation preview #jira UE-49743 Change 3941345 by Michael.Dupuis #jira UE-26959: Prevent reusing multiple type the same grass type into the same material grass output node Change 3941453 by Michael.Dupuis #jira UE-47492: Added a guard to validate LayerIndex Change 3942065 by Jamie.Dale Fixed crash trying to use FSlateApplication when it wasn't available (eg, in a commandlet) Change 3942573 by Alexis.Matte Fix static analysis Change 3942623 by Michael.Dupuis #jira 0 Cast to ulong as TaskIndex * NumStripes could exceed an int limit and add an assert if the wraparound is negative Change 3942993 by Matt.Kuhlenschmidt PR #4547: Verify the return value of FT_New_Memory_Face (Contributed by jorgenpt) Change 3942998 by Matt.Kuhlenschmidt PR #4554: Cleanup log printing (Contributed by projectgheist) Change 3943003 by Matt.Kuhlenschmidt PR #4534: Prevent Fatal log when alt tabbing during a level save (Contributed by projectgheist) Change 3943011 by Matt.Kuhlenschmidt PR #4518: edit (Contributed by pdlogingithub) Change 3943027 by Matt.Kuhlenschmidt PR #4524: Notifications always render on the screen with the main viewport (Contributed by projectgheist) Change 3943074 by Matt.Kuhlenschmidt PR #4484: Add group actor to folder (Contributed by ggsharkmob) Change 3943079 by Matt.Kuhlenschmidt PR #4431: Git Plugin: replace usage of the 2 cli args "--work-tree" and "--git-dir" by "-C" (Contributed by SRombauts) Change 3943092 by Matt.Kuhlenschmidt PR #4434: Git plugin: configure the default remote URL 'origin' (Contributed by SRombauts) Change 3943132 by Matt.Kuhlenschmidt PR #4247: Add File picker to Git Path setting on GitSourceControl (Contributed by shiena) Change 3943141 by Matt.Kuhlenschmidt PR #4303: Fix ULevelExporterT3D so that it works in a commandlet (Contributed by DSDambuster) Change 3943349 by Jamie.Dale Cleaned up PR #4547 Made the assert non-fatal to avoid it being able to take down the editor if you load up a bad font. Fixed some code that was deleted during the merge. Change 3943976 by Michael.Trepka Copy of CL 3940687 Fixed long link times when building for Mac in Debug by passing -no_deduplicate flag to the linker, which is what Xcode does in Debug configs. #jira none Change 3944882 by Matt.Kuhlenschmidt Fix a few regressions with scene viewport activation locking can capturing the cursor in editor #jira UE-56080, UE-56081 Change 3947339 by Michael.Dupuis #jira UE-55664: Fixed undo/redo buffer handling so we remove from the beginning of the buffer during undo buffer where buffer is at max memory and from the end during redo operation. Fixed cancel also to re add removed transaction at the end or the start depending if we're doing a redo or undo operation Fixed the Undo History UI to listen to an event when the undo buffer changed instead of checking every frame, as when the buffer was full, no changes would occur, thus no UI update. Change 3948179 by Jamie.Dale Fixed monochromatic font rendering - All non-8bpp images are now converted to 8bpp images for processing in Slate. - We convert the gray color of any images not using 256 grays (eg, monochromatic images that use 2 grays). - Fixed a case where the temporary bitmap wasn't being deleted. - Fixed a case where the bitmap could be used after it was deleted. - Added a CVar (Slate.EnableFontAntiAliasing) to control whether you want anti-aliased (256 grayscale) rendering (default), or monochromatic (2 grayscale) rendering. Change 3949922 by Alexis.Matte Ensure fbx node name are not empty when loading a fbx file. I use the same naming convention as Maya #jira UE-56079 Change 3950202 by Rex.Hill Fix crash during editor asset automation tests. Now skips showing modal progress window when opening asset editor window. ActiveTopLevelWindow is not set when modal windows are open. #jira UE-56112 Change 3950484 by Michael.Dupuis #jira UE-52176: delete the Cluster tree when the builder is no longer needed Change 3954628 by Michael.Dupuis Bring back 4.19/4.19.1 Landscape changes Change 3957037 by Michael.Dupuis #jira UE-53343: Add foliage instances back when changing component size Changed the formulation for the Clip/Expand behavior to make it more explicit on what will happen Added SlowTask stuff to manage big landscape change Change 3959020 by Rex.Hill Rename/move file MallocLeakDetection.h Change 3960325 by Michael.Dupuis Fixed static analysis Change 3961416 by Michael.Dupuis #jira UE-46100: Exposed UseDynamicInstanceBuffer on Foliage type, so user can decide if they want to update them dynamically #jira UE-55092: Fixed the warning to appear when having resource array as empty but VB as set up Added data conssitency that when using Dynamic buffer, Keep CPU Access should also be true, even if implicitly it's already the case, now it's explicit Change 3962372 by Michael.Trepka Copy of CL 3884121 Fix for SProgressBar rendering incorreclty on Mac #jira UE-56241 Change 3964931 by Anthony.Bills Linux: Add cross-compiled binary of UVS Shipping. Change 3966719 by Matt.Kuhlenschmidt Fix parameters out of order here #jira UE-56399 Change 3966724 by Matt.Kuhlenschmidt PR #4585: Export symbols for the FDragTool (Contributed by Begounet) Change 3966734 by Matt.Kuhlenschmidt PR #4596: fix the slider issue of the HighResolutionScreenshot window (Contributed by mamoniem) Change 3966739 by Matt.Kuhlenschmidt Removed duplicated code #jira UE-56369 Change 3966744 by Matt.Kuhlenschmidt PR #4602: Fixes check for existing extensions when generating "All Extensions". (Contributed by PhilBax) Change 3966758 by Matt.Kuhlenschmidt PR #4604: Fixed an issue where the Modules and DebugTools tabs would be unrecognized after startup if docked in the level editor (Contributed by tstaples) Change 3966780 by Matt.Kuhlenschmidt Fix crash accessing graph node title widgets when objects have become stale. #jira UE-56442 Change 3966884 by Alexis.Matte Fix speedtree uninitialized values #jira none Change 3967568 by Alexis.Matte Do not override the screensize when importing a skeletal mesh, let the value set by the AddLodInfo function #jira UE-56493 Change 3968333 by Brandon.Schaefer Fix order of operation #jira UE-56400 Change 3969070 by Anthony.Bills Linux: Make sure to set the UE_ENGINE_DIRECTORY #jira UE-56503 #review-3966609 @arciel.rekman, @brandon.schaefer Change 3971431 by Michael.Dupuis #jira UE-56515: Fixed an issue where ForcedLOD > MaxLOD and make sure that LastLOD will at least contain current streamed in LOD. #jira UE-56517: When using ParallelInitView 1 there was a memory leak related to a reallocate that happen with the TArray of FMemstack Pass correctly LODDistanceFactor instead of View.LODScale as we do not want StaticMeshScale to affect us. Change 3971467 by Matt.Kuhlenschmidt Fixed crash deleting a texture with texture painting on it #jira UE-56994 Change 3971557 by Matt.Kuhlenschmidt Fix temporary exporter objects being potentially GC'd and causing crashes during export #jira UE-56981 Change 3971713 by Cody.Albert PR #4597: [FPS Template] Small null pointer check fix and cleanup (Contributed by TheCodez) Change 3971846 by Michael.Dupuis #jira UE-56517: Properly "round" the count so we have the right amount of memory reserved #jira UE-56515: Still had a edge case left, so when using forced lod i simply make sure the value is in valid range, and allocate all the required data for this range Change 3973035 by Nick.Atamas Line and Spline rendering changes: * Lines/Splines now use 1 UV channel to anti-alias (this channel can be used for texturing) * Anti-aliasing filter now adjusted based on resolution * Modified Line/Spline topology to accomodate new UV requirements * Disabled vertex snapping for anti-aliased lines/splines; previously vertexes were snapped, but vertex positions did not affect line rendering (behavior effectively unchanged) * Splines now adaptively subdivided to avoid certain edge-cases Change 3973345 by Nick.Atamas - Number tweaks to maintain previously perceived wire thickness in various editors. Change 3977764 by Rex.Hill MallocTBB no longer debug fills bytes in development configuration Change 3978713 by Arciel.Rekman UVS: Fix stale dependency. Change 3980520 by Matt.Kuhlenschmidt Fix typo #jira UE-57059 Change 3980557 by Matt.Kuhlenschmidt Fixed negative pie window sizes causing crashes #jira UE-57100 Change 3980565 by Matt.Kuhlenschmidt PR #4628: Fixed revert action, now correctly uses CanRevert() condition (Contributed by Kryofenix) Change 3980568 by Matt.Kuhlenschmidt PR #4626: UE-57111: Handle CaptureRegion for HighResShot in PIE (Contributed by projectgheist) Change 3980580 by Matt.Kuhlenschmidt PR #4567: [Editor UI] Pick Parent Class dialog: set keyboard focus and handle Escape & Enter (Contributed by SRombauts) Change 3980581 by Matt.Kuhlenschmidt PR #4565: [Editor UI] Add C++ Class dialog: set keyboard focus and handle Escape & Enter (Contributed by SRombauts) Change 3981341 by Jamie.Dale Re-added GIsEditor condition around package namespace access #jira UE-55816 Change 3981808 by Ryan.Brucks Added LandscapeProxy functions to push RenderTarget data to Heightmaps and Weightmaps Change 3983344 by Jack.Porter #include fixes for CL 3981808 #jira 0 Change 3983391 by Jack.Porter One for #include fix for CL 3981808 #jira 0 Change 3983562 by Michael.Dupuis #jira UE-53787: Make sure the material array is valid before trying to generate static mesh batch element #jira UE-56451: Instead of asserting, simply skip this element as it had invalid custom data anyway, so we can't render it Change 3983600 by Matt.Kuhlenschmidt PR #4289: Pragma Once/Include guard cleanup (Contributed by projectgheist) Change 3983637 by Matt.Kuhlenschmidt PR #4408: Add a template pregeneration hook (Contributed by mhutch) Change 3984392 by Michael.Dupuis #jira UE-56314: Correctly apply LODBias on calculated LOD Fixed some Landscape popping that could occur when we were forcing a LOD that didn't match the component screen size Change 3984950 by Rex.Hill Optimized texture import speed 2-3x depending on number of cpu cores and image size Change 3985033 by Rex.Hill File drag and drop is more quick to respond when editor is in background #jira UE-57192 Change 3986218 by Jack.Porter Missing template parameter fix for CL 3981808 #jira 0 Change 3986376 by Michael.Dupuis #jira UE-56453: Do not use the CreateDynamicMaterialInstance as it will change the parenting of the actor used material, instead simply use the function to generate the MID and parent it correctly. Change 3989391 by Matt.Kuhlenschmidt Fix constant FName lookup in level editor when checking various states of level editor tabs Change 3990182 by Rex.Hill Optimize editor startup time: GetCurrentProjectModules Change 3990365 by Alexis.Matte Fix crash with spline mesh when the attach SM get a new imported LOD #jira UE-57119 Change 3991151 by Rex.Hill VR Editor module now waits to load images until VR mode activated in editor. Saves 0.4 seconds of editor startup time. Change 3991164 by Rex.Hill Optimize editor startup time: FindModulePaths() - Invalidates cache when search paths added - Use cache during wildcard searches containing * and ? Change 3995366 by Anthony.Bills Update BuildCrossToolchain script to allow a Linux host targeting multiple Linux architectures (including the hosts arch). Added a patch to support a gcc 4.8.5 based toolchain on windows (potentially useful for users crosscompiling using GCC and libstdc++ and targeting CentOS 7). #review-3848487 @arciel.rekman, @brandon.schaefer Change 3996109 by Jamie.Dale Reworked BP error messages to be more localization friendly #jira UETOOL-1356 Change 3996123 by Michael.Dupuis #jira UE-57427: Update random color on load of the component #jira UE-56272: Change 3996279 by Merritt.Cely Removed hardware survey from editor #jira an-2243 #tests launched the editor Change 3996626 by Alexis.Matte Fix crash when SkeletalMesh tangent buffer is empty after the build and we serialize the tangent array. #jira UE-57227 Change 3996663 by Max.Chen Sequencer: Fix fbx animation export - rotation and scale channels were flipped. #jira UE-57509 #jira UE-57512 #jira UE-57514 Change 4000331 by Brandon.Schaefer Add a GFNameTableForDebuggerVisualizers_MT back only for Unix under the Core module #review-3999426 @Arciel.Rekman #jira UE-55298 Change 4000450 by Matt.Kuhlenschmidt Another guard against a factory being destroyed during import #jira UE-57674 Change 4000459 by Matt.Kuhlenschmidt Added check for valid game viewport to see if this is the problem in UE-57677 #jira UE-57677 Change 4000493 by Matt.Kuhlenschmidt Remove stale GC'd components when refreshing paint mode to prevent crashes #jira UE-52618 Change 4000683 by Jamie.Dale Fixed target being incorrect when added via the Localization Dashboard #jira UE-57588 Change 4000738 by Alexis.Matte Add a section settings to ignore the section when reducing #jira UE-52580 Change 4000920 by Alexis.Matte PR #4219: Fix for SColorGradingPicker preventing PIE (Contributed by projectgheist) author projectgheist projectgheist@gmail.com Change 4001432 by Alexis.Matte Add a fbx re-import resolve material windows, user can now help resolving the material in case the importer fail to found a match. Change 4001447 by Jamie.Dale Fixed property table not working with multi-line editable text Change 4001449 by Jamie.Dale PR #4531: Localization multiline fix (Contributed by Lallapallooza) Change 4001557 by Alexis.Matte Fix a check in fbx scene importer, in case the user import a fbx LOD group with no geometry under it #jira UE-57676 Change 4002539 by Alexis.Matte Make the fbx importer global transform options persist in the config file #jira UE-50897 Change 4002562 by Anthony.Bills Linux: Enable UVS registering for git builds only and remove old Mono and pre-UVS script code. Change 4003241 by Alexis.Matte Fix the staticmesh import socket logic, it was duplicating socket when re-importing #jira UE-53635 Change 4003368 by Michael.Dupuis #jira UE-57276: #jira UE-56239: #jira UE-54547: Make sure we can't go above MaxLOD even for texture streaming Change 4003534 by Alexis.Matte Fix re-import mesh name match #jira UE-56485 Change 4005069 by Michael.Dupuis #jira UE-57594: Add a guard to prevent crash if we have an invalid resource for the heightmap texture (happen when component is deleted, for example) Change 4005468 by Lauren.Ridge Widgets should not be removed from parent when they are pending GC #jira UE-52260 Change 4006075 by Michael.Dupuis Fixed foliage density scaling to be applied even in editor, except in Foliage edit mode. Change 4006332 by Arciel.Rekman UBT: Adding support for bundled toolchains on Linux. - Authored by Anthony Bills, with modifications. Change 4007528 by Matt.Kuhlenschmidt PR #4665: Source control History Window: enlarge column Description (Contributed by SRombauts) Change 4007531 by Matt.Kuhlenschmidt PR #4656: UE-57200: Ignore reference to actor if same actor (Contributed by projectgheist) Change 4007548 by Matt.Kuhlenschmidt PR #4664: Set Password on EditableText (Contributed by projectgheist) Change 4007730 by Brandon.Schaefer Add a new way to symbolicate symbols for a crash at runtime Two new tools are used for this. 1) dump_syms Will generate a symbol file, which is to large to read from at runtime 2) BreakpadSymbolEncoder Takes the dump_syms file and encodes it in such a way we can do a binary search at runtime to find a Program Counter to a symbol we are looking for #review @Arciel.Rekman, @Anthony.Bills #jira UETOOL-1206 Change 4008429 by Lauren.Ridge Fixing undo bug when deleting user widgets from the widget tree #jira UE-56394 Change 4008581 by Cody.Albert Reinitialize needs to set the audio and caption tracks in addition to the video track or the currently selected track will be lost Change 4009605 by Lauren.Ridge Added Recently Opened assets filter under Other Filters in the Content Browser Change 4009797 by Anthony.Bills Linux: Update MultiArchRoot path to not cache. Move in tree toolchain location to match UBT convention and make sure the MultiArchRoot is checked before the system. Change 4010266 by Michael.Trepka Copy of CL 4010052 Moved some key event handling calls to the main thread on Mac to satisfy new macOS requirements #jira UE-54623 Change 4010838 by Arciel.Rekman Linux: limit allowed clang versions to 3.8-6.0. Change 4012160 by Matt.Kuhlenschmidt Changed the messagiing on the crash reporter dialog to reflect new bug submission process #jira UE-56475 Change 4013432 by Lauren.Ridge Fix for non-assets attempting to add to the Content Browser's recent filter #jira none Change 4016353 by Cody.Albert Improved copy/paste behavior for UMG editor: -Pasting in the designer while a canvas is selected will place the new widget under the cursor -Pasting multiple times while a canvas panel is selected in the hierarchy view will cascade the widgets starting at 0,0 -Pasting while something that isn't a panel is selected is now allowed, and will cascade the pasted widgets off the position of the selected widget (as siblings) -Newly pasted widgets will now be selected automatically -Pasting multiple widgets at once will try and maintain their relative positions if they're being pasted into a canvas panel Change 4017274 by Matt.Kuhlenschmidt Added some guards against invalid property handle access #jira UE-58026 Change 4017295 by Matt.Kuhlenschmidt Fix trying to apply delta to a mix of scene components and non scene components. Its acceptable to not have scene components in the selected component list #jira UE-57980 Change 4022021 by Rex.Hill Fix for audio desync and video fast-forwarding behavior. There long delay (500ms+) until samples start arriving unless we use RequestedTimeCurrent. After delay occurs samples begin arriving at accelerated speed until caught up to playback time leading to visual and audio problems. #jira UE-54592 Change 4023608 by Brandon.Schaefer Downscale memory if we dont have enough #jira UE-58073 #review-4023609 @Arciel.Rekman Change 4025618 by Michael.Dupuis #jira UE-58036: Apply world position offset correctly Change 4025661 by Michael.Dupuis #jira UE-57681: Added guard to prevent possible crash if either we have an invalid material or the material parent is invalid Change 4025675 by Michael.Dupuis #jira UE-52919: if no actor was found in the level skip moving the instances Change 4026336 by Brandon.Schaefer Manually generate *.sym files for Physx3 This should be done in the BuildPhysx file Change 4026627 by Rex.Hill Fix memory leak fix when playing video and main thread blocks #jira UE-57873 Change 4029635 by Yannick.Lange Fix VRMode loading assets only when VRMode starts. #jira UE-57797 Change 4030288 by Jamie.Dale Null FreeType face on load error to prevent potential crashes Change 4030782 by Rex.Hill Fix save BuildData after changing reflection capture in a new level #jira UE-57949 Change 4033560 by Michael.Dupuis #jira UE-57710: Added some guard to prevent crash/assert Change 4034244 by Michael.Trepka Copy of CL 4034116 Fixed arrow keys handling on Mac Change 4034708 by Lauren.Ridge PR #4699: UE-8508: Update config file to keep folder color in sync (Contributed by projectgheist) #jira UE-58251 Change 4034746 by Lauren.Ridge PR #4701: Add option to close tabs to the right of the active tab (Contributed by jesseyeh) #jira UE-58277 Change 4034873 by Lauren.Ridge Fix for not being able to enter simulate more than once in a row. #jira UE-58261 Change 4034922 by Lauren.Ridge PR #4387: Commands mapped in incorrect location (Contributed by projectgheist) #jira UE-53752 Change 4035484 by Lauren.Ridge Tentative fix for crash on pasting comment. All other accesses to UMaterialExpressionComment check its validity first #jira UE-57979 Change 4037111 by Brandon.Schaefer Try to use absolute path from dladdr if we can to find the sym files #jira UE-57858 #review-4013964 @Arciel.Rekman Change 4037366 by Brandon.Schaefer Dont check the command line before its inited #review-4037183 @Arciel.Rekman #jira UE-57947 Change 4037418 by Alexis.Matte Remove the checkSlow when adding polygon Change 4037745 by Brandon.Schaefer Use as much info as we can during ensure Just as fast as the old way but with more information #review-4037495 @Arciel.Rekman #jira UE-47770 Change 4037816 by Rex.Hill Import mesh optimization, BuildVertexBuffer Change 4037957 by Arciel.Rekman UBT: make it easier to try XGE on Linux. Change 4038401 by Lauren.Ridge Reordering is now correctly handled by undo. Reordering and then undoing will no longer cause a "ghost" widget to also be part of the tree. #jira UE-58206 Change 4039612 by Anthony.Bills Unix: Check for null StdOut and ReturnCode parameters, otherwise the code may dereference a null variable when the process fails to create. Change 4039754 by Alexis.Matte Remove the Render meshdescription, no need to carry this temporary data in the staticmesh Change 4039806 by Anthony.Bills Linux: UVS fixes - Update to use new Unix base platform. - Use bin/bash instead of usr/bin/bash (may need revisiting later). - Recompile Shipping version with changes. - Update Setup.sh to run from correct CWD (due to current limitations in the relative directory handling). Change 4039883 by Lauren.Ridge PR #4576: Save editor config to file first time a fav folder is added in the co. (Contributed by projectgheist) #jira UE-56249 Change 4040117 by Lauren.Ridge Replacing widgets should now also clear out references to the widget #jira UE-57045 Change 4040790 by Lauren.Ridge Tentative fix for Project Launcher crash when platform info not found #jira UE-58371 Change 4042136 by Arciel.Rekman UBT: refactor of LinuxToolChain to make it leaner and more configurable. - Made it possible to override SDK passed to the toolchain. - Simplified the code by using the same executable names on Windows and Linux (as .exe is optional), except where File.Exists() is needed (also remove a few) - Some minor renames to make it clear that SystemSDK means system compiler (which otherwise may be unclear) - Made changes to accomodate the new debug format. Change 4042930 by Brandon.Schaefer GCoreObjectArrayForDebugVisualizers was changed to FChunkedFixedUObjectArray reflect that in the Unix part Change 4043539 by Brandon.Schaefer Fix callsite address being used at times for the Program Counter Fix only reporting the actual callstack and not the crash handling callstacks #review-4041370 @Arciel.Rekman #jira UE-58477 Change 4043674 by Arciel.Rekman Added Linux ARM64 (AArch64) lib for MikkTSpace. - Now required for standalone games due to EditableMesh runtime plugin. Change 4043677 by Arciel.Rekman Linux: updated ARM64 (AArch64) version of SDL2. Change 4043690 by Arciel.Rekman Linux: allow compiling VulkanRHI for AArch64 (ARM64). Change 4045467 by Brandon.Schaefer Add Anthony Bills SetupToolchain.sh script Used to download the latest toolchain Change 4045940 by Michael.Trepka Return empty list instead of null from Mac GetDebugInfoExtensions() in UBT #jira UE-58470 Change 4046542 by Alexis.Matte Fix skeletal re-import material assignation #jira UE-58551 Change 4048262 by Brandon.Schaefer Rebuild SDL with pulse audio libs #jira UE-58577 Change 3887093 by Anthony.Bills Add bundled mono binary for Linux. - Unify some of the script structure across Mac and Linux. - This currently uses the same mono C# assemblies as Mac to keep the additional source size down. - If the Mac mono version is updated, the Linux version will also need to be updated to match the same mono git revision. - The system version of mono can still be used by setting the UE_USE_SYSTEM_MONO env var to 1. Change 4003226 by Michael.Dupuis Refactored StaticMeshInstancing to now use a command buffer to communicate with the GPU to prevent concurent access issues. It's mostly used in Editor or if runtime changes occur, otherwise the data is built and send to the GPU directly without keeping CPU copy. Changed how the density scaling was applied to be more optimal Removed UseDynamicInstanceBuffer as the concept is now irrelevant Change 3833097 by Jamie.Dale Localization Pipeline Optimization Manifest/Archives: Added FLocKey to keep an immutable string and its hash. This is used in several places within manifests and archives to minimize string hashing. FLocTextHelper also now take these in its API. This also fixes some places where manifests were being iterated by key rather than source string (as this was causing redundant work). Portable Object: Cleaned up a lot of redundant code, changed things to use FLocKey, and simplified a lot of string manipulation to use algorithms instead (which proved to be faster). Asset Gathering: Optimized the way garbage collection runs while gathering from assets so that we avoid purging assets that we still need to gather from (or are still active dependencies). This also sorts the assets so that we can try and evict dependencies from memory as soon as possible (in much the same way that the cooker does). Automation: The gather commandlet can now take multiple configs to process. This is used by automation to avoid starting the editor several times (which can save a significant amount of start-up overhead). [CL 4052378 by Lauren Ridge in Main branch]
2018-05-04 14:14:10 -04:00
TWeakObjectPtr<UEdGraphNode> GraphNode;
FNodeTextCache NodeTitleCache;
FName ExtraLineStyle;
const ISlateStyle* StyleSet;
/** The cached head title to return */
FText CachedHeadTitle;
/** The title text to use, auto-binds to get the title if not set externally */
TAttribute< FText > TitleText;
/** The cached size of the title */
FVector2D CachedSize;
protected:
// Gets the expected node title
FText GetNodeTitle() const;
// Rebuilds the widget if needed
void RebuildWidget();
};
/////////////////////////////////////////////////////
// SGraphNode
class GRAPHEDITOR_API SGraphNode : public SNodePanel::SNode
{
public:
// SWidget interface
virtual void OnDragEnter( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent ) override;
virtual void OnDragLeave( const FDragDropEvent& DragDropEvent ) override;
virtual FReply OnDragOver( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent ) override;
virtual FReply OnDrop( const FGeometry& MyGeometry, const FDragDropEvent& DragDropEvent ) override;
virtual FReply OnMouseButtonDown( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
virtual FReply OnMouseButtonUp( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
virtual FReply OnMouseButtonDoubleClick( const FGeometry& InMyGeometry, const FPointerEvent& InMouseEvent ) override;
virtual TSharedPtr<IToolTip> GetToolTip() override;
virtual void OnToolTipClosing() override;
virtual void Tick( const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime ) override;
// End of SWidget interface
// SNodePanel::SNode interface
virtual void MoveTo( const FVector2D& NewPosition, FNodeSet& NodeFilter, bool bMarkDirty = true ) override;
virtual FVector2D GetPosition() const override;
virtual FString GetNodeComment() const override;
virtual UObject* GetObjectBeingDisplayed() const override;
// End of SNodePanel::SNode interface
/** Set attribute for determining if widget is editable */
void SetIsEditable(TAttribute<bool> InIsEditable);
Modified the dragdrop operations in the blueprint graphs to respect read only attributes set on either graphs or nodes. #TTP 334976 - BLUEPRINTS: Drag-dropping can still create nodes in read-only graphs (e.g., during PIE or when viewing an anim parent graph) #Branch UE4 #Proj GraphEditor #Add added SGraphPanel::IsGraphEditable so nodes and objects placed in the graph can easily determine if the graph is read only. #Change Modified SGraphPanel::OnDragLeave to restore the tooltip if a FDecoratedDragDropOp has been modified to indicate that the graph is read only. #Change Modified SGraphPanel::OnDragOver to change the icon on the tooltip to a lined circle if the graph is read only. #Change Modified SGraphPanel::OnDrop to exit without changes if the graph is read only. #Change Modified FGraphEditorDragDropAction to present feedback to the user if the drag drop target is invalid. this is activated by setting FGraphEditorDragDropAction::SetDropTargetValid, this just collpases the active icon and displays a lined circle with the same tooltip when set to false. #Add added SGraphNode::IsNodeEditable to determine if the node is currently editable, based on an evaluation of the IsEditable attribute and the parent graphs IsGraphEditable. #Change modified SGraphNode::OnDragOver to display a lined circle if the parent graph or the node is read only. #Change modified SGraphNode::OnDrop to exit without changes if the parent graph or the node is read only. #Change modified SGraphPin::OnDrop to exit without changes if the parent graph or the owner node is read only. ReviewedBy Chris.Wood, Nick.Whiting [CL 2109030 by Ben Cosh in Main branch]
2014-06-18 05:04:59 -04:00
/** Returns if widget is editable, additionally considers if the owning graph is read only */
virtual bool IsNodeEditable() const;
Modified the dragdrop operations in the blueprint graphs to respect read only attributes set on either graphs or nodes. #TTP 334976 - BLUEPRINTS: Drag-dropping can still create nodes in read-only graphs (e.g., during PIE or when viewing an anim parent graph) #Branch UE4 #Proj GraphEditor #Add added SGraphPanel::IsGraphEditable so nodes and objects placed in the graph can easily determine if the graph is read only. #Change Modified SGraphPanel::OnDragLeave to restore the tooltip if a FDecoratedDragDropOp has been modified to indicate that the graph is read only. #Change Modified SGraphPanel::OnDragOver to change the icon on the tooltip to a lined circle if the graph is read only. #Change Modified SGraphPanel::OnDrop to exit without changes if the graph is read only. #Change Modified FGraphEditorDragDropAction to present feedback to the user if the drag drop target is invalid. this is activated by setting FGraphEditorDragDropAction::SetDropTargetValid, this just collpases the active icon and displays a lined circle with the same tooltip when set to false. #Add added SGraphNode::IsNodeEditable to determine if the node is currently editable, based on an evaluation of the IsEditable attribute and the parent graphs IsGraphEditable. #Change modified SGraphNode::OnDragOver to display a lined circle if the parent graph or the node is read only. #Change modified SGraphNode::OnDrop to exit without changes if the parent graph or the node is read only. #Change modified SGraphPin::OnDrop to exit without changes if the parent graph or the owner node is read only. ReviewedBy Chris.Wood, Nick.Whiting [CL 2109030 by Ben Cosh in Main branch]
2014-06-18 05:04:59 -04:00
/** Set event when node is double clicked */
void SetDoubleClickEvent(FSingleNodeEvent InDoubleClickEvent);
/** @param OwnerPanel The GraphPanel that this node belongs to */
virtual void SetOwner( const TSharedRef<SGraphPanel>& OwnerPanel );
/** @return the editable title for a node */
FString GetEditableNodeTitle() const;
/** @return the editable title for a node */
FText GetEditableNodeTitleAsText() const;
/** @return the tint for the node's title image */
FSlateColor GetNodeTitleColor() const;
/** @return the tint for the node's comment */
FSlateColor GetNodeCommentColor() const;
/** @return the tint for the node's main body */
FSlateColor GetNodeBodyColor() const;
/** @return the image brush to use for the node */
virtual const FSlateBrush * GetNodeBodyBrush() const;
/** @return the tint for the node's title icon */
FSlateColor GetNodeTitleIconColor() const;
/** @return the tint for the node's title text */
FLinearColor GetNodeTitleTextColor() const;
/** @return the tooltip to display when over the node */
FText GetNodeTooltip() const;
/** @return the node being observed by this widget*/
UEdGraphNode* GetNodeObj() const;
/** @return the node under the mouse (either this node or one of its children) */
virtual TSharedRef<SGraphNode> GetNodeUnderMouse(const FGeometry& MyGeometry, const FPointerEvent& MouseEvent);
TSharedPtr<SGraphPanel> GetOwnerPanel() const;
/**
* Update this GraphNode to match the data that it is observing
*/
virtual void UpdateGraphNode();
/** Create the widgets for pins on the node */
virtual void CreatePinWidgets();
/** Create a single pin widget */
virtual void CreateStandardPinWidget(UEdGraphPin* Pin);
/**
* Get all the pins found on this node.
*
* @param AllPins The set of pins found on this node.
*/
void GetPins( TSet< TSharedRef<SWidget> >& AllPins ) const;
void GetPins( TArray< TSharedRef<SWidget> >& AllPins ) const;
/**
* Find the pin that is hovered.
*
* @param MyGeometry The geometry of the node
* @param MouseEvent Information about the mouse
*
* @return A pointer to the pin widget hovered in this node, or invalid pointer if none.
*/
virtual TSharedPtr<SGraphPin> GetHoveredPin( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) const;
TSharedPtr<SGraphPin> FindWidgetForPin( UEdGraphPin* ThePin ) const;
void PlaySpawnEffect();
/** Given a coordinate in SGraphNode space, return the same coordinate in graph space while taking zoom and panning of the parent graph into account */
FVector2D NodeCoordToGraphCoord( const FVector2D& PanelSpaceCoordinate ) const;
FVector2D GetContentScale() const;
FLinearColor GetColorAndOpacity() const;
FLinearColor GetPinLabelColorAndOpacity() const;
/** Set event when text is committed on the node */
void SetVerifyTextCommitEvent(FOnNodeVerifyTextCommit InOnVerifyTextCommit);
/** Set event when text is committed on the node */
void SetTextCommittedEvent(FOnNodeTextCommitted InDelegate);
/** Set event when the user generates a warning tooltip because a connection was invalid */
void SetDisallowedPinConnectionEvent(SGraphEditor::FOnDisallowedPinConnection InOnDisallowedPinConnection);
/** called to replace this nodes comment text */
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888) #rb none #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2927746 on 2016/03/30 by Michael.Schoell Local variables in function graphs will now store a hard reference to their UObject value. Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint. #jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native Change 2927751 on 2016/03/30 by Michael.Schoell Back out changelist 2927746 Change 2986483 on 2016/05/23 by Maciej.Mroz #jira UE-30976 Editable enum values set on an instance are lost during nativization Added overriden names of Enum keys. Change 2986712 on 2016/05/23 by Phillip.Kavan [UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class. change summary: - modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root. Change 2987406 on 2016/05/23 by Ryan.Rauschkolb Fixed Functions filter in Find-In-Blueprints will show components from the SCS #jira UE-30140 Change 2988925 on 2016/05/24 by Ryan.Rauschkolb Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph. #jira UE-20232 Change 2989001 on 2016/05/24 by Dan.Oconnor PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner) #jira UE-31142 Change 2989447 on 2016/05/25 by Phillip.Kavan [UE-30807] Propagate edit condition property value changes to instances of template objects. change summary: - modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO) Change 2989804 on 2016/05/25 by Phillip.Kavan [UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class. change summary: - modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component Change 2990234 on 2016/05/25 by Ryan.Rauschkolb Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph #jira UE-4426 Change 2990566 on 2016/05/25 by Mike.Beach Better warn logging to help locate variable nodes that emit a "variable not found" message. Change 2991083 on 2016/05/26 by Maciej.Mroz Blueprint nativization: converted classes have "config" specified. Change 2991363 on 2016/05/26 by Phillip.Kavan [UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components. change summary: - modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text - modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed) - modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass - modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects Change 2992990 on 2016/05/27 by Ryan.Rauschkolb Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node #jira UE-21973 Change 2992995 on 2016/05/27 by Ryan.Rauschkolb Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked. #jira UE-30990 Change 2993449 on 2016/05/27 by Phillip.Kavan [UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing. change summary: - modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type. Change 2993531 on 2016/05/27 by Mike.Beach PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell) Change 2993969 on 2016/05/30 by Maciej.Mroz UE-30729 Crash in Native Orion when selecting Sword or Tomahawk Clear AsyncLoading in subobjects. Change 2993990 on 2016/05/30 by Phillip.Kavan [UE-30984] Exclude reroute nodes from Blueprint profiler node mapping. change summary: - modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links. - modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links. - modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points. - modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points. Change 2994591 on 2016/05/31 by Ryan.Rauschkolb Fixed issue where inherited Blueprint variable would not show parent's replications settings #jira UE-18912 Change 2994613 on 2016/05/31 by Ben.Cosh Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal. #Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher #Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy #Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler #Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab #Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status #Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented #Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out #Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean" #Jira UE-31377 - BP Profiler - Default tree view filtering to off #Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP #Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)" Notes:- - Sequence node inclusive time fixed - Trace History tidy up - Compile Icon and status messages for instrumentation - Message in the profiler tab for instrumentation - Profiler view tidy up and heat thresholds controls added - fixed the summed execution branch stats - fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396 - added hottest path and hottest endpoint wire heatmaps - switched off the graph filter by default - added total time for the heatmaps - fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code Change 2995058 on 2016/05/31 by Phillip.Kavan [UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running. change summary: - modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class. - modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context. Change 2995218 on 2016/05/31 by Phillip.Kavan [UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size. change summary: - modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout. Change 2996417 on 2016/06/01 by Phillip.Kavan [UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor. change summary: - modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object. Change 2997001 on 2016/06/01 by Ryan.Rauschkolb Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component #jira UE-30143 Change 2997521 on 2016/06/02 by Maciej.Mroz [Blueprint Nativization] - Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h - Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated. Change 2997522 on 2016/06/02 by Maciej.Mroz Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization) Change 2997638 on 2016/06/02 by Maciej.Mroz Improvements for Blueprint Nativization: - Overridden names in nativized code have proper escape characters (in generated code). - OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared - Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>) - warning C4883 is disabled in .generated.cpp files for nativized module Change 2997639 on 2016/06/02 by Maciej.Mroz Minor improvements in Ocean gameplay code. Required for Blueprint Nativization. #jira UE-28945 Failure packaging Nativized Ocean Change 2997656 on 2016/06/02 by Maciej.Mroz Various improvements in BlueprintCompilerCppBackend: - Fixed interface cast - Fixed TSwitchValue issue (when used with literals) - Fixed improper name for NativeBlueprintEvent (when calling parent's implementation) - Fixed bitfield getter code. - Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums) - operator == is generated for nativized structs - Fixed AssedId (AssetPtr) constructor in nativized code. - Fixed arrays of noexport struct - Fixed missing headers for native single cast delegate signature. - Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata. Change 2997691 on 2016/06/02 by Maciej.Mroz operator == in FText. It is required for some functions in TArray<FText> Change 2997793 on 2016/06/02 by Ben.Cosh Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter #Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh #Proj BlueprintProfiler, Kismet Change 2997901 on 2016/06/02 by Maciej.Mroz Back out changelist 2997691 Change 2998038 on 2016/06/02 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 2998052 on 2016/06/02 by Ryan.Rauschkolb Fixed Comment bubbles not remembering changes after losing focus #jira UE-20012 Change 2998450 on 2016/06/02 by Phillip.Kavan [UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata. change summary: - modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it. Change 2999763 on 2016/06/03 by Mike.Beach Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes. #jira UE-26761 Change 2999768 on 2016/06/03 by Maciej.Mroz #jira UE-31592, UE-31593 This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty. Change 2999770 on 2016/06/03 by Maciej.Mroz [Blueprint Nativization] Workaround for missing ==operator in native structures. The generated code uses special version of array funtions. Change 2999798 on 2016/06/03 by Mike.Beach Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor. #jira UE-31522 Change 2999941 on 2016/06/03 by Mike.Beach Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning). #jira UE-23371 Change 3001731 on 2016/06/06 by Phillip.Kavan [UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target. change summary: - modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events. - modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field. - modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals. - modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events. Change 3002075 on 2016/06/06 by Maciej.Mroz Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend. Literal expression can be emitted without known desitination property. #jira UE-28443 Set Boolean (by ref) crashes the editor on compile Change 3002096 on 2016/06/06 by Ben.Cosh This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs. #Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called #Proj BlueprintProfiler Change 3002108 on 2016/06/06 by Ben.Cosh Adds a new default option to average the blueprint level stats in the profiler. #Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged #Proj Kismet, BlueprintProfiler - The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward. Change 3002782 on 2016/06/06 by samuel.proctor Test assets for Interface testing Change 3003826 on 2016/06/07 by Ben.Cosh A few minor visual improvements for the blueprint profiler. #Proj Kismet, BlueprintProfiler, EditorStyle - Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors. - Updated the pure node icon. Change 3004067 on 2016/06/07 by samuel.proctor New test asset for blueprint interfaces Change 3004069 on 2016/06/07 by samuel.proctor Updating asset for Interface testing Change 3004275 on 2016/06/07 by Ryan.Rauschkolb Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility #jira UE-23733 Change 3004329 on 2016/06/07 by Dan.Oconnor EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced. Change 3004418 on 2016/06/07 by Maciej.Mroz KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value. Change 3004496 on 2016/06/07 by Dan.Oconnor Disabling expensive pin allocation tracking Change 3004649 on 2016/06/07 by Mike.Beach Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors). #jira UE-31236 Change 3004667 on 2016/06/07 by Dan.Oconnor Removed my debugging logic Change 3004848 on 2016/06/07 by Dan.Oconnor Fix spammy ensure Change 3004871 on 2016/06/07 by Phillip.Kavan [UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view. change summary: - modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO). - modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts. Change 3005203 on 2016/06/07 by Dan.Oconnor Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems #jira UE-31750 Change 3005441 on 2016/06/08 by Maciej.Mroz #jira UE-31625 Crash in nativized Orion AssembleReferenceTokenStream is called for Dynamic Classes: - in ConstructDynamicType() (when class is explicitly loaded) - in __CustomDynamicClassInitialization() (when CDO is created) Change 3005540 on 2016/06/08 by Ben.Cosh This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring. #Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE #Proj BlueprintProfiler, Kismet - The jira was already fixed but I think this change improves the instance status clarity Change 3006196 on 2016/06/08 by Dan.Oconnor Copy/paste logic for pin connections got lost in the shuffle #jira UE-31747 Change 3006416 on 2016/06/08 by Phillip.Kavan [UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order). change summary: - modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load. Change 3006522 on 2016/06/08 by Dan.Oconnor Under rare circumstances a deprecated pin comes in that is outered to the transient package #jira UE-31779 Change 3006576 on 2016/06/08 by Dan.Oconnor Fix for non-editor builds #jira UE-31796 Change 3006610 on 2016/06/08 by Phillip.Kavan [UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance. change summary: - modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO. Change 3006824 on 2016/06/08 by Dan.Oconnor More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays #jira UE-31794 Change 3006828 on 2016/06/08 by Dan.Oconnor Fix for non-editor builds Change 3006857 on 2016/06/08 by Dan.Oconnor Investigating shutdown ensure, traced back to a static UEdGraphPin Change 3006907 on 2016/06/08 by Dan.Oconnor Noneditor build fix Change 3006929 on 2016/06/08 by Dan.Oconnor Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779 Change 3007133 on 2016/06/09 by Ben.Cosh Fix for issue in the profiler asserting creating pins that don't have unique names. #Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed #Proj BlueprintProfiler - I believe this was recently introduced with the changes to UEdGraphPin's Change 3007964 on 2016/06/09 by Dan.Oconnor Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo #jira UE-31829 Change 3007996 on 2016/06/09 by Ryan.Rauschkolb Added 'empty' keyword to Array Clear Node. #jira UE-12356 Change 3008007 on 2016/06/09 by Ryan.Rauschkolb Added 'negate' keyword to boolean NOT node #jira UE-12490 Change 3008011 on 2016/06/09 by Ryan.Rauschkolb Added Vector2D * Vector2D multiplication node #jira UE-31503 Change 3008014 on 2016/06/09 by Ryan.Rauschkolb Fixed Cannot connect Make Array node output to MakeArray input with split pins #jira UE-28530 Change 3008243 on 2016/06/09 by Dan.Oconnor Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe' #jira UE-31841 Change 3008289 on 2016/06/09 by Dan.Oconnor Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later #jira UE-31794 Change 3008422 on 2016/06/09 by Dan.Oconnor Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out) #jira UE-31857 Change 3009164 on 2016/06/10 by Ryan.Rauschkolb Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel. #jira UE-21141,UE-23723 Change 3009165 on 2016/06/10 by Ryan.Rauschkolb Fixed Structure Default value editor collapses after undoing an alteration of a default value #jira UE-31741 Change 3009181 on 2016/06/10 by Ryan.Rauschkolb Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh #jira UE-30014 Change 3009313 on 2016/06/10 by Mike.Beach Addressing issues with function return nodes in multiple ways: - Preventing users from deleting return nodes for overriden/inherited functions. - Also making sure that we create terminals for out params when the return node is disconnected (and pruned). - Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function). #jira UE-31418 Change 3009595 on 2016/06/10 by Dan.Oconnor EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile #jira UE-31879 Change 3009774 on 2016/06/10 by Dan.Oconnor Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return #jira UE-31906 Change 3009988 on 2016/06/10 by Dan.Oconnor Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization #jira UE-31888 Change 3010050 on 2016/06/10 by Dan.Oconnor Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved #jira UE-31892 Change 3010071 on 2016/06/10 by Dan.Oconnor Fix for pasting when owning node has whitespace in result of GetPathName #jira UE-31898 #coderview Bob.Tellez Change 3010244 on 2016/06/11 by Dan.Oconnor Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870 Change 3010630 on 2016/06/13 by Dan.Oconnor No longer relying on path name for pin resolution, path is unstable across graphs #jira UE-31870 Change 3010647 on 2016/06/13 by Dan.Oconnor PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays) #jira UE-31928 Change 3011175 on 2016/06/13 by Ben.Cosh Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance. #Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert #Proj Kismet, BlueprintProfiler - Ensured that the trace paths contain the macro instance exec nodes - Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates. - Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does. Change 3011271 on 2016/06/13 by Ben.Cosh This adds support for inherited blueprint classes to the blueprint profiler. #Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro. #Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed #Proj BlueprintProfiler Change 3011556 on 2016/06/13 by Ryan.Rauschkolb Fixed Crash when breaking link to a split pin in MakeArray that is an array type #jira UE-31919 Change 3011624 on 2016/06/13 by Dan.Oconnor Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating. #jira UE-31955 Change 3011984 on 2016/06/13 by Dan.Oconnor Sanitizing parentpin's subpins when destroying a pin #jira UE-21392 Change 3012894 on 2016/06/14 by Phillip.Kavan [UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing. change summary: - modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types. #jira UE-30922 Change 3013037 on 2016/06/14 by Ryan.Rauschkolb Fixed Crash when connecting to a split pin in a MakeArray node that has no connections #jira UE-31917 Change 3014846 on 2016/06/15 by Dan.Oconnor No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change) #jira FORT-23753 Change 3015014 on 2016/06/15 by Dan.Oconnor Removing poorly implement IsLetter function Change 3015142 on 2016/06/15 by Dan.Oconnor More intentional about removing subpins, prevents stale iterator on split pin collapse #jira UE-32072 Change 3016326 on 2016/06/16 by Ryan.Rauschkolb Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values #jira UE-32016 Change 3016494 on 2016/06/16 by Ryan.Rauschkolb Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class #jira UE-31876 Change 3016557 on 2016/06/16 by Dan.Oconnor Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark #jira FORT-23753 Change 3016577 on 2016/06/16 by Ryan.Rauschkolb Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType Change 3016906 on 2016/06/16 by Dan.Oconnor Back out changelist 3016557 This will be done by Jamie.Dale in Dev-Editor Change 3018081 on 2016/06/17 by Phillip.Kavan [UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus) #jira UE-31832 Change 3018402 on 2016/06/17 by Dan.Oconnor Missing include Change 3018426 on 2016/06/17 by Ryan.Rauschkolb Fixed MakeArray node with split pins and no connections does not paste correctly #jira UE-32148 Change 3018452 on 2016/06/17 by Mike.Beach Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load). #jira UE-32158 Change 3018456 on 2016/06/17 by Dan.Oconnor Fix for static analysis warning, this null check does nothing Change 3018595 on 2016/06/17 by Mike.Beach Fix for shadowed variable warning in CIS. Change 3018699 on 2016/06/17 by Mike.Beach Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing). Change 3019734 on 2016/06/20 by Phillip.Kavan [UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes. change summary: - added a UK2Node_AddComponent::PostDuplicate() override - moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides. notes: - will prevent getting into the scenario described in UE-31831 #jira UE-32064 Change 3020635 on 2016/06/20 by Dan.Oconnor Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile) Change 3020894 on 2016/06/21 by Maciej.Mroz #2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell) Change 3020958 on 2016/06/21 by Ben.Cosh This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling. #Jira UE-32270 - Input key events generate extra instrumentation data per key press #Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation. #Proj BlueprintProfiler, UnrealEd Change 3021316 on 2016/06/21 by Ryan.Rauschkolb Fixed issue where Copy/Paste of event nodes would not retain link information Change 3021826 on 2016/06/21 by Phillip.Kavan [UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object. change summary: - added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API - modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates #jira UE-31831 Change 3022047 on 2016/06/21 by Ryan.Rauschkolb Fixed issue where copy/paste of return nodes would not preserve value or link data #jira UE-26937 Change 3022619 on 2016/06/22 by Maciej.Mroz #jira UE-30858 Nativized Orion - Some particle effects are not rendering A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added. It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry. Fixed GameplayCueManager. Nativized cues can be found. This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage). Change 3022654 on 2016/06/22 by Maciej.Mroz FBackendHelperStaticSearchableValues -fixed too strict ensure Change 3023067 on 2016/06/22 by Maciej.Mroz #jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor. Change 3023222 on 2016/06/22 by Ryan.Rauschkolb Fixed MakeArray node elements break when editing struct elements #jira UE-21392 Change 3023405 on 2016/06/22 by Mike.Beach Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran). #jira UE-31897 Change 3023992 on 2016/06/22 by Mike.Beach Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions. #jira UE-31859 [CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
virtual void OnCommentTextCommitted(const FText& NewComment, ETextCommit::Type CommitInfo);
/** called when the node's comment bubble is toggled */
Copying //UE4/Dev-Blueprints to //UE4/Dev-Main (Source: //UE4/Dev-Blueprints @ 3025888) #rb none #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2927746 on 2016/03/30 by Michael.Schoell Local variables in function graphs will now store a hard reference to their UObject value. Fixes a crash when a Blueprint is saved before compiling with the local variable's value set. Ensures that the UObject is loaded with the Blueprint. #jira UE-27738 - Local variables in a function that is in a blueprint will somehow become invalid when calling a native Change 2927751 on 2016/03/30 by Michael.Schoell Back out changelist 2927746 Change 2986483 on 2016/05/23 by Maciej.Mroz #jira UE-30976 Editable enum values set on an instance are lost during nativization Added overriden names of Enum keys. Change 2986712 on 2016/05/23 by Phillip.Kavan [UE-21010] Apply updated transform to component template instances when changing the scene root in a Blueprint class. change summary: - modified SSCS_RowWidget::OnMakeNewRootDropAction() to propagate the location/rotation reset to instances of the component template that's becoming the new scene root. Change 2987406 on 2016/05/23 by Ryan.Rauschkolb Fixed Functions filter in Find-In-Blueprints will show components from the SCS #jira UE-30140 Change 2988925 on 2016/05/24 by Ryan.Rauschkolb Fixed Issue where certain primitives would not automatically type cast to Text in Blueprint graph. #jira UE-20232 Change 2989001 on 2016/05/24 by Dan.Oconnor PR #2418: Fixed a typo in Blueprint.h (Contributed by PistonMiner) #jira UE-31142 Change 2989447 on 2016/05/25 by Phillip.Kavan [UE-30807] Propagate edit condition property value changes to instances of template objects. change summary: - modified FPropertyEditor::SetEditConditionState() to propagate an EditConditionProperty value change to all instances if the outer owning object is a template (e.g. CDO) Change 2989804 on 2016/05/25 by Phillip.Kavan [UE-30289] Preserve relative scale on the root scene component when converting an Actor instance to a Blueprint Class. change summary: - modified FKismetEditorUtilities::CreateBlueprintFromActor() to post-copy the relative scale value from the Actor's root component to the new Blueprint CDO's root component Change 2990234 on 2016/05/25 by Ryan.Rauschkolb Fixed issue where including a period ina Blueprint function causes double-click to fail to open its graph #jira UE-4426 Change 2990566 on 2016/05/25 by Mike.Beach Better warn logging to help locate variable nodes that emit a "variable not found" message. Change 2991083 on 2016/05/26 by Maciej.Mroz Blueprint nativization: converted classes have "config" specified. Change 2991363 on 2016/05/26 by Phillip.Kavan [UE-19599] Copy-and-paste of Actor instances from level to Blueprint/IWCE component tree views now adds properly-initialized components. change summary: - modified FCustomizableTextObjectFactory::CanCreateObjectsFromText() to handle "Begin Actor/End Actor" blocks in T3D text - modified FCustomizableTextObjectFactory::ProcessBuffer() to handle "Begin Actor/End Actor" blocks in T3D text (so that Actor-type objects can be processed) - modified FComponentObjectTextFactory::CanCreateClass() to allow Actor-type objects to pass - modified FComponentObjectTextFactory::ProcessConstructedObject() to handle Actor-type objects and pull out owned component instances as constructed objects Change 2992990 on 2016/05/27 by Ryan.Rauschkolb Fixed issue where Connecting Self Reference Pin to a String pin does not fully connect the generated GetDisplayName node #jira UE-21973 Change 2992995 on 2016/05/27 by Ryan.Rauschkolb Fixed issue where GetClass node is not listed in the Context Menu when pulling from a self node and Context Sensitive is checked. #jira UE-30990 Change 2993449 on 2016/05/27 by Phillip.Kavan [UE-31379] Don't instrument "preview" Actor instances during Blueprint profiler script event processing. change summary: - modified FBlueprintProfiler::InstrumentEvent() to check for and bypass Actor instances belonging to a preview or inactive world type. Change 2993531 on 2016/05/27 by Mike.Beach PR #2433: Interface functions inherited from a native base class now appear in . (Contributed by MichaelSchoell) Change 2993969 on 2016/05/30 by Maciej.Mroz UE-30729 Crash in Native Orion when selecting Sword or Tomahawk Clear AsyncLoading in subobjects. Change 2993990 on 2016/05/30 by Phillip.Kavan [UE-30984] Exclude reroute nodes from Blueprint profiler node mapping. change summary: - modified FBlueprintFunctionContext::MapInputPins() to pass through non-relevant nodes when iterating through non-exec input pin links. - modified FBlueprintFunctionContext::MapExecPins() to pass through non-relevant nodes when iterating through output exec pin links. - modified FBlueprintFunctionContext::MapTunnelEntry() to pass through non-relevant nodes when iterating through tunnel node exit points. - modified FBlueprintFunctionContext::MapTunnelInstance() to pass through non-relevant nodes when iterating through tunnel graph entry points. Change 2994591 on 2016/05/31 by Ryan.Rauschkolb Fixed issue where inherited Blueprint variable would not show parent's replications settings #jira UE-18912 Change 2994613 on 2016/05/31 by Ben.Cosh Minor refactor and Various fixes to the blueprint profiler moving towards MVP goal. #Jira UE-27039 - Blueprint Profiler does not lists stats when calling an Event Dispatcher #Jira UE-31396 - Blueprint profiler crashes inside the profiler connection drawing policy #Jira UE-30957 - "Pure Time" does not populate with data in the Blueprint Profiler #Jira UE-30926 - Blueprint profiler - expose heatmap thresholds to user through the profiler tab #Jira UE-30909 - Blueprint Profiler - "compile" icon should denote Blueprint's instrumented status #Jira UE-30911 - Blueprint profiler tab/panel should display warning when Blueprint is uninstrumented #Jira UE-31385 - BP Profiler - Inclusive time column should be entirely filled out #Jira UE-31375 - BP Profiler - Default sample averaging to the "arithmetic mean" #Jira UE-31377 - BP Profiler - Default tree view filtering to off #Jira UE-31387 - BP Profiler - Remove the "view type" button for MVP #Jira UE-31384 - BP Profiler - In the tree view, rename the first time column "Avg. Time (ms)" Notes:- - Sequence node inclusive time fixed - Trace History tidy up - Compile Icon and status messages for instrumentation - Message in the profiler tab for instrumentation - Profiler view tidy up and heat thresholds controls added - fixed the summed execution branch stats - fixed the connection drawing policy to use branch pin stats and fixed the crash from UE-31396 - added hottest path and hottest endpoint wire heatmaps - switched off the graph filter by default - added total time for the heatmaps - fixed issue where initialising mapped functions caused an assert due to changes to the array/map in initialisation code Change 2995058 on 2016/05/31 by Phillip.Kavan [UE-30718] Native/const implementable events will no longer cause a crash at runtime when the Blueprint profiler is running. change summary: - modified UObject::ProcessEvent() to bypass instrumentation for native event functions that are not implemented (overridden) in a BP class. - modified FScriptEventPlayback::Process() to first check for a standalone function match (UCS, implementable events declared as 'const') before settling on the ubergraph function for the target context. Change 2995218 on 2016/05/31 by Phillip.Kavan [UE-30778] Restored non-K2 compact graph nodes (e.g. Material Editor) to previous size. change summary: - modified SGraphNode::GetNodeIndicatorOverlayVisibility() default impl to return 'Collapsed' by default, so it doesn't affect layout. Change 2996417 on 2016/06/01 by Phillip.Kavan [UE-16073] Basic shape components (cube etc.) will now apply the correct override material to instances after being added through the component tree in the Blueprint editor. change summary: - modified the 'OnBasicShapeCreated' lambda in FComponentTypeRegistryData::AddBasicShapeComponents() to propagate the material override to all instances when the given component is an archetype (template) object. Change 2997001 on 2016/06/01 by Ryan.Rauschkolb Fixed Double Clicking a component in the results of Find-In-Blueprints does not select the component #jira UE-30143 Change 2997521 on 2016/06/02 by Maciej.Mroz [Blueprint Nativization] - Added FilesToIncludeInModuleHeader config variable in BlueprintNativizationSettings. So some headers can be included in NativizedAssets.h - Guids of nodes are no longer recreated when Blueprint is duplicated for "C++ compilation". Previously child bp used variable names based on original parent class, but nativized parent class had guids recreated. Change 2997522 on 2016/06/02 by Maciej.Mroz Native implementation of NOEXPORT FInterpCurvePoint structures. (It's necessary for Blueprint nativization) Change 2997638 on 2016/06/02 by Maciej.Mroz Improvements for Blueprint Nativization: - Overridden names in nativized code have proper escape characters (in generated code). - OnlyDefaultConstructorDeclared metadata is replaced by ObjectInitializerConstructorDeclared - Arrays of nativized anum have the following form: TArray<Enum> (previously it was TArray<TEnumAsByte<Enum>>) - warning C4883 is disabled in .generated.cpp files for nativized module Change 2997639 on 2016/06/02 by Maciej.Mroz Minor improvements in Ocean gameplay code. Required for Blueprint Nativization. #jira UE-28945 Failure packaging Nativized Ocean Change 2997656 on 2016/06/02 by Maciej.Mroz Various improvements in BlueprintCompilerCppBackend: - Fixed interface cast - Fixed TSwitchValue issue (when used with literals) - Fixed improper name for NativeBlueprintEvent (when calling parent's implementation) - Fixed bitfield getter code. - Reduce code size (less UsedAssets, less ReferencedConvertedFields, cached UEnums) - operator == is generated for nativized structs - Fixed AssedId (AssetPtr) constructor in nativized code. - Fixed arrays of noexport struct - Fixed missing headers for native single cast delegate signature. - Fixed issue when default constructor (in native) is missing (constructor with FObjectInitialized, wont be used automatically). See "ObjectInitializerConstructorDeclared" metadata. Change 2997691 on 2016/06/02 by Maciej.Mroz operator == in FText. It is required for some functions in TArray<FText> Change 2997793 on 2016/06/02 by Ben.Cosh Added support for BaseAsyncTask nodes, fixed a problem with instance mapping and turned off the debug instance filter #Jira UE-30703 - Crash using blueprint profiler on AI pawn using nav mesh #Proj BlueprintProfiler, Kismet Change 2997901 on 2016/06/02 by Maciej.Mroz Back out changelist 2997691 Change 2998038 on 2016/06/02 by Mike.Beach Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints) Change 2998052 on 2016/06/02 by Ryan.Rauschkolb Fixed Comment bubbles not remembering changes after losing focus #jira UE-20012 Change 2998450 on 2016/06/02 by Phillip.Kavan [UE-31550] Fix crash on load of a Blueprint class containing a bitmask variable with missing enum type metadata. change summary: - modified FBlueprintEditorUtils::ValidateBlueprintVariableMetadata() to check for presence of bitmask enum type metadata on a variable before trying to validate it. Change 2999763 on 2016/06/03 by Mike.Beach Guarding against a crash with an ensure - attempting to catch why this is happening by logging more info, as we're unable to repro it. Guarding against nodes which reference malformed (TRASH) classes. #jira UE-26761 Change 2999768 on 2016/06/03 by Maciej.Mroz #jira UE-31592, UE-31593 This is just workaound. FReferenceFinder::FindReferences doesn;t find Enum variable in UByteProperty. Change 2999770 on 2016/06/03 by Maciej.Mroz [Blueprint Nativization] Workaround for missing ==operator in native structures. The generated code uses special version of array funtions. Change 2999798 on 2016/06/03 by Mike.Beach Guarding against malformed Blueprints (ones without valid "authoratative" class) used as context for the node menu. Baffling how we'd get into this scenario, but this adds ensures to hopefully give us clues and stabalize the editor. #jira UE-31522 Change 2999941 on 2016/06/03 by Mike.Beach Correcting mistake in previously attempted fix (CL 2781229). Now using weak ptr IsValid checks to guard against destroyed nodes in deferred graph actions (TWeakObjectPtr::Get() does not check IsValid before returning). #jira UE-23371 Change 3001731 on 2016/06/06 by Phillip.Kavan [UE-30638] BP profiler will no longer crash at runtime while profiling events that call functions on an external target. change summary: - modified FBlueprintProfiler::ProcessEventProfilingData() to only remove 'Class' and 'Instance' signals on new events. - modified FScriptEventPlayback::NodeSignalHelper struct to include a new 'BlueprintContext' field. - modified FScriptEventPlayback::Process() to handle midstream context switches by updating the Blueprint/Function context on 'Class' and/or 'Instance' signals. - modified FScriptEventPlayback::Process() to cache and reference the current Blueprint context within the cached NodeSignalHelper while handling processed events. Change 3002075 on 2016/06/06 by Maciej.Mroz Improved FScriptBuilderBase::EmitTermExpr in KismetCompilerVMBackend. Literal expression can be emitted without known desitination property. #jira UE-28443 Set Boolean (by ref) crashes the editor on compile Change 3002096 on 2016/06/06 by Ben.Cosh This change expands the way that the blueprint profiler detects event nodes during mapping to include other non function graphs. #Jira UE-30716 - Blueprint Profiler crashes if function in another graph is called #Proj BlueprintProfiler Change 3002108 on 2016/06/06 by Ben.Cosh Adds a new default option to average the blueprint level stats in the profiler. #Jira UE-31386 - BP Profiler - Timings reported with "Show Instances" off (in the tree view) are not averaged #Proj Kismet, BlueprintProfiler - The controls were also getting a bit messy so I tidied them all up into a re-usable toolbar for convenience going forward. Change 3002782 on 2016/06/06 by samuel.proctor Test assets for Interface testing Change 3003826 on 2016/06/07 by Ben.Cosh A few minor visual improvements for the blueprint profiler. #Proj Kismet, BlueprintProfiler, EditorStyle - Updated the actor icon to match the world outliner and added some functionality to draw attention to stale/deleted actors. - Updated the pure node icon. Change 3004067 on 2016/06/07 by samuel.proctor New test asset for blueprint interfaces Change 3004069 on 2016/06/07 by samuel.proctor Updating asset for Interface testing Change 3004275 on 2016/06/07 by Ryan.Rauschkolb Fixed issue where Toggle Comment Bubble button for Reroute nodes would not rever tthe comment bubble to constant visibility #jira UE-23733 Change 3004329 on 2016/06/07 by Dan.Oconnor EdGraphPin is no longer a UObject, this will improve load times significantly on projects with large number of blueprints, but content does need to be resaved in order to see the improvement in load time. UObject counts are also greatly reduced. Change 3004418 on 2016/06/07 by Maciej.Mroz KismetCompilerVMBackend: Fixed issue, when a byte property has no enum specified (for examle parameter from EqualEqual_ByteByte) but the enum is needed to parse a literal value. Change 3004496 on 2016/06/07 by Dan.Oconnor Disabling expensive pin allocation tracking Change 3004649 on 2016/06/07 by Mike.Beach Preventing a new warning from being generated on trace point exceptions (trace point exceptions are used to hook into the debugger, and don't represent errors). #jira UE-31236 Change 3004667 on 2016/06/07 by Dan.Oconnor Removed my debugging logic Change 3004848 on 2016/06/07 by Dan.Oconnor Fix spammy ensure Change 3004871 on 2016/06/07 by Phillip.Kavan [UE-24950] No longer including components instanced as default subobjects of and attached to components instanced by construction script in the IWCE component tree view. change summary: - modified SSCSEditor::UpdateTree() to exclude child components instanced in native code as "nested" DSOs and parented to non-natively-constructed (e.g. Blueprint) components; these instances are no longer being shown in IWCE in order to avoid confusion, as they're not currently mutable at the instance level, will always be parented to something that is visible in the tree, and they're also not currently shown in the Blueprint editor's component tree view (because they're not stored in the CDO). - modified FSceneComponentData's ctor to exclude child components instanced in native code as nested DSOs from the AttachedInstancedComponents array; this allows child components instanced as nested DSOs to be disposed of along with the constructed parent instance when re-running construction scripts. Change 3005203 on 2016/06/07 by Dan.Oconnor Fix for undo/redo/serialization issues with ed graph pin change. When serialization logic was applied incrementally our attempts to keep LinkedTo symetrical and aggressively clear destroyed nodes caused problems #jira UE-31750 Change 3005441 on 2016/06/08 by Maciej.Mroz #jira UE-31625 Crash in nativized Orion AssembleReferenceTokenStream is called for Dynamic Classes: - in ConstructDynamicType() (when class is explicitly loaded) - in __CustomDynamicClassInitialization() (when CDO is created) Change 3005540 on 2016/06/08 by Ben.Cosh This adds the ability to track profiler instances between editor and PIE instances and displays the current status through the icon coloring. #Jira UE-30705 - Blueprint profiler stats lost if instance destroyed during PIE #Proj BlueprintProfiler, Kismet - The jira was already fixed but I think this change improves the instance status clarity Change 3006196 on 2016/06/08 by Dan.Oconnor Copy/paste logic for pin connections got lost in the shuffle #jira UE-31747 Change 3006416 on 2016/06/08 by Phillip.Kavan [UE-31735] Fix potential loss of GetClassDefaults node output pin links on load (due to dependency load order). change summary: - modified UK2Node_GetClassDefaults::GetInputClass() to redirect to the generated skeleton class only if it's valid. this ensures that output pins will be reallocated during node reconstruction even if the dependent Blueprint's skeleton class has not yet been generated on load. Change 3006522 on 2016/06/08 by Dan.Oconnor Under rare circumstances a deprecated pin comes in that is outered to the transient package #jira UE-31779 Change 3006576 on 2016/06/08 by Dan.Oconnor Fix for non-editor builds #jira UE-31796 Change 3006610 on 2016/06/08 by Phillip.Kavan [UE-31743] Fix data loss issue when loading a serialized non-native component class instance that's owned by an Actor-based Blueprint class instance. change summary: - modified FObjectInitializer::InitProperties() to disable fast path initialization for non-native class types when the default data does not equate to the non-native CDO (as is also done within the native path). this is necessary because the optimized property list that we generate at load time to support fast path initialization of Blueprint class instances is only applicable to the generated CDO. Change 3006824 on 2016/06/08 by Dan.Oconnor More undo/redo fixes, this time fixes for when transaction buffer changes # of pins, thus destabalizing the LinkedTo arrays #jira UE-31794 Change 3006828 on 2016/06/08 by Dan.Oconnor Fix for non-editor builds Change 3006857 on 2016/06/08 by Dan.Oconnor Investigating shutdown ensure, traced back to a static UEdGraphPin Change 3006907 on 2016/06/08 by Dan.Oconnor Noneditor build fix Change 3006929 on 2016/06/08 by Dan.Oconnor Deferring DeprecatedPins destruction until after UBlueprint has had a chance to fix up its watched pins, this is a better fix for #jira UE-31779 Change 3007133 on 2016/06/09 by Ben.Cosh Fix for issue in the profiler asserting creating pins that don't have unique names. #Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed #Proj BlueprintProfiler - I believe this was recently introduced with the changes to UEdGraphPin's Change 3007964 on 2016/06/09 by Dan.Oconnor Fix for PinHelpers::UnresolvedPins being left with stale entries by undo/redo #jira UE-31829 Change 3007996 on 2016/06/09 by Ryan.Rauschkolb Added 'empty' keyword to Array Clear Node. #jira UE-12356 Change 3008007 on 2016/06/09 by Ryan.Rauschkolb Added 'negate' keyword to boolean NOT node #jira UE-12490 Change 3008011 on 2016/06/09 by Ryan.Rauschkolb Added Vector2D * Vector2D multiplication node #jira UE-31503 Change 3008014 on 2016/06/09 by Ryan.Rauschkolb Fixed Cannot connect Make Array node output to MakeArray input with split pins #jira UE-28530 Change 3008243 on 2016/06/09 by Dan.Oconnor Fix for creation of FWeakGraphPinPtr from a pin that had been destroyed, client logic is still a bit broken in the case of the ClassDefaults node, but we're back to 'safe' #jira UE-31841 Change 3008289 on 2016/06/09 by Dan.Oconnor Editor transaction saves all state before applying undo/redo buffers when using 'bFlip' flow. This prevents messing with the object graph in the middle of saving state that will be restored later #jira UE-31794 Change 3008422 on 2016/06/09 by Dan.Oconnor Correct usage of GIsTransacting, replaced with Ar.IsTransacting() to correctly handle the case where we serialize after transacting but during the transaction (for instance, recompile blueprint in post undo, which we do quite a bit it turns out) #jira UE-31857 Change 3009164 on 2016/06/10 by Ryan.Rauschkolb Making changes to default values in the structure editor will now make changes to the structure without rebuilding the default values panel. #jira UE-21141,UE-23723 Change 3009165 on 2016/06/10 by Ryan.Rauschkolb Fixed Structure Default value editor collapses after undoing an alteration of a default value #jira UE-31741 Change 3009181 on 2016/06/10 by Ryan.Rauschkolb Fixed issue where modifying a default value in a Widget Blueprint would cause the Details Panel to refresh #jira UE-30014 Change 3009313 on 2016/06/10 by Mike.Beach Addressing issues with function return nodes in multiple ways: - Preventing users from deleting return nodes for overriden/inherited functions. - Also making sure that we create terminals for out params when the return node is disconnected (and pruned). - Lastly, ensuring that new return nodes adhere to the function's signature (for cases, like where you copy/paste a return node from a different function). #jira UE-31418 Change 3009595 on 2016/06/10 by Dan.Oconnor EdGraphPinReference using PinId to resolve itself again, may create issues resolving pins created in compile #jira UE-31879 Change 3009774 on 2016/06/10 by Dan.Oconnor Fix for bad logic in RemovePin introduced in 3004329, just a bad reading of the logic, missed an early return #jira UE-31906 Change 3009988 on 2016/06/10 by Dan.Oconnor Prefer to use existing pins (based on PinId) when undoing/redoing pin serialization #jira UE-31888 Change 3010050 on 2016/06/10 by Dan.Oconnor Fixed missing call to ssuper class's PostEditUndo, fixed UBehaviorTreeGraph::PostEditUndo accessing Pins before they have been resolved #jira UE-31892 Change 3010071 on 2016/06/10 by Dan.Oconnor Fix for pasting when owning node has whitespace in result of GetPathName #jira UE-31898 #coderview Bob.Tellez Change 3010244 on 2016/06/11 by Dan.Oconnor Fix for trivial copy/paste error, causes crash when copying/pasting nodes with text default values, part of UE-31870 Change 3010630 on 2016/06/13 by Dan.Oconnor No longer relying on path name for pin resolution, path is unstable across graphs #jira UE-31870 Change 3010647 on 2016/06/13 by Dan.Oconnor PR #2496: Updated KismetMathLibrary comparison descriptions for FDateTime and FTimespan. (Contributed by CelPlays) #jira UE-31928 Change 3011175 on 2016/06/13 by Ben.Cosh Updates the Blueprint Profiler so that it can correctly map entry/exit from tunnels based on instance. #Jira UE-30106 - Compiling QA_PhysVelocitySettleTest with the blueprint profiler results in a crash/assert #Proj Kismet, BlueprintProfiler - Ensured that the trace paths contain the macro instance exec nodes - Selectively update stats in the tunnel exit site nodes based on valid exit sites to prevent cyclic updates. - Updated the comments in map tunnel entry to spare peoples sanity when trying to understand what that function does. Change 3011271 on 2016/06/13 by Ben.Cosh This adds support for inherited blueprint classes to the blueprint profiler. #Jira UE-31833 - The Blueprint profiler asserts when using a FlipFlop macro. #Jira UE-31752 - Crash compiling various Orion assets for blueprints profiling, ScriptExecNode.IsValid() failed #Proj BlueprintProfiler Change 3011556 on 2016/06/13 by Ryan.Rauschkolb Fixed Crash when breaking link to a split pin in MakeArray that is an array type #jira UE-31919 Change 3011624 on 2016/06/13 by Dan.Oconnor Fix for missing entries in MessageLog's source pin identification map. Bob T had originally populated this correctly, but somehow i lost it while iterating. #jira UE-31955 Change 3011984 on 2016/06/13 by Dan.Oconnor Sanitizing parentpin's subpins when destroying a pin #jira UE-21392 Change 3012894 on 2016/06/14 by Phillip.Kavan [UE-30922] Ensure that customized defaults are propagated to new instances at construction time during non-Actor-based Blueprint class reinstancing. change summary: - modified FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() to use the reinstanced archetype object as the template object during construction of the new instance for non-Actor-based Blueprint class types. #jira UE-30922 Change 3013037 on 2016/06/14 by Ryan.Rauschkolb Fixed Crash when connecting to a split pin in a MakeArray node that has no connections #jira UE-31917 Change 3014846 on 2016/06/15 by Dan.Oconnor No longer using FText::IsLetter to parse math expression nodes, that function is very slow. $x is now a valid math expression variable name (genereated a compile error prior to this change) #jira FORT-23753 Change 3015014 on 2016/06/15 by Dan.Oconnor Removing poorly implement IsLetter function Change 3015142 on 2016/06/15 by Dan.Oconnor More intentional about removing subpins, prevents stale iterator on split pin collapse #jira UE-32072 Change 3016326 on 2016/06/16 by Ryan.Rauschkolb Fixed MakeArray node does not reset to wildcard when breaking links with split struct pins that have default values #jira UE-32016 Change 3016494 on 2016/06/16 by Ryan.Rauschkolb Fixed Crash when dragging a component into the Event Graph that's inherited from a C++ class #jira UE-31876 Change 3016557 on 2016/06/16 by Dan.Oconnor Explicit copy/move of string data for FText, removes some redundant copying and object construction/destruction [which could be optimzed away], saves 2-3 seconds in my 80s load asset benchmark #jira FORT-23753 Change 3016577 on 2016/06/16 by Ryan.Rauschkolb Fixed compiler warning for hidden member variable in FBlueprintVarActionDetails::GetVariableReplicationType Change 3016906 on 2016/06/16 by Dan.Oconnor Back out changelist 3016557 This will be done by Jamie.Dale in Dev-Editor Change 3018081 on 2016/06/17 by Phillip.Kavan [UE-31832] PR #2486: Expose UInheritableComponentHandler::GetAllTemplates() outside of editor (Contributed by Bogustus) #jira UE-31832 Change 3018402 on 2016/06/17 by Dan.Oconnor Missing include Change 3018426 on 2016/06/17 by Ryan.Rauschkolb Fixed MakeArray node with split pins and no connections does not paste correctly #jira UE-32148 Change 3018452 on 2016/06/17 by Mike.Beach Moving the patching of instanced sub-objects out of CPFUO (where you can't rely on the target to be a replacement for the source) to FBlueprintEditorUtils::PatchCDOSubobjectsIntoExport(), and making it so PatchCDOSubobjectsIntoExport() is called regularly for Blueprint regeneration (on load). #jira UE-32158 Change 3018456 on 2016/06/17 by Dan.Oconnor Fix for static analysis warning, this null check does nothing Change 3018595 on 2016/06/17 by Mike.Beach Fix for shadowed variable warning in CIS. Change 3018699 on 2016/06/17 by Mike.Beach Making MinimumAreaRectangle callable in Blueprints without world context (which is only needed for debug drawing). Change 3019734 on 2016/06/20 by Phillip.Kavan [UE-32064] Clone associated component template(s) when duplicating Blueprint function graphs containing one or more Add Component nodes. change summary: - added a UK2Node_AddComponent::PostDuplicate() override - moved UK2Node_AddComponent::PostPasteNode() logic into a helper method that's now called from both PostDuplicate() and PostPasteNode() overrides. notes: - will prevent getting into the scenario described in UE-31831 #jira UE-32064 Change 3020635 on 2016/06/20 by Dan.Oconnor Fix for bad cast in FCompilerResultsLog::Append, could cause crashes in clients of this function (math expressions nodes occasionally do when they fail to compile) Change 3020894 on 2016/06/21 by Maciej.Mroz #2522: Interface UProperties can ExposeOnSpawn (in Blueprints) (Contributed by MichaelSchoell) Change 3020958 on 2016/06/21 by Ben.Cosh This improves the way key events are detected in the blueprint profiler, preventing duplicate event entries when pressed and released are both wired. It also catches a bug with the compiler instrumentation flag when compiling. #Jira UE-32270 - Input key events generate extra instrumentation data per key press #Jira UE-32266 - Recompiling blueprints with instrumentation can fail to add instrumentation. #Proj BlueprintProfiler, UnrealEd Change 3021316 on 2016/06/21 by Ryan.Rauschkolb Fixed issue where Copy/Paste of event nodes would not retain link information Change 3021826 on 2016/06/21 by Phillip.Kavan [UE-31831] Fix up AddComponent nodes on load if they are not associated with a unique template object. change summary: - added external linkage to UK2Node_AddComponent::MakeNewComponentTemplate(), and switched it to be a public API - modified FBlueprintEditorUtils::UpdateComponentTemplates() (as this is already called on Blueprint load) to detect/warn and correct non-unique templates #jira UE-31831 Change 3022047 on 2016/06/21 by Ryan.Rauschkolb Fixed issue where copy/paste of return nodes would not preserve value or link data #jira UE-26937 Change 3022619 on 2016/06/22 by Maciej.Mroz #jira UE-30858 Nativized Orion - Some particle effects are not rendering A static/persistent information (the mechanism is similar to AssetRegistrySearchable) about DynamicClass is added. It's necessary since DynamicClasses are not handled as regular assets by AssetRegistry. Fixed GameplayCueManager. Nativized cues can be found. This is an early version of the feature. Amount of stored persistent data can be extended (but it would increase memory-usage). Change 3022654 on 2016/06/22 by Maciej.Mroz FBackendHelperStaticSearchableValues -fixed too strict ensure Change 3023067 on 2016/06/22 by Maciej.Mroz #jira UE-32083 Nativize Blueprints removes blueprint functionality in packaged project Config settings from super class are not applied (at runtime) to nativized Blueprints . So all "config" properties are filled in constructor. Change 3023222 on 2016/06/22 by Ryan.Rauschkolb Fixed MakeArray node elements break when editing struct elements #jira UE-21392 Change 3023405 on 2016/06/22 by Mike.Beach Making sure sub-objects get instanced for Blueprint CDOs that had their FObjectInitializer deferred (happens when the super CDO hasn't been fully serialized). By the time the deferred FObjectInitializer is ran, the sub-objects have been assigned a RF_NeedLoad flag (where they normally wouldn't have one right after construction, when the initialization is usually ran). #jira UE-31897 Change 3023992 on 2016/06/22 by Mike.Beach Fixed an issue where hovering on/off a reroute node (toggling the comment bubble visibility) would create extraneous undo transactions. #jira UE-31859 [CL 3025946 by Mike Beach in Main branch]
2016-06-23 19:35:24 -04:00
virtual void OnCommentBubbleToggled(bool bInCommentBubbleVisible);
/** returns true if a rename is pending on this node */
bool IsRenamePending() const { return bRenameIsPending; }
/** Requests a rename when the node was initially spawned */
virtual void RequestRenameOnSpawn()
{
RequestRename();
}
/** flags node as rename pending if supported */
void RequestRename();
/** Sets node into rename state if supported */
void ApplyRename();
/** return rect of the title area */
virtual FSlateRect GetTitleRect() const;
/** Called from drag drop code when a disallowed connection is hovered */
void NotifyDisallowedPinConnection(const class UEdGraphPin* PinA, const class UEdGraphPin* PinB) const;
/** Gets the unscaled position of the node from the last tick */
FVector2D GetUnscaledPosition() const {return CachedUnscaledPosition;}
/** Returns the current Node LOD or Highest LOD if unable to query */
EGraphRenderingLOD::Type GetCurrentLOD() const;
/** Called when GraphNode changes its error information, may be called when no change has actually occurred: */
virtual void RefreshErrorInfo();
/** Called when ed graph data is cleared, indicating this widget can no longer safely access GraphNode - forwards call to owned pins: */
void InvalidateGraphData();
/** Returns true if the node is hiding its pins */
virtual bool IsHidingPinWidgets() const { return false; }
protected:
SGraphNode();
void PositionThisNodeBetweenOtherNodes(const TMap< UObject*, TSharedRef<SNode> >& NodeToWidgetLookup, UEdGraphNode* PreviousNode, UEdGraphNode* NextNode, float HeightAboveWire) const;
void PositionThisNodeBetweenOtherNodes(const TMap< UObject*, TSharedRef<SNode> >& NodeToWidgetLookup, TSet<UEdGraphNode*>& PreviousNodes, TSet<UEdGraphNode*>& NextNodes, float HeightAboveWire) const;
void PositionThisNodeBetweenOtherNodes(const FVector2D& PrevPos, const FVector2D& NextPos, float HeightAboveWire) const;
/**
* Check whether drag and drop functionality is permitted on the given node
*/
static bool CanAllowInteractionUsingDragDropOp( const UEdGraphNode* GraphNodePtr, const TSharedPtr<FActorDragDropOp>& DragDropOp );
/**
* Function to get error description string
*
* @return string to be displayed as tooltip.
*/
FText GetErrorMsgToolTip() const;
/**
* Add a new pin to this graph node. The pin must be newly created.
*
* @param PinToAdd A new pin to add to this GraphNode.
*/
virtual void AddPin( const TSharedRef<SGraphPin>& PinToAdd );
/** Hook that allows derived classes to supply their own SGraphPin derivatives for any pin. */
virtual TSharedPtr<SGraphPin> CreatePinWidget(UEdGraphPin* Pin) const;
/**
* Override this to provide support for an 'expensive' tooltip widget that is only built on demand
*/
virtual TSharedPtr<SToolTip> GetComplexTooltip() { return NULL; }
// Override this to add widgets below the node and pins
virtual void CreateBelowWidgetControls(TSharedPtr<SVerticalBox> MainBox) {}
// Override this to add widgets below the pins but above advanced view arrow
virtual void CreateBelowPinControls(TSharedPtr<SVerticalBox> MainBox) {}
/* Helper function to check if node can be renamed */
virtual bool IsNameReadOnly () const;
/** Called when text is being committed to check for validity */
bool OnVerifyNameTextChanged ( const FText& InText, FText& OutErrorMessage );
/* Called when text is committed on the node */
void OnNameTextCommited ( const FText& InText, ETextCommit::Type CommitInfo ) ;
/* Helper function to set the error color for the node */
FSlateColor GetErrorColor() const {return ErrorColor;}
/** Helper function to get any error text for the node */
FString GetErrorMessage() const {return ErrorMsg;}
/** Called to set error text on the node */
virtual void UpdateErrorInfo();
/** Set-up the error reporting widget for the node */
void SetupErrorReporting();
// Should we use low-detail node titles?
virtual bool UseLowDetailNodeTitles() const;
public:
// Should we use low-detail pin names?
virtual bool UseLowDetailPinNames() const { return false; }
protected:
/** Return the desired comment bubble color */
virtual FSlateColor GetCommentColor() const { return FLinearColor::White; }
///// ADVANCED VIEW FUNCTIONS /////
/** Create button to show/hide advanced pins */
void CreateAdvancedViewArrow(TSharedPtr<SVerticalBox> MainBox);
/** Returns visibility of AdvancedViewButton */
EVisibility AdvancedViewArrowVisibility() const;
/** Show/hide advanced view */
virtual void OnAdvancedViewChanged( const ECheckBoxState NewCheckedState );
/** hidden == unchecked, shown == checked */
ECheckBoxState IsAdvancedViewChecked() const;
/** Up when shown, down when hidden */
const FSlateBrush* GetAdvancedViewArrow() const;
/** Checks if the node is the only node selected */
bool IsSelectedExclusively() const;
virtual void SetDefaultTitleAreaWidget(TSharedRef<SOverlay> DefaultTitleAreaWidget) {}
virtual TSharedRef<SWidget> CreateTitleWidget(TSharedPtr<SNodeTitle> NodeTitle);
/** Optionally create a widget to dock to the right in the title bar of the node. */
virtual TSharedRef<SWidget> CreateTitleRightWidget();
/** Create the inner node content area, including the left/right pin boxes */
virtual TSharedRef<SWidget> CreateNodeContentArea();
///// ADD PIN BUTTON FUNCTIONS /////
/** Override this to create a button to add pins on the input side of the node */
virtual void CreateInputSideAddButton(TSharedPtr<SVerticalBox> InputBox) {};
/** Override this to create a button to add pins on the output side of the node */
virtual void CreateOutputSideAddButton(TSharedPtr<SVerticalBox> OutputBox) {};
/** Creates widget for an Add pin button, which can then be added to the node */
TSharedRef<SWidget> AddPinButtonContent(FText PinText, FText PinTooltipText, bool bRightSide = true, FString DocumentationExcerpt = FString(), TSharedPtr<SToolTip> CustomTooltip = NULL);
/** Checks whether Add pin button should currently be visible */
virtual EVisibility IsAddPinButtonVisible() const;
/** Callback function executed when Add pin button is clicked */
virtual FReply OnAddPin() {return FReply::Handled();}
/* Populate a meta data tag with information about this graph node */
virtual void PopulateMetaTag(class FGraphNodeMetaData* TagMeta) const;
Merging //UE4/Release-4.11 to //UE4/Main (Up to CL#2897738) ========================== MAJOR FEATURES + CHANGES ========================== Change 2875445 on 2016/02/22 by Matthew.Griffin Added UE4.natvis to Visual Studio Projects #jira UE-27153 Change 2875456 on 2016/02/22 by Keith.Judge Fix custom stencil shaders on Xbox One #jira UES-1387 Change 2875524 on 2016/02/22 by Robert.Manuszewski More log info when saving shader temp files fails. Increased the number of attemps when moving a file fails. #jira UE-20945 Change 2875698 on 2016/02/22 by Rolando.Caloca UE4.11 - Add new bool for RHIs (unused currently) #jira UE-24967 Change 2875897 on 2016/02/22 by Taizyd.Korambayil #jira UE-20324 Re-imported Cloth Skeletal Meshes to Fix odd Circle Highlights Change 2875922 on 2016/02/22 by Mieszko.Zielinski Fixed BP-implemented EQS generators crashing when trying to add generated value of wrong type #UE4 #jira UE-25034 #rb Lukasz.Furman Change 2875960 on 2016/02/22 by Michael.Trepka Added a way to disable right click emulation on Mac and used it in TabNavigator to fix issues with its widgets not reacting to clicking #jira UE-21895 Change 2875984 on 2016/02/22 by Michael.Schoell Split output struct pins will no longer give a warning about override pins being removed. #jira UE-27150 - Format Text nodes and split nodes reporting warning that override pins are removed. Change 2876169 on 2016/02/22 by Ben.Marsh Changes to support building UHT plugins with the binary release. * Add source code and target files for UHT to binary distribution * Fix UBT deleting build products if we're only compiling a single module. * Fix UBT exception setting up compile environment when a module doesn't have any source files set to build. * Include DLL import libraries for UHT in the build * Add support for compiling UHT modules in BuildPluginCommand. Stages an empty host project to allow UHT to load any enabled plugins. Change 2876219 on 2016/02/22 by Rolando.Caloca UE4.11 - Integration from 2874609 #jira UE-24967 PC: Update D3D12 RHI - Implement _RenderThread versions of Create, Lock and Unlock Index/Vertex Buffer. Only synchronize threads on Readback - Limit GPU starvation on CPU bound scenarios by flushing work when the GPU is idle - Change texture streaming system to correctly account for placed textures. Also fix texture sizes so they accurately represent the real size of the allocation the GPU. - Disable API shader blobs - Add the ability to easily change allocation stategy for a given pool, also add a simple linear allocator and a 'Multi-Buddy Allocator' for efficiency in different scenarios - Pool Fences to prevent creation and destruction every frame when using Async Compute - Implement _RenderThread versions of CreateShaderResourceView and CreateUnorderedAccessView Change 2876232 on 2016/02/22 by Rolando.Caloca UE4.11 - Integration from 2876173 #jira UE-24967 PC: Update D3D12 RHI - Fix ResizeBuffers() failing due to dangling references to the backbuffer if deferred deletion is used. - Reorder when pending FRHIResources are deleted. This still needs to flush all pending deletes and ignore the deferred deletion queue otherwise some items may still be left in the engine's queue. - Fix UT build error due to missing FPlatformMisc::GetGPUDriverInfo() Change 2876366 on 2016/02/22 by Douglas.Copeland Adding Skeletal Meshes for Import Test Case #jira UE-24473 Change 2876401 on 2016/02/22 by Peter.Sauerbrei fix for WindowsClient build from UFE and Project Launcher #jira UE-23897 Change 2876456 on 2016/02/22 by Ben.Marsh Use a more hierarchical directory structure for packaged builds, rather than just dumping everything in the root. Now defaults to <Share>\\PackagedBuilds\\<Branch>\\<CL>\\<ProjectName>_<Platform>_<Configuration>. Change 2876507 on 2016/02/22 by Nick.Shin use HOME (osx) and USERPROFILE (windows) on appropriate target platform #jira UE-26414 -- Mac is missing .emscripten file necessary for packaging or launching onto HTML5 Change 2876537 on 2016/02/22 by Dan.Oconnor Removed dubious fix for an old bug, no longer needed but I havn't figured out what has changed. This fixes a crash on Replace References, but does not reintroduce UE-9497 #jira UE-24891 Change 2876545 on 2016/02/22 by Chad.Taylor SteamVR camera late-update fix #jira UE-27254 Change 2876825 on 2016/02/22 by Dan.Oconnor Unfortunate edge case in lifetime of UEdGraph's schema, schema is assigned after construction so its modification is in the undo buffer, and we clear it after undoing. #jira UE-25956 Change 2876878 on 2016/02/22 by Nick.Whiting PSVR HMD Server support #jira UE-27262 [CL 2905127 by Matthew Griffin in Main branch]
2016-03-11 09:55:03 -05:00
/** Returns TRUE if the input pin should be hidden from view */
bool ShouldPinBeHidden(const UEdGraphPin* InPin) const;
/** Returns the widget to use for the enabled state of the node */
TSharedPtr<SWidget> GetEnabledStateWidget();
protected:
/** Input pin widgets on this node */
TArray< TSharedRef<SGraphPin> > InputPins;
/** Output pin widgets on this node */
TArray< TSharedRef<SGraphPin> > OutputPins;
/** The GraphPanel within in which this node resides.*/
TWeakPtr<SGraphPanel> OwnerGraphPanelPtr;
/** The GraphNode being observed by this widget */
UEdGraphNode* GraphNode;
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
/** The area where input pins reside */
TSharedPtr<SVerticalBox> LeftNodeBox;
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
/** The area where output pins reside */
TSharedPtr<SVerticalBox> RightNodeBox;
/** Used to display the name of the node and allow renaming of the node */
TSharedPtr<SInlineEditableTextBlock> InlineEditableText;
/** Error handling widget */
TSharedPtr<class IErrorReportingWidget> ErrorReporting;
FCurveSequence SpawnAnim;
FCurveHandle ZoomCurve;
FCurveHandle FadeCurve;
/** Is this node editable */
TAttribute<bool> IsEditable;
FSingleNodeEvent OnDoubleClick;
// Is the current tooltip a complex one that should be dropped when the tooltip is no longer displayed?
bool bProvidedComplexTooltip;
// Is a rename operation pending
bool bRenameIsPending;
/** Called whenever the text on the node is being committed interactively by the user, validates the string for commit */
FOnNodeVerifyTextCommit OnVerifyTextCommit;
/** Called whenever the text on the node is committed interactively by the user */
FOnNodeTextCommitted OnTextCommitted;
/** Called when the user generates a warning tooltip because a connection was invalid */
SGraphEditor::FOnDisallowedPinConnection OnDisallowedPinConnection;
/** Used to report errors on the node */
FString ErrorMsg;
/** Used to set the error color */
FSlateColor ErrorColor;
/** Caches true position of node */
FVector2D CachedUnscaledPosition;
/** Cached icon color for the node */
FLinearColor IconColor;
/** Cached pointer to graph editor settings */
const class UGraphEditorSettings* Settings;
};