Russian Qt Forum

Qt => Model-View (MV) => Тема начата: KlimichKartorgnusov от Апрель 14, 2016, 20:37



Название: Фильтрация и преобразование модели
Отправлено: KlimichKartorgnusov от Апрель 14, 2016, 20:37
Здравствуйте!
Есть табличная модель со следующей структурой:

  • имя
  • фамилия
  • отчество
  • город
  • улица
  • телефон

Нужно было это структуру представить немного по другому, то есть, объединить  имя + фамилия + отчество в ФИО и город + улица в один единый адрес.Сырая структура нужна для фильтрации по каждому из полей. Показываю преобразованую структуру, фильтрую сырую.
В конце концов проблема была решена и в итоге вышло три модели:

  • Сырая модель (Наследник от QAbstractTableModel)
  • Модель фильтрации (Наследник от QSortFilterProxyModel)
  • Модель конвертации (Наследник от QIdentyProxyModel)

Из этого следует что, модель конвертации, представляет модель фильтрации, которая фильтрует сырую модель.

Меня не покидает мысль что данное решение немного(или много?) не правильно...
Помогите правильным советом пожалуйста. :)
Кому интересно, исходный код приложил.