Local multiplayer menu

I am creating a local multiplayer game and I need to create a menu where each player can navigate only in their own menu section on the screen to select their character. The solution should look like the on in the attached picture, where there are 4 players and each player can only navigate in their own area.

I have looked everywhere and so far I have not seen anyone making a tutorial about this, or anyone explaining how it should be done. Also didn’t find any forum questions about this.

I’m assuming the players are going to use gamepads? Here’s how I would set it up.

  1. Make a widget for a single players menu.
  2. Make a container widget with a HorizontalBox that you can add the player menus to.
  3. Add the container widget to the screen.
  4. For each gamepad detected, create a new player menu and add it to the container widget.
  5. Pass the player menu to the PlayerController for the gamepad.
  6. Add input events in the player controller that move/select buttons in that PlayerController’s menu widget.

Hope that helps?