QVariant ModelBrowser::data(const QModelIndex &index, int role) const
void QAbstractItemModel::beginInsertRows ( const QModelIndex & parent, int first, int last )
C++ (Qt)void TreeModelBrowser::updateModel(QModelIndex index){ int row = rowCount(index); row++; beginInsertRows(index,row,row); endInsertRows();}
C++ (Qt)QVariant TreeModelBrowser::data(const QModelIndex &index, int role) const{ QObject*obj; if(!index.isValid()) obj = base; else obj = reinterpret_cast<QObject*>(index.internalPointer()); if(role == Qt::DisplayRole) { if(index.column() == 0 && QVariant(obj->metaObject()->className()).toString() == "Base") { Base*b = dynamic_cast<Base*>(obj); return b->str; } if(index.column() == 1 && QVariant(obj->metaObject()->className()).toString() == "Station") { Station*s = dynamic_cast<Station*>(obj); return s->str; } else if(index.column() == 2 && QVariant(obj->metaObject()->className()).toString() == "Device") { Device*d = dynamic_cast<Device*>(obj); return d->str; } return QVariant();}
//Вставляем данные в модельvoid insert(QString data){// Оповещаем view о том, что будет вставлено N записей.beginInsertRows(*);// далее добавляем в хранилище, допустим будет listData_listData.append(data);// Оповещаем view о том, что данные можно забиратьendInsertRows();}