Modifications of the contents of a list is controled by an object
of class
GUI.ChangeList.
When a GUI.ChangeList is applied to a list Scans in the GUI.ChangeList
are swapped with the Scans they are replacing in the list.
The previous GUI.ChangeList is kept by the
GUI.ListEditPanel
which allows it to reverse the previous change.
The "Undo" function consists of a
modify
(ChangeList) to the
GUI.ListBox
involved.