ue4 c++ how to open a blueprint widget
// Where menu might be your widget.
    Menu->AddToViewport();
    // Step 0 get player controller.
    auto PlayerController = GetFirstLocalPlayerController();
    if (!ensure(PlayerController != nullptr)) return;
    // Step 1 setup an input mode. There are multiple such as game only or game and UI as well.
    FInputModeUIOnly InputModeData;
    // Step 2 config is specific to the type
    InputModeData.SetLockMouseToViewport(false);
    InputModeData.SetWidgetToFocus(Menu->TakeWidget()); //Because UMG wraps Slate
    // Step 3 set the mode for the player controller
    PlayerController->SetInputMode(InputModeData);
    // Step 4 enable cursor so you know what to click on:
    PlayerController->bShowMouseCursor = true;
