Where tool tips are defined in rich text, equivalent pain test
accessible descriptions have been added so that screen readers do not
announce HTML tags.
Refactored date time delegates to use a simpler default editor via a
default item editor factory for QDateTime values, the editor is a
standard QDateTimeEdit with a format that includes seconds and renders
assuming the time is UTC.
Modified the Cabrillo log and Fox log database table models to provide
QDateTime items for the edit role of date time fields, and formated
date time strings including seconds and assumed as UTC for the display
role.
Move to OnRowChange edit strategy for log tables so that deletes from
view can be implemented cleanly.
Improve layout of log view tables by resizing to contents.
Basic validation, must have non-empty exchange sent and received.
Abstracted log view window widget behaviour into a base class. Turned
on auto resize to row height in log view windows and enabled
alternating colours. Convert empty fields to NULL when inserting new
log table rows to signify missing data. Trap insert row errors when
adding to contest log table so that logging can be held back if
constraints are not met. Re-factored log QSO processing to try insert
row into log table first and pop up a message box if constraints are
not met, this pops up the Log QSO window in case it was initiated by
an auto log event.
This change incorporates a reorganization of the GUI code with
widgets, validators, models, and item delegates being moved to
sub-directories.
Relax the requirements of the ForeignKeyDelegate and related
CandidateKeyFilter classes to allow them to work with constant model
pointers for both referenced and referencing models.