
Предлагаем мировому сообществу удобную связку (пару классов) модели данных и визульного табличного представления с удобными фишками.
Речь о классе модели данных PblSqlRelationalTableModel и классе табличного представления PblTableView.
По сути это готовый шаблон для редактирования таблицы, у которой есть внешние связи, внешние вычисляемые поля и еще много вкусных плюшек.
Есть реализация выпадающих списков (QComboBox) и QCheckBox для полей таблицы.
Вся настройка делается созданием одного файла config.cpp, где прописывается конфигурация ваших таблиц (статически).
В классе представления PblTableView реализованы стандартные кнопки для добавления, копирования, редактирования, удаления строк таблицы.
Также вы можете всегда динамически подключить в таблице поиск по колонкам, отбор по значению, сортировку по колонке.

Могут быть добавлены вычисляемые колонки по данным других внешних таблиц.
Мы проверяем пока это все на Qt 4.8.1, Sqlite 3, компилятор msvc-2010.
Чтобы добавить кнопки управления для QTableView мы сделали обычное наследование ( не влезая в приватные классы исходников Qt ), получился класс PblTableView.
Надо понимать, что QTableView это по сути обычный виджет, которому layout просто так не добавить, так как у него нет своего лейаута. Поэтому ему в конструкторе передается указатель на лэйаут, куда он должен себя добавить.
Вычисляемые поля по данным других таблиц. Например поле sold:
