list_widget_property_bindings
Validate UMG property bindings on a Widget Blueprint and report each binding's status, including compiler reasons for broken bindings after a function rename.
Instructions
List the UMG PROPERTY BINDINGS of a Widget Blueprint -- the "Bind" dropdown next to a property in the Designer's details panel, which makes that property recompute every frame by calling a function instead of holding a fixed value. These live in UWidgetBlueprint::Bindings, NOT in the widget tree and NOT in the event graph, so no other reader sees them; and UWidgetBlueprint::Bindings is NOT exposed to Python either (get_editor_property("bindings") throws), so this is the only headless way to read them. Each entry is re-validated live with the engine's own FDelegateEditorBinding::IsBindingValid, so a binding whose function was renamed or made non-pure comes back valid:false WITH the compiler's reason -- that is the difference between "there is a binding" and "there is a binding that works".
Returns: { widget_bp_path: string, binding_count: int, bindings: [{ widget_name, property_name, function_name, kind, member_guid, source_property, valid, validation_messages: [string] }], bindable_properties?: {widget_name: [string]} }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| blueprint_name | No | Alias of `widget_bp_path` (same value, same meaning). Accepted because sibling tools spell this parameter differently; prefer `widget_bp_path`. | |
| widget_bp_path | No | /Game path of the Widget Blueprint asset | |
| include_bindable_properties | No | Also list, per widget in the tree, which properties ACCEPT a binding at all (default false). A property is bindable only if its widget declares a companion delegate named "<Property>Delegate" -- this saves guessing. |