457 Commits

Author SHA1 Message Date
patrick boutot
6742e93da3 MVVM: Reset the NumReplicatedProperties when building an InstancedViewModel.
[CL 29111632 by patrick boutot in ue5-main branch]
2023-10-25 20:21:08 -04:00
patrick boutot
bc194e6447 MVVM: Split and recombine structure argument for conversion function parameters and events parameters.
Fix event broadcast when a ViewBinding changes.
Add option to reparents the viewmodel class. Force the list to be repainted when the viewmodel changes. That helps with display names when the viewmodel is renamed and with graphpin that needs to be rebuilt.
#jira UE-164353-ui-systems

[CL 29045441 by patrick boutot in ue5-main branch]
2023-10-24 10:12:34 -04:00
patrick boutot
95bdea3abd MVVM: Mark autogenerated functions transient when requested. That can create function to be null when loaded. We want to execute the function and compile the functions in the editor but we want to recreate them on every reload.
#jira UE-164353

[CL 28973846 by patrick boutot in ue5-main branch]
2023-10-20 14:23:38 -04:00
patrick boutot
2580c374df MVVM: Change the description of the MVVM settings in the settings windows for "UMG Model View Viewmodel".
#jira UE-164316

[CL 28965963 by patrick boutot in ue5-main branch]
2023-10-20 10:49:52 -04:00
patrick boutot
52e687f13f MVVM: Instead of saving the name of the root widget for self reference, use a different flag. When the Blueprint asset is renamed the root widget is also renamed and self reference do not work anymore. Redirect the previously saved reference.
IsEmpty is renamed to IsValid. It used to be that we wanted to know if there was a source and a path but now the IsEmpty is confusing.
Fix Widget rename for conversion function pins and event pins.
#jira UE-191812
[REVIEW] editor-ui-systems

[CL 28965810 by patrick boutot in ue5-main branch]
2023-10-20 10:45:57 -04:00
patrick boutot
f852893a58 MVVM: Allow a property or a function if it's from the blueprint we are currently compiling.
#jira UE-191812
#rb editor-ui-systems

[CL 28963236 by patrick boutot in ue5-main branch]
2023-10-20 09:15:33 -04:00
patrick boutot
6708c354bd MVVM: Event generated function are none const.
#jira UE-191812
#rb editor-ui-systems

[CL 28915262 by patrick boutot in ue5-main branch]
2023-10-19 08:48:47 -04:00
patrick boutot
1cde09da83 MVVM: Make sure the different object ptr type matches before copying them. Evaluated path use the correct container address when evaluating a function.
#jira UE-194034
#rb editor-ui-systems, zousar.shaker

[CL 28804088 by patrick boutot in ue5-main branch]
2023-10-16 13:02:18 -04:00
patrick boutot
35a470e6c2 [Backout] - CL28715693
[FYI] patrick.boutot
Original CL Desc
-----------------------------------------------------------------
MVVM: Make sure the different object ptr type matches before copying them. Evaluated path use the correct container address when evaluating a function.
#jira UE-194034
#rb editor-ui-systems, zousar.shaker

[CL 28724156 by patrick boutot in ue5-main branch]
2023-10-12 15:35:52 -04:00
patrick boutot
072c79b755 MVVM: Make sure the different object ptr type matches before copying them. Evaluated path use the correct container address when evaluating a function.
#jira UE-194034
#rb editor-ui-systems, zousar.shaker

[CL 28716227 by patrick boutot in ue5-main branch]
2023-10-12 13:12:00 -04:00
patrick boutot
e53c801770 MVVM: Only create properties when needed. Viewmodel properties should always be created (no inheritance). Widget should be created if they are not already. Support BindWidget.
Rename FCreateVariableContext::GetSkeletonGeneratedClass to GetGeneratedClass because it returns the current class it generates and not the skeletal. It will be the skeletal if it's generating the skeletal.
#jira UE-194135
#rb editor-ui-systems

[CL 28672606 by patrick boutot in ue5-main branch]
2023-10-11 13:52:26 -04:00
patrick boutot
15b1736d5c MVVM: Allow conversion functions with UObject as argument. The bug was probably introduced to prevent static functions from BlueprintLibrary (remove the worldcontext).
[CL 28662721 by patrick boutot in ue5-main branch]
2023-10-11 10:01:03 -04:00
bob tellez
3c39fb5e89 [Backout] - CL28648027
[FYI] Patrick.Boutot
Original CL Desc
-----------------------------------------------------------------
MVVM: Make sure the different object ptr type matches before copying them. Evaluated path use the correct container address when evaluating a function.
#jira UE-194034
#rb editor-ui-systems

