Commit Graph

83 Commits

Author SHA1 Message Date
yohann dossantos
59b5769eca -Text font size changes in Text Box (Multy-Line) widget applies only after moving the text widget
It was the initial bug, but while looking at it, I noticed that the MultilineEditableTextBox was containing both a Font via FEditableTextBoxStyle, and another one via FTextBlockStyle, thus being error prone / inconsistent.
In order to fix the underlying issue (in addition to fix the initial bug), I removed the Font from FEditableTextBoxStyle, and moved the FTextBlockStyle from MultilineEditableTextBox to FEditableTextBoxStyle.
It solves the duplication issue and so make it clear where the Font should be set/read from.
However, as the text block style is now embedded in the editable text box style, it cannot be initialized the exact same way, and I had to do some changes to ensure there was no regression, by configuring various FEditableTextBoxStyle in some style files. I also change the default value for TextBlockStyle to better match our default theme.

-Default font is not set for text widgets.
EditableWidget: ensure to have a default font, and to set the style when calling SynchronizeProperties to ensure it reacts directly without having to force a refresh (by moving the widget for instance)

Bonus:
-Move to cpp some private methods that where 'forced' inline (and we were using function pointer on them). It will avoid some noise in public interface and speed up iteration / compile time when playing with them.

#jira UE-96464
#jira UE-137126

[RN] MultilineEditableTextBox was containing both a Font via FEditableTextBoxStyle, and another one via FTextBlockStyle, thus being error prone / inconsistent.The Font from FEditableTextBoxStyle has been removed, and the FTextBlockStyle moved from MultilineEditableTextBox to FEditableTextBoxStyle. It solves the duplication issue and so make it clear where the Font should be set/read from.
However, as the FTextBlockStyle is now embedded in the FEditableTextBoxStyle, it cannot be initialized the exact same way, and you can now configure the FTextBlockStyle of FEditableTextBoxStyle when creating one from scratch, by calling SetTextStyle on it.


Test
- created a Widget blueprint with different editable types combination: multiline or single line, box or no box.
    -Validated that everything was reacting live as expected now.
    -Created a blue print to set the text style and validated it was working.
    -Create data with old version, then open it with updated version to validate that the visual was still the same and deprecation of style working as expected.
-checked different places in the editor using variation of editable text to ensure they were behaving as before (detail view, console command entry, comment on blueprint node).
#preflight 63344b9f110bb3721ef8aa77

[CL 22232366 by yohann dossantos in ue5-main branch]
2022-09-28 17:59:29 -04:00
bryan sefcik
50d4fac9e0 Updated ../Engine/Plugins/... to inline gen.cpp files
Before:
3548 unity files
Total CPU Time: 47343.578125 s
Total time in Parallel executor: 494.60 seconds

After:
3445 unity files
Total CPU Time: 46044.671875 s
Total time in Parallel executor: 468.51 seconds

#jira
#preflight 63336159b20e73a098b7f24f

[CL 22218213 by bryan sefcik in ue5-main branch]
2022-09-28 01:06:15 -04:00
mikko mononen
ab1b7f80cf StateTree: fix test and empty parameters
- handle empty subtree parameters
- changed a compiler check() to an error
- fixed tests

#jira UE-164541
#rb Mieszko.Zielinski
#preflight 632c4e77671a1a24b5ff67a6

[CL 22163478 by mikko mononen in ue5-main branch]
2022-09-23 19:58:36 -04:00
mikko mononen
780e3d6ec2 StateTree: Handle optionally bound Input properties.
#jira UE-164450
#rb none

[CL 22112889 by mikko mononen in ue5-main branch]
2022-09-21 10:45:14 -04:00
marc audy
a194435a78 Fix const cast on a TObjectPtr
[CODEREVIEW] Mikko.Mononen

[CL 22086998 by marc audy in ue5-main branch]
2022-09-19 21:56:39 -04:00
mikko mononen
0d47d49765 StateTree: Context Objects
- Cleaned up Blueprint nodes from deprecated functions
- Added call guards for BP implemented events on BP nodes
- Renamed Named External Data to Context (Object/Data)
- Added automatic binding for Context objects
- Added UI visualization for Context properties and cleaned up the Input/Ouput visualization
- Added compiler errors for missing Input and Context properties

