>Me either didn't see any need for lLastSelected but I thought at start it would be needed. Futher there is no need for lSelected too. Deleted() works good. Today I played with it more and wrote somewhat similar to yours. I'll pass it to files section when fully finished. Currently trying to add per column incremental search capability + headers from dbc.
I have something similar based on the Microsoft ComboGrid.
I use two fields in the cursor which is the recordsource, IsSet and WasSet.
It's useful because when the user makes changes and presses
I can just REPLACE ALL IsSet WITH WasSet so that the selection reverts to the previous state.
Similarly if the user presses to save their settings, I REPLACE ALL WasSet WITH IsSet to save the settings.