140 Commits

Author SHA1 Message Date
alain lafleur
1b905ebe01 Merging
//Fortnite/Main/...
to //Fortnite/Dev-FN-32/...

Data driven condition bindings

Authoring and compilation of the new type is hidden behind a project setting.
Fix crash when changing hooked event and trying to edit conversion function parameters.
Fix issue with events valid source check node being purged from the graph upon regenerating connections in the wrapper graph.

Fixes FORT-768257

#tests Tested in editor and in game. Tried with widget property bindings, tried with vm bindings. Verified with multiple bindings to ensure we only execute when it's the condition property that is modified. Ran with cooked version. Tested in standalone and pie.
#rnx
#rb Vincent.Gauthier

[CL 36754418 by alain lafleur in 5.5 branch]
2024-10-01 18:59:25 -04:00
christian savoie
291cb8f68a [MVVM] Fix VM default resolvers to be created in the correct package so they save properly
[REVIEW] [at]editor-ui-systems
#tests Add a new VM that defaults to resolver, restart editor to see data being saved correctly

[CL 36172869 by christian savoie in 5.5 branch]
2024-09-10 21:32:44 -04:00
christian savoie
2a16908813 [MVVM] Change default resolver to use TSoftClassPtr
[FYI] daren.cheng, zahra.nikbakht
#tests Launch editor and look at options in field in settings

[CL 35747633 by christian savoie in ue5-main branch]
2024-08-22 13:43:32 -04:00
christian savoie
9541ac84e5 Remove meta class specifier causing crash in editor
[CL 35660104 by christian savoie in ue5-main branch]
2024-08-20 13:08:57 -04:00
christian savoie
8a3b1c35fc [MVVM] Add ability to set default resolver to select by default in project settings.
* Fixed a mixed up condition
* Cleanup resolver reference when not using it as a creation type.

[REVIEW] [at]editor-ui-systems, [at]jc.authier
#tests Changed creation types. Added a VM that's defaulted to use resolver type.
#rb daren.cheng, jc.authier

[CL 35642642 by christian savoie in ue5-main branch]
2024-08-19 18:26:43 -04:00
zahra nikbakht
b761017d21 MVVM: fix generated functions not being cleared properly on undo.
The temporary array holding the generated graphs should not be affected by undo because it holds data created on the compiler context which is itself not transactional.
#jira UE-211315
#rb daren.cheng

[CL 35582017 by zahra nikbakht in ue5-main branch]
2024-08-15 18:42:31 -04:00
daren cheng
b6c830e5f6 Fix incorrect API Exposure MVVM
#tests NonUnity
#rb daren.cheng

[CL 35533675 by daren cheng in ue5-main branch]
2024-08-14 10:34:15 -04:00
daren cheng
9121acc4c1 Add Async Node support to MVVM
Add generated ubergraph / multicast support to MVVM.
Some MVVM conversion function compilation refactoring, param / result structs, duplicate method extraction.

#tests PIE, Standalone, Cooked
#rb dan.oconnor, Patrick.Boutot

[CL 35532573 by daren cheng in ue5-main branch]
2024-08-14 09:59:16 -04:00
daren cheng
016453e06a Add comments related to delegates / events / MVVM
#tests PIE, Standalone, Cooked
#rb daren.cheng

[CL 35384568 by daren cheng in ue5-main branch]
2024-08-07 18:25:51 -04:00
patrick boutot
2e269042c7 MVVM: Add Callback on the WidgetBlueprintGeneratedClass to collect save override. The generated function are transient in editor but save during the cooking process.
#rb Jamie.Dale, Zahra.Nikbakht, Vincent.Gauthier

[CL 35115660 by patrick boutot in ue5-main branch]
2024-07-26 14:43:34 -04:00
patrick boutot
56488c7325 MVVM: Add an event when a conversion function setting changes. The event is used to rebuild the library.
#rb zahra.nikbakht

[CL 34638925 by patrick boutot in ue5-main branch]
2024-06-25 08:55:46 -04:00
yoan stamant
f92989fb33 Fixed include paths following StructUtils being moved to CoreUObject
#jira UE-216472
#rb devin.doucette

[CL 34513428 by yoan stamant in ue5-main branch]
2024-06-19 16:42:16 -04:00
patrick boutot
b74db8a2a5 MVVM: Deprecate bAllowConversionFunctionGeneratedGraphInEditor. The conversion function graph will be recreated everytime the asset is loaded to be in sync with the saved data.
#rb yohann.dossantos

[CL 34208671 by patrick boutot in ue5-main branch]
2024-06-07 13:56:38 -04:00
patrick boutot
b187d4525a MVVM: Autocast is supported for conversion function.
#rb yohann.dossantos