#jira UE-156544 UE-147509
#rb Stephen.Holmes

[CL 22084585 by mikko mononen in ue5-main branch]
2022-09-19 19:47:11 -04:00
mikko mononen
aa99e51c55 StateTree: Compile StateTree on load if in older format.
#preflight 6322e4a536768f8cf385ced2
#rb Mieszko.Zielinski

[CL 22033017 by mikko mononen in ue5-main branch]
2022-09-15 13:53:23 -04:00
robert millar
5396f7f214 FNames containing asset paths are deprecated. FSoftObjectPath or FTopLevelAssetPath should be used instead.
Fixups for some misc code in plugins.

#jira UE-161932
#rb matt.peters
#preflight https://horde.devtools.epicgames.com/job/631fa3f6bd77c5883fe68184

[CL 21984919 by robert millar in ue5-main branch]
2022-09-13 12:20:10 -04:00
mikko mononen
cb133991e1 StateTree: include mode double conversion for the type promotions
#rb Mieszko.Zielinski Stephen.Holmes
#preflight 631b016a304480f8f893dc7a

[CL 21918321 by mikko mononen in ue5-main branch]
2022-09-09 07:14:47 -04:00
mikko mononen
58cde503d4 PropertyBag: UI tweaks
- simplified the usage of the FPropertyBagInstanceDataDetails
- Changed the UI to match closer the array property style

#preflight 631af12bd135b61bc54b0960

[CL 21918229 by mikko mononen in ue5-main branch]
2022-09-09 06:56:01 -04:00
mikko mononen
61fee4aad0 StateTree: Fixed the schema filtering
- change schema types to include the module path
- removed unused GetStorageSuperStruct()

#rb Stephen.Holmes

[CL 21862723 by mikko mononen in ue5-main branch]
2022-09-07 17:12:28 -04:00
mikko mononen
9174cf81d1 StateTree: Threadsafe shared data
- added thread safe access to shared instance data (each thread gets a copy)
- fixed Item->Node in the editor node API

#jira UE-153269
#rb Mieszko.Zielinski

[CL 21862712 by mikko mononen in ue5-main branch]
2022-09-07 17:12:18 -04:00
mikko mononen
cb367257d7 StateTree:
- Fixed potential crash in StateTree editor row
- Fixed StateTreeComponentSchema actor class not updating property on load

#rb Mieszko.Zielinski
#preflight 6315cd43ec45fbf3d7ae82d0

[CL 21791567 by mikko mononen in ue5-main branch]
2022-09-05 09:08:59 -04:00
mikko mononen
bbd34dd782 StateTree Events
- Added StateTree events, which allows e.g. transitions based on internal or external events
- Clarified transition nomenclature
- Update UI to support transition events
- BP support for events
- Renamed UStateTreeItemBase to UStateTreeNodeBase for consistency with FStateTreeNodeBase

#jira UE-156543
#rb Mieszko.Zielinski
#preflight 631077ef660db81edbd068ca

[CL 21738918 by mikko mononen in ue5-main branch]
2022-09-01 09:06:53 -04:00
mikko mononen
0d1ace8323 StateTree: StateTreeComponent improvements
- Added option to start the StateTree automatically on BeginPlay
- StateTreeComponentSchema: allow to specify which actor class to expect the StateTree to run on (allows to bind to Actor specific data directly)
- Fixed FStateTreeReference parameter update on BP instance (the struct gets copied, which cause issues with the delegate handle)

#rb Mieszko.Zielinski
#preflight 630c70bb0345de4ccf7c8b51

[CL 21685020 by mikko mononen in ue5-main branch]
2022-08-29 14:47:43 -04:00
mikko mononen
918ef3e1e2 StateTree: Fix potential nullptr reference
#rb trivial

[CL 21684959 by mikko mononen in ue5-main branch]
2022-08-29 14:45:47 -04:00
mikko mononen
dd5786afb4 StateTree: editor fixes
- enable binding extension on evaluator
- fix schema outer (schema would not get saved)
- removed need to tag bindable properties as parameters
- disallow binding to statetree nodes directly

