I have a (small) update to these nodes since I learned about the RunTimeDoubleClick ability. They now open the target VI at run time as well.
Async-Or-Show from this package has become one of my favorite things for non-reentrant UI VIs (runs the VI if its front panel isn't open, makes the target's front panel frontmost if it is open):
https://github.com/erdosmiller/lv-async
lv_async-1.1.0.4.vip
lv_scripting-0.10.0.1.vip
lv_vi-0.0.0.5.vip