[CL 34033327 by patrick boutot in ue5-main branch]
2024-05-31 11:27:14 -04:00
graham lewis
d582333dac Add designer preview entries to MVVM panel extension.
UMVVMBlueprintViewExtension:
- Added virtual OnPreviewContentChanged function.

UMVVMWidgetBlueprintExtension_View:
- Added GetAllBlueprintExtensions function.

FBlueprintViewDesignerExtension:
- New designer extension which overrides PreviewContentChanged and calls OnPreviewContentChanged on each UMVVMBlueprintViewExtension.

FBlueprintViewDesignerExtensionFactory:
- New designer extension factory which creates a FBlueprintViewDesignerExtension.

UMVVMBlueprintViewExtension_PanelWidget:
- Added NumDesignerPreviewEntries property.
- Added static CreateDesignerPreviewEntries function which clears panels children then adds specified number of entries.
- Overrides OnPreviewContentChanged which calls CreateDesignerPreviewEntries using the preview panel widget.

FModelViewViewModelEditorModule:
- Adds PanelWidgetExtensionFactory on module startup and removes on shutdown.

FMVVMPanelWidgetExtensionCustomizationExtender:
- Added "Num Designer Preview Entries" property row.
- Calls UMVVMBlueprintViewExtension_PanelWidget::CreateDesignerPreviewEntries when entry class, slot template or "Num Designer Preview Entries" properties change.

#jira UE-213718
[REVIEW] [at]zahra.nikbakht, [at]editor-ui-systems, [at]chris.gagnon
#rb Vincent.Gauthier, zahra.nikbakht

[CL 34032917 by graham lewis in ue5-main branch]
2024-05-31 11:11:52 -04:00
daren cheng
917df99aeb Add conversion functions for MVVM Material Param updates.
#jira UE-211563
#rb Patrick.Boutot
#tests PIE

[CL 33902748 by daren cheng in ue5-main branch]
2024-05-24 15:16:20 -04:00
zahra nikbakht
fb317e089f MVVM Extension: allow extensions to add widgets as variables via MVVM compiler
#rb patrick.boutot

[CL 33417266 by zahra nikbakht in ue5-main branch]
2024-05-02 19:52:49 -04:00
patrick boutot
f8d108c01b MVVM: Hide autogenerated function from the picker. Rename old function before creating a new one. That could be reproduced by selecting multiple conversion function on the same binding.
#jira UE-211315, UE-211315
#rb editor-ui-systems

[CL 33403157 by patrick boutot in ue5-main branch]
2024-05-02 14:03:27 -04:00
patrick boutot
24977a7a73 MVVM: Modification to support extension on the view instance. The class/shared version has the option to create isntance data. The class extension receives that instance and can ack on it. Modified the Panel to create an property of the instance.
#rb daren.cheng
[FYI] Zahra.Nikbakht

[CL 33274421 by patrick boutot in ue5-main branch]
2024-04-26 15:38:33 -04:00
patrick boutot
2d9bf4fb13 [Backout] - CL33260840
[FYI] Patrick.Boutot
Original CL Desc
-----------------------------------------------------------------
MVVM: Modification to support extension on the view instance. The class/shared version has the option to create isntance data. The class extension receives that instance and can ack on it. Modified the Panel to create an property of the instance.
#rb daren.cheng
[FYI] Zahra.Nikbakht

#virtualized

[CL 33263652 by patrick boutot in ue5-main branch]
2024-04-26 10:18:50 -04:00
patrick boutot
f86558f8a4 MVVM: Modification to support extension on the view instance. The class/shared version has the option to create isntance data. The class extension receives that instance and can ack on it. Modified the Panel to create an property of the instance.
#rb daren.cheng
[FYI] Zahra.Nikbakht

#virtualized

[CL 33261674 by patrick boutot in ue5-main branch]
2024-04-26 09:03:03 -04:00
zahra nikbakht
cb2a943bcb MVVM: Extension improvements:
Support undo/redo
Support copy/paste
Add setting for supported widget types
#rb patrick.boutot

[CL 33102960 by zahra nikbakht in ue5-main branch]
2024-04-19 10:53:00 -04:00
zahra nikbakht
414291a73e MVVM: add an extension to panel widgets to define entry classes for them and allow binding the generated entries to an array of viewmodels
#rb patrick.boutot

[CL 32933358 by zahra nikbakht in ue5-main branch]
2024-04-12 12:24:08 -04:00
zahra nikbakht
1bd1c64fc1 MVVM: create a ListViewBase extension to support selecting an entry viewmodel and assigning them to entry widgets at runtime.
#rb patrick.boutot

[CL 32364945 by zahra nikbakht in ue5-main branch]
2024-03-20 10:11:43 -04:00
zahra nikbakht
c36e1dc095 MVVM: Move static class member definition into translation unit.
[CL 32345585 by zahra nikbakht in ue5-main branch]
2024-03-19 20:05:36 -04:00