[CL 28650527 by bob tellez in ue5-main branch]
2023-10-10 21:45:01 -04:00
bob tellez
f1e730f370 [Backout] - CL28648528
[FYI] Patrick.Boutot
Original CL Desc
-----------------------------------------------------------------
MVVM: Only create properties when needed. Viewmodel properties should always be created (no inheritance). Widget should be created if they are not already. Support BindWidget.
Rename FCreateVariableContext::GetSkeletonGeneratedClass to GetGeneratedClass because it returns the current class it generates and not the skeletal. It will be the skeletal if it's generating the skeletal.
#jira UE-194135
#rb editor-ui-systems

[CL 28650523 by bob tellez in ue5-main branch]
2023-10-10 21:44:56 -04:00
patrick boutot
7de8a4e609 MVVM: Only create properties when needed. Viewmodel properties should always be created (no inheritance). Widget should be created if they are not already. Support BindWidget.
Rename FCreateVariableContext::GetSkeletonGeneratedClass to GetGeneratedClass because it returns the current class it generates and not the skeletal. It will be the skeletal if it's generating the skeletal.
#jira UE-194135
#rb editor-ui-systems

[CL 28648555 by patrick boutot in ue5-main branch]
2023-10-10 20:39:10 -04:00
patrick boutot
e87f56e71c MVVM: Make sure the different object ptr type matches before copying them. Evaluated path use the correct container address when evaluating a function.
#jira UE-194034
#rb editor-ui-systems

[CL 28648042 by patrick boutot in ue5-main branch]
2023-10-10 20:24:01 -04:00
daren cheng
6feb5780e6 Fix MVVM failing validation due to checking if object nodes were allowed within themselves
Add PropertyHasFiltering method to complete MVVM allowlist API.
Make LocalizableMessage API exposed so that it can be allowlisted.

#rb yohann.dossantos byron.cornejo
[FYI] [at]Patrick.boutot

[CL 28521880 by daren cheng in ue5-main branch]
2023-10-05 18:27:37 -04:00
asil karatas
295ec0a854 MVVM: Sort the view bindings and the view sources to make sure we have a reliable order of execution.
Initialize each bindings source one at the time. That allow a binding to set a variable that will then be read by another binding. That other binding can also change another source (by calling SetViewmodel internally). The bindings of the new source need to execute only if that source was already initialized. Delay bindings executed that way if they are complex.

[REVIEW] [at]daren.cheng [at]christian.savoie [at]jc.authier
#jira UE-194167

[CL 28323824 by asil karatas in ue5-main branch]
2023-09-28 14:01:37 -04:00
christian savoie
2a0659be78 [MVVM] Fix inverted hierarchy check
* Specialized some error messages for more clarity

[REVIEW] [at]editor-ui-systems
#tests Refactored some code so property is returning a derived class but binding is refering to data from base, abstract, class.
#rnx

[CL 28002641 by christian savoie in ue5-main branch]
2023-09-19 13:29:38 -04:00
byron cornejo
5cf5c7226c Removing blueprint Callable and Blueprint Event flag from OnRepFunction. Clears Class children while handling compilation finish.
[CL 27798402 by byron cornejo in ue5-main branch]
2023-09-12 13:22:15 -04:00
patrick boutot
9aa134b6c2 MVVM: Rework how we find the property for RepNotify function in InstancedViewModel
#rb editor-ui-systems

[CL 27710548 by patrick boutot in ue5-main branch]
2023-09-08 10:12:25 -04:00
patrick boutot
c7f13014dc Fix issue 361586 with ModelViewViewModelBlueprint.cpp introduced with CL 27701383
[CL 27702146 by patrick boutot in ue5-main branch]
2023-09-07 22:51:03 -04:00
patrick boutot
80fd6399a0 MVVM: Expose the ContextResolver::Destroy to BP. Fix the display name of K2_CreateInstance.
#rb editor-ui-systems

[CL 27701401 by patrick boutot in ue5-main branch]
2023-09-07 22:19:11 -04:00
patrick boutot
a0960c2081 MVVM: Update the InstanceViewModel to be more generic. Force a compilation when the widget loads, in case something changed in the cpp. Only rebuild the class when needed. Change the default name of the generated viewmodel.
#rb editor-ui-systems

[CL 27701308 by patrick boutot in ue5-main branch]
2023-09-07 22:17:40 -04:00
patrick boutot
b4d0d73f99 MVVM: Change the display name of Conv_BoolToSlateVisibility
#rb none
#rnx

[CL 27639314 by patrick boutot in ue5-main branch]
2023-09-06 12:22:51 -04:00