+ const QAbstractProxyModel* proxyModel = static_cast<const QAbstractProxyModel*>(index.model());
+ const KDirModel* dirModel = static_cast<const KDirModel*>(proxyModel->sourceModel());
+ const QModelIndex dirIndex = proxyModel->mapToSource(index);
+ const KFileItem item = dirModel->itemForIndex(dirIndex);
+ if (!item.isNull()) {
+ const int width = nameColumnWidth(item.text(), opt);
+ opt.rect.setWidth(width);
+ }
+ KFileItemDelegate::paint(painter, opt, index);
+ } else {
+ KFileItemDelegate::paint(painter, option, index);
+ }