With PHsPeed you can create grids with columns that can be re-arranged. By using events, you can save the new order and restore at will.
How we did this...
Every component in PHsPeed has properties to alter the behavior. In this case you can alter the 'datareordablecolumns'. In the PHP event you can use the ongetReorderColumns event to obtain the position of the columns
within the generated function you can add your code to save positions, or to do other custom operations.