Much procrastination over the PropertiesBox widget. I restarted the widget code using ListBox as a base.
Consolidated some identical menu code from ListBox, TreeBox and PropertiesBox into one shared file (prod_ui/shared/lgc_menu.lua).
Changed how “drag to reorder” works in menu widgets. Long story short: the old implementation was acceptable for flat lists, but it didn’t make sense with trees of collapsible nodes.
Fixed TreeBox menu selections not updating correctly when nodes are collapsed.