I have a QTableView and a model based on QAbstractTableModel. The model is periscoping over what will be a massive dataset. Naturally we had to have that *(&^)(*&^(*&ing flick scrolling on the view so we had to have an external scrollbar to cover the entire database range. (I thought the user should be punished and made to flick 80 rows at a time through a multi-million row set, but that is another story.)
Quite dutifully my model calls beginRemove(), deletes data, then calls endRemove(). Scrolling down stutters and jerks like I expect it would. Scrolling up is smooth as silk. I guess I should have made them fill out that dataset to maximum size for initial testing because trying to fit north of 1TB binary data into 4G of RAM in text form would have pointed out the issue early on. The data is removed from the model, but not the view.
I will dig further into the QTableView documentation after supper, but here is the question: Does the default implementation of QTableView ignore beginRemove() and endRemove()? It appears to ignore this but respect beginAppend() and endAppend().
Thanks,
Oh. Qt 4.8.x on Linux Target is embedded, but problem visible on both.
Bookmarks