While this might seem to duplicate behaviour I believe having this code in a delegate
is a better solution.
- the logic in BaseTableModel is view logic not model logic
- letting the custom delegate determine the formatting is much more efficient
then letting the default delegate do many virtual calls to detemine how the
model wants it formatted.