31 QStyleOptionViewItem optionCopy = option;
32 initStyleOption(&optionCopy, index);
34 QStyle *style = optionCopy.widget? optionCopy.widget->style() : QApplication::style();
37 doc.setDocumentMargin(6);
38 doc.setHtml(optionCopy.text);
39 doc.setTextWidth(optionCopy.rect.width());
42 optionCopy.text = QString();
43 style->drawControl(QStyle::CE_ItemViewItem, &optionCopy, painter);
45 QAbstractTextDocumentLayout::PaintContext ctx;
49 if (optionCopy.state & QStyle::State_Selected) {
50 textColor = optionCopy.palette.color(QPalette::Active, QPalette::HighlightedText);
52 textColor = optionCopy.palette.color(QPalette::Text);
54 ctx.palette.setColor(QPalette::Text, textColor);
56 painter->translate(optionCopy.rect.left(), optionCopy.rect.top());
57 QRect clip(0, 0, optionCopy.rect.width(), optionCopy.rect.height());
59 doc.setPageSize(clip.size());
60 doc.documentLayout()->draw(painter, ctx);
67 QStyleOptionViewItem optionCopy = option;
68 initStyleOption(&optionCopy, index);
71 doc.setDocumentMargin(6);
72 doc.setHtml(optionCopy.text);
73 doc.setTextWidth(optionCopy.rect.width());
74 return QSize(doc.idealWidth(), doc.size().height());
83 listNews->viewport()->setAutoFillBackground(
false);
84 listNews->installEventFilter(
this);
85 listNews->setVerticalScrollMode(QListView::ScrollPerPixel);
86 listNews->verticalScrollBar()->setSingleStep(50);
109 if (watched == listNews && event->type() == QEvent::Leave) {
110 listNews->clearSelection();
111 listNews->setCurrentIndex(QModelIndex());
113 return QWidget::eventFilter(watched, event);