Displaying an widget on a specific position

Hi,

I’m creating a tree structure in UMG. I’m adding the nodes inside an uniform grid panel and then changing their location, using the rows and columns of the panel. The node size must be minimized so I’m trying to remove two buttons so that they are only displayed when the mouse cursor is above the node.

I’ve tried tree aproaches:

  • Having the two buttons only appear depending on the mouse events in umg.
  • Creating an independent widget and setting its position to where its needed.
  • Using the cached geometry + LocalToAbsolute.

The first approach causes the widget to change size and as such making it shift on the uniform grid panel. In the first position 0,0 this is not a problem but as the rows/columns increase, the buttons appear with a bigger offset which causes for the widget to be no longer selected, which causes for it to return to its initial size, being perpetually in this cycle.

The second approach calculations must be missing something because it works in the first position but as the row/column increases, the buttons appear with a bigger distance from its corresponding node.
These are the calculations: Calcuting the position of a uniform grid panel posted by anonymous | blueprintUE | PasteBin For Unreal Engine. Location is a slot inside the widget to signal its final location.

The third position has similar problems to the other solutions.

The uniform grid panel is inside a scroll box which is inside another scroll box.

Can anyone help me?