If a session does not contain any images, then the thumbnails at the bottom should not show it. Rather, the sessions should be collapsed on the display, so that only the ones with images are displayed. Thus, all the places in the code where we look at 'curr_session' +1, +2, -1, and -2 will need to examine the sessions to skip over the empty ones.
The problem is that if many adjacent sessions are empty, then the UI has lots of wasted space, and the thumbnails are not very useful and quite misleading.
When we implement this, we should be sure to write the code so that we can easily go back to the present version if user feedback indicates that this feature for some reason is not desirable.
Currently implemented as the SessionCollapser class in datastructures.cpp. Also currently turned off, so functionality is the same as before. To turn on, set the global g_collapse_sessions in rootflydlg.cpp to true.
Currently left turned off because of a crash bug when accessing a nonexistent tube. Did not have time to fix. Also, blank sessions can be seen when first changing tubes. Fixing this made the previous crash bug worse.
Jonathan implemented SessionCollapser class. There may still be some loose ends, but it is mostly done. E.g., when the user types an invalid T/W/S in the upper-right corner edit boxes, it should jump to the nearest valid one.