if (toc_->empty())
return QModelIndex();
- unsigned int const toc_index = TocBackend::findItem(*toc_, dit) -
- toc_->begin();
+ unsigned int const toc_index =
+ static_cast<unsigned int>(TocBackend::findItem(*toc_, dit) - toc_->begin());
QModelIndexList list = model()->match(model()->index(0, 0), Qt::UserRole,
QVariant(toc_index), 1,
if (it != models_.end())
return it.value()->model();
LYXERR0("type not found: " << type);
- return 0;
+ return nullptr;
}
}
LASSERT(index.model() == it.value()->model(), return TocItem());
+ if (it.value()->empty()) {
+ LYXERR(Debug::GUI, "TocModels::currentItem(): requested toc is empty!");
+ return TocItem();
+ }
+
return it.value()->tocItem(index);
}
models_[type]->updateItem(dit);
}
+TocModels::~TocModels(){
+ QHashIterator<QString, TocModel *> iter(models_);
+ while(iter.hasNext()) {
+ iter.next();
+ delete iter.value();
+ }
+}
void TocModels::reset(BufferView const * bv)
{