The code looks good, with a cursory glance. One thing I really really want is a way to "lock columns" which will lock order/sort options. The biggest complaint I have about inline column changing is the possibility of messing it up because of the proximity of mouse targets. It's fine if you want to make that a separate change.
Added column customization UI to datagrids
Review Request #199 — Created Jan. 1, 2008 and submitted
Tested that I could add and remove columns and that reordering columns saved properly.