I've updated Mark Anderson's DataSheet project for CONNECT.
DataSheet shows how to create cell editors that modify a ListModel displayed in a ListBox. Each of six columns uses a different editor:
I've replaced the MDL hook functions with hook handler classes that inherit from DialogItemHandler. Those handler classes help to simplify the spaghetti code that you may recall, or prefer to forget, from your days of MDL programming. You can download the complete project: it includes source code and a bmake file.