Commit Graph

281 Commits

Author SHA1 Message Date
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
george rolfe
6f984f4cc9 [UMG MVVM] Uses new UMG Preview plugin
#rb Patrick.Boutot, Vincent.Gauthier
#jira UE-166282

[CL 35387060 by george rolfe in ue5-main branch]
2024-08-07 20:09:56 -04:00
zahra nikbakht
201483a4a4 MVVM: fix context sensitive option not working
#jira UE-216495
#rb Patrick.Boutot

[CL 35120264 by zahra nikbakht in ue5-main branch]
2024-07-26 17:17:29 -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
george rolfe
3ad27abefb [Backout] - CL34976623
[FYI] George.Rolfe
Original CL Desc
-----------------------------------------------------------------
[ToolWidgets] Dependencies reference correct base widget

#rnx

[CL 35075563 by george rolfe in ue5-main branch]
2024-07-25 00:59:31 -04:00
george rolfe
0ce09516bd [ToolWidgets] Dependencies reference correct base widget
[CL 34976625 by george rolfe in ue5-main branch]
2024-07-22 03:08:14 -04:00
alain lafleur
cbf994d73a UE-219574 missing icons on the BindingRow and EventRow
#jira UE-219574

The image path was going toward a file that didn't exist. The code was identical to what can be found in widgetreflector. We noticed the discrepency between the CoreContentRoot between the 2 projects.

To get access to the right directory with the resource, we had to bring the root back up, which forced changes on RootCoreContentDir() accesses for the button style.

#tests Tested the presence of the icon for properties and events. Also verified the normal/hovered/pressed effect on the 2 buttons with NoStyleComboButton. I didn't see any other accesses to the MVVMEditorStyle.
#rnx
#rb yohann.dossantos

[CL 34933672 by alain lafleur in ue5-main branch]
2024-07-19 11:44:12 -04:00
zousar shaker
dffd381e7d TObjectPtr upgrades for engine plugins.
[CL 34894832 by zousar shaker in ue5-main branch]
2024-07-18 01:17:14 -04:00
daren cheng
8b8f86805c Fix MVVM Show Graph not working in view binding due to missing graph editor mode set
#rb daren.cheng
[FYI] editor-ui-systems
#tests editor

[CL 34678842 by daren cheng in ue5-main branch]
2024-06-26 12:04:45 -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
zahra nikbakht
1cba503479 UMG: Check the drag-drop extensions to see if a widget accepts drop when moving widgets in the designer.
#jira UE-215900
#rb daren.cheng

[CL 34324947 by zahra nikbakht in ue5-main branch]
2024-06-12 17:53:53 -04:00
steve robb
e521f5d700 Replaced EAutomationTestFlags::ApplicationContextMask with EAutomationTestFlags_ApplicationContextMask.
[CL 34321160 by steve robb in ue5-main branch]
2024-06-12 16:14:25 -04:00
bunnylacey
880a0521bb PR #11968: Request update to FViewModelClassFilter in SMVVMSelectViewModel.h
#jira UE-216536
#rb patrick.boutot

[CL 34205656 by bunnylacey in ue5-main branch]
2024-06-07 12:04:04 -04:00
graham lewis
136ba6d02b Disable drag and dropping children into panel hierarchy when it has an MVVM extension.
IDragDropExtension:
- Extension class providing CanDropOnTarget and GetDropFailureText functions.

FDragDropExtensibilityManager:
- Maintains a list of IDragDropExtensions.

IHasDragDropExtensibility:
- Extension class providing GetDragDropExtensibilityManager function.

IUMGEditorModule:
- Inherits IHasDragDropExtensibility.

FUMGEditorModule:
- Creates FDragDropExtensibilityManager instance on startup.

FDragDropExtension:
- MVVM IDragDropExtension implementation. CanDropOnTarget returns false if the target widget has a UMVVMBlueprintViewExtension_PanelWidget extension.

FModelViewViewModelEditorModule:
- Adds FDragDropExtension on startup and removes on shutdown.

FWidgetBlueprintEditorUtils:
- Added CanDropOnTargetExtensions function which iterates current IDragDropExtensions (via UMG module's FDragDropExtensibilityManager).

ProcessHierarchyDragDrop:
- Checks FWidgetBlueprintEditorUtils::CanDropOnTargetExtensions.

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

[CL 34123034 by graham lewis in ue5-main branch]
2024-06-05 09:45:23 -04:00
graham lewis
41d1197cd5 Added missing #pragma once.
#rnx

[CL 34033453 by graham lewis in ue5-main branch]
2024-05-31 11:31:27 -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
graham lewis
0bb81eb6b1 Disable adding children to panel hierarchy when it has an MVVM extension.
IClipboardExtension:
- Added virtual CanWidgetAcceptPaste function.

FClipboardExtension:
- Overrides CanWidgetAcceptPaste. Checks if specified widget has any UMVVMBlueprintViewExtensions.

FWidgetBlueprintEditorUtils:
- Added static CanPasteWidgetsExtension function. Checks CanWidgetAcceptPaste on all IClipboardExtensions.

FWidgetBlueprintEditor:
- CanPasteWidgets now also calls FWidgetBlueprintEditorUtils::CanPasteWidgetsExtension.

#jira UE-215900
[REVIEW] [at]zahra.nikbakht, [at]editor-ui-systems, [at]chris.gagnon
#rb Patrick.Boutot, zahra.nikbakht

[CL 34008039 by graham lewis in ue5-main branch]
2024-05-30 14:13:13 -04:00
zahra nikbakht
ddf102e86a MVVM: fix crash when deleting binding that previously errored.
Make sure the struct details view is cleared when a binding is invalid.
#rb Patrick.Boutot

[CL 33953602 by zahra nikbakht in ue5-main branch]
2024-05-28 17:11:47 -04:00
patrick boutot
13ed9205c5 MVVM: Can only select property of loaded UObject ptr.
#rb editor-ui-systems
#rnx

[CL 33937408 by patrick boutot in ue5-main branch]
2024-05-28 07:31:07 -04:00
patrick boutot
0f8c13cc1e MVVM: Add an option to select the event as a binding or as an event. Allow the user to bind a multicast delegate property in 2 different ways. UX could be improved. Tried a combobox but that removed the nice primary button. I tried a ContextMenu but was not clear what double click was going to do.
#rb editor-ui-systems

[CL 33922334 by patrick boutot in ue5-main branch]
2024-05-27 07:45:27 -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
patrick boutot
1946b5c298 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 33425581 by patrick boutot in ue5-main branch]
2024-05-03 10:08:40 -04:00
patrick boutot
b7f233a385 [Backout] - CL33402680
[FYI] Patrick.Boutot
Original CL Desc
-----------------------------------------------------------------
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 33403573 by patrick boutot in ue5-main branch]
2024-05-02 14:14:14 -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
354a79c632 MVVM: Fix customization extender that didn't check if the extension was of the correct type.
#rb zahra.nikbakht

[CL 33371723 by patrick boutot in ue5-main branch]
2024-05-01 09:55:52 -04:00