PblTableView

фотка 1

Предлагаем мировому сообществу удобную связку (пару классов) модели данных и визульного  табличного представления с удобными фишками. 

Речь о классе модели данных PblSqlRelationalTableModel  и классе  табличного представления PblTableView.

По сути это готовый шаблон для редактирования таблицы, у которой есть внешние связи, внешние вычисляемые поля и еще много вкусных плюшек.

Есть реализация выпадающих списков (QComboBox) и QCheckBox для полей таблицы.

Вся настройка делается созданием одного файла config.cpp, где прописывается конфигурация ваших таблиц (статически).

В классе представления PblTableView реализованы стандартные кнопки для добавления, копированияредактирования, удаления строк таблицы.

Также вы можете всегда динамически подключить в таблице поиск по колонкам, отбор по значению, сортировку по колонке.

фотка 2

Могут быть добавлены вычисляемые колонки по данным других внешних таблиц.

Мы проверяем пока это все на Qt 4.8.1, Sqlite 3, компилятор msvc-2010.

Чтобы добавить кнопки управления для QTableView мы сделали обычное  наследование ( не влезая в приватные классы исходников Qt ), получился класс PblTableView.

Надо понимать, что QTableView это по сути обычный виджет, которому layout просто так не добавить, так как у него нет своего лейаута. Поэтому ему в конструкторе передается указатель на лэйаут, куда он должен себя добавить.

Вычисляемые поля по данным других таблиц. Например поле sold:

фотка 3