[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: KDE/kdelibs/kdeui/itemviews
From: Rafael Fernández López <ereslibre () kde ! org>
Date: 2009-08-04 16:57:03
Message-ID: 1249405023.245621.19778.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 1006883 by ereslibre:
Implement partial support for model->flags()
CCMAIL: kde-core-devel@kde.org
CCMAIL: sourtooth@gmail.com
M +8 -2 kcategorizedview.cpp
--- trunk/KDE/kdelibs/kdeui/itemviews/kcategorizedview.cpp #1006882:1006883
@@ -772,6 +772,7 @@
const bool alternateItem = (i - block->firstIndex.row()) % 2;
const QModelIndex index = d->proxyModel->index(i, modelColumn(), rootIndex());
+ const Qt::ItemFlags flags = d->proxyModel->flags(index);
QStyleOptionViewItemV4 option(viewOptions());
option.rect = visualRect(index);
option.widget = this;
@@ -781,10 +782,15 @@
: QStyleOptionViewItemV4::None;
option.state |= (index == d->hoveredIndex) ? QStyle::State_MouseOver
: QStyle::State_None;
- option.state |= selectionModel()->isSelected(index) ? QStyle::State_Selected
- : QStyle::State_None;
+ if (flags & Qt::ItemIsSelectable) {
+ option.state |= selectionModel()->isSelected(index) ? QStyle::State_Selected
+ : QStyle::State_None;
+ }
option.state |= (index == currentIndex()) ? QStyle::State_HasFocus
: QStyle::State_None;
+ if (!(flags & Qt::ItemIsEnabled)) {
+ option.state &= ~QStyle::State_Enabled;
+ }
itemDelegate(index)->paint(&p, option, index);
++i;
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic