]> cloud.milkyroute.net Git - dolphin.git/commit
Try to avoid calling the model's data method if only "text" is needed
authorFrank Reininghaus <frank78ac@googlemail.com>
Wed, 4 Sep 2013 19:34:03 +0000 (21:34 +0200)
committerFrank Reininghaus <frank78ac@googlemail.com>
Wed, 4 Sep 2013 19:37:01 +0000 (21:37 +0200)
commit8f7c3619ec734bbf31ae81315a6548db9cbd19aa
treef7706c4e400baf6fd73834e569271307a2137338
parenta4ef4bbfdebad708e4b3c772c1ce3e236a4da145
Try to avoid calling the model's data method if only "text" is needed

Currently, KStandardItemListWidgetInformant::itemSizeHint() calls the
model's data(int) method for every single item, but the full data is
actually only needed for the size calculation in Compact View. In
Details View, no data is needed at all to determine the size required
for the item, and in Icons View, only the name is needed.

This patch makes it possible for subclasses of
KStandardItemListWidgetInformant to provide an alternative way to
obtain the "text", and implements this in the subclass
KFileItemListWidgetInformant.

The final goal is to achieve that the QHash which contains all data
for a file item is only created if it is really needed, e.g., because
the view needs access to the data for displaying the item on the
screen.

REVIEW: 112253
src/kitemviews/kfileitemlistwidget.cpp
src/kitemviews/kfileitemlistwidget.h
src/kitemviews/kstandarditemlistwidget.cpp
src/kitemviews/kstandarditemlistwidget.h