#rb Mieszko.Zielinski
#preflight 630602fcc00af5e2945dbe95

[CL 21560970 by mikko mononen in ue5-main branch]
2022-08-25 05:16:12 -04:00
mikko mononen
2a196bac7c StateTree:
- Changed existing conditions to use the simpler instance data getter
- Added UObject based conditions
- Renamed condition file for consistency

#rb Mieszko.Zielinski
#preflight 6304879ca45b007ea268d917

[CL 21512046 by mikko mononen in ue5-main branch]
2022-08-23 13:04:52 -04:00
Zousar Shaker
3f4252aa56 ObjectPtr upgrade for engine plugins used from UnrealEditor -allmodules. Automated upgrade process.
#rb none
#preflight 62fe7f270601ad0504910c30

[CL 21447894 by Zousar Shaker in ue5-main branch]
2022-08-18 15:08:49 -04:00
Zousar Shaker
da1254fd35 Callsite upgrade pass for TObjectPtr use on plugins used when building UnrealEditor with "-allmodules".
#rb none
#preflight 62daee42ac71f3a225b744f9

[CL 21226921 by Zousar Shaker in ue5-main branch]
2022-07-22 15:06:06 -04:00
mikko mononen
3e852502b6 StateTree: Fixed failing test and missing validation
- fail compilation if linking to non-subtree
- fixed crash in linker if subtree does not have parameters
- fixed subtree test (subtree state was missing type)

#jira UE-155893
#preflight 62d90fd3d54af4b9a2fc04c0

#ROBOMERGE-AUTHOR: mikko.mononen
#ROBOMERGE-SOURCE: CL 21198999 via CL 21199006 via CL 21199009
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21199538 by mikko mononen in ue5-main branch]
2022-07-21 08:19:56 -04:00
ronald koppers
12979e53c2 FMessageLog::CriticalError has been deprecated.
FMessageLog::CriticalError has a delay before throwing an assert to allow compositing of the message. As a result the assert isn't thrown at the location of the problem, but somewhere in the surrounding area, which makes the problem harder to debug and generates misleading log entries. Due to these problems FMessageLog::CriticalError and EMessageSeverity::CriticalError have been deprecated. It's recommended to use checkf instead.

When FMessageLog goes out of scope or is destroyed explicitly it will flush its messages to the log, which in turn means the log may immediately use the messages. In a few places a reference to the message was kept that outlived the lifetime of the owning FMessageLog in order to add arguments later on. The found cases have been updated to make sure FMessageLog doesn't outlive the addition of the arguments so the arguments are correctly passed to the log.

#jira: UE-155605
#rb brooke.hubert francis.hurteau jerome.delattre
#preflight 62cc4fca9922f7e5129e4e0a

[CL 21042765 by ronald koppers in ue5-main branch]
2022-07-11 12:58:26 -04:00
mikko mononen
f9887f77bc StateTree: Added schema picker to new tree creation workflow
- Added BP-like class picker for schema when StateTree asset is created
- Added "CommonSchema" meta tag for schemas to allow them to be added to the common list
- Allow the asset on StateTree actor component to EditAnywhere
- Fixed compilation indication for empty StateTrees (was showing red)

#robomerge EngineMerge
#jira UE-151649
#rb Yoan.StAmant
#preflight 62beaeeb8d5e6787590a0921

[CL 20911820 by mikko mononen in ue5-main branch]
2022-07-01 04:36:16 -04:00
mikko mononen
fddc21a3ba StateTree Editor: Make tree rows as wide as the view.
#jira none
#robomerge EngineMerge
#rb Mieszko.Zielinski
#preflight 62bd47d11c0b75879704c7fb

[CL 20889937 by mikko mononen in ue5-main branch]
2022-06-30 03:06:38 -04:00
mikko mononen
841f7320c9 StateTree struct reference
- added functionality to allow to use property binding to get pointer to another struct property
- converted mass smart object and movement tasks to use struct ref

#jira none
#robomerge EngineMerge
#rb Yoan.StAmant
#preflight 62bc0d51e353c20ac23fbf39

[CL 20871790 by mikko mononen in ue5-main branch]
2022-06-29 04:52:18 -04:00