How to Cast from Actor BP to Widget BP - Object pin error

It’s this then:

We tell the widget to inform the swap manager whenever the button is clicked - this executes the custom event. Since we’re doing all of this in the manager itself, all the data is already here. No need to cast or reference anything else.

Event Dispatchers are perfect for this kind of communication - a component / widget talks back at the owning parent.

Avoid scripting / processing data in the widget - see if you can treat widgets as display elements only when possible, let the actor process data. Widgets can handle the way the data is displayed.

The above is set up for a single button, if you have 10 buttons, it should still be manageable (you’d need to Bind 10 buttons, though). If you have 20+ buttons, it will become cumbersome to manage manually - another method would be needed. Do tell.