Russian Qt Forum

Qt => Model-View (MV) => Тема начата: UVV от Январь 07, 2015, 10:43



Название: Отредактировать QStandardItemModel
Отправлено: UVV от Январь 07, 2015, 10:43
Привет.
Как-то ни разу я с ней не работал, подскажите, пожалуйста, как правильно редактировать.

Пришла, допустим, моя структура MyClass, а он уже содержится в модели. Сейчас я делаю так:
Код:
QMap<MyClass, QList<QStandardItem*> > mRowMap; // <<-- Список всех QStandardItem, которые содержатся в строке.
Ну делаю поиск по map'у и обновляю соответствующие элементы.

Нормален ли такой подход - хранить указатели, или как-то по-другому можно/нужно искать/обновлять данные и незачем хранить указатели?
Спасибо.


Название: Re: Отредактировать QStandardItemModel
Отправлено: Kurles от Январь 07, 2015, 11:25
Всё зависит от желаемого функционала, но в общем случае никто не запрещает хранить эту структуру прямо в QStandardItem, предварительно ее зарегестрировав через Q_DECLARE_METATYPE, и, соответственно, никакая лишняя мапа не нужна.


Название: Re: Отредактировать QStandardItemModel
Отправлено: UVV от Январь 07, 2015, 11:29
Всё зависит от желаемого функционала, но в общем случае никто не запрещает хранить эту структуру прямо в QStandardItem, предварительно ее зарегестрировав через Q_DECLARE_METATYPE, и, соответственно, никакая лишняя мапа не нужна.

Чё-то я не нашёл как это сделать. Можно примерчик?
Как тогда поиск работать будет?
Кажется, нашёл, http://stackoverflow.com/questions/23619124/attach-custom-object-to-qstandarditem-in-qt (http://stackoverflow.com/questions/23619124/attach-custom-object-to-qstandarditem-in-qt). Сейчас попробую.