diff options
| author | 2008-09-21 19:18:01 +0000 | |
|---|---|---|
| committer | 2008-09-21 19:18:01 +0000 | |
| commit | 378d4cf6d50a08619f4246508f4aa15684fc8717 (patch) | |
| tree | 97e64e3df814b669071e171553654e7058a7a107 /src/modules/list/listwindow.cpp | |
| parent | fixed optw_messages.. sounds like the options module now is fully ported :) (diff) | |
| download | KVIrc-378d4cf6d50a08619f4246508f4aa15684fc8717.tar.gz KVIrc-378d4cf6d50a08619f4246508f4aa15684fc8717.tar.bz2 KVIrc-378d4cf6d50a08619f4246508f4aa15684fc8717.zip | |
fixed porting of "list" module; updated TODO-Qt4
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@2526 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/list/listwindow.cpp')
| -rw-r--r-- | src/modules/list/listwindow.cpp | 51 |
1 files changed, 15 insertions, 36 deletions
diff --git a/src/modules/list/listwindow.cpp b/src/modules/list/listwindow.cpp index 23383c16c..314197b63 100644 --- a/src/modules/list/listwindow.cpp +++ b/src/modules/list/listwindow.cpp @@ -107,43 +107,23 @@ int KviChannelTreeWidgetItem::width ( const QFontMetrics & fm, const KviTalTreeW void KviChannelTreeWidgetItemDelegate::paint( QPainter * p, const QStyleOptionViewItem & option, const QModelIndex & index ) const { - QString szText; QPalette cg; KviChannelTreeWidgetItem *item=static_cast<KviChannelTreeWidgetItem *>(index.internalPointer()); - switch(index.column()) - { - case 0: szText = item->channelData()->m_szChan; break; - case 1: szText = item->channelData()->m_szUsers; break; - default: szText = item->channelData()->m_szTopic; break; - } - KviTalTreeWidget* lv = (KviTalTreeWidget *)item->treeWidget(); - // FIXME - int marg = 5;//lv->itemMargin(); - int r = marg; + KviTalTreeWidget* lv = (KviTalTreeWidget *)parent(); - p->fillRect( option.rect.x(), option.rect.y(), option.rect.width(), option.rect.height(), cg.brush(lv->viewport()->backgroundRole()) ); - int width=option.rect.width(); + if (option.state & QStyle::State_Selected) + p->fillRect(option.rect, cg.brush( QPalette::Highlight ) ); - if ((option.state & QStyle::State_Selected) && (index.column() == 0 || lv->allColumnsShowFocus()) ) { - p->fillRect( r - marg, 0, width - r + marg, option.rect.height(), - cg.brush( QPalette::Highlight ) ); + //reset the color + p->setPen( cg.text().color() ); - if ( (option.state & QStyle::State_Enabled) || !lv ) - p->setPen( cg.highlightedText().color() ); - else if ( !(option.state & QStyle::State_Enabled) && lv) - // FIXME - // p->setPen( lv->palette().currentColorGroup().inactive().highlightedText() ); - p->setPen( lv->palette().highlightedText().color() ); - } else { - if ( (option.state & QStyle::State_Enabled) || !lv ) - p->setPen( cg.text().color() ); - else if ( !(option.state & QStyle::State_Enabled) && lv) - //p->setPen( lv->palette().disabled().text() ); - p->setPen(lv->palette().text().color()); + switch(index.column()) + { + case 0: p->drawText(option.rect, item->channelData()->m_szChan); break; + case 1: p->drawText(option.rect, item->channelData()->m_szUsers); break; + default: KviTopicWidget::paintColoredText(p,item->channelData()->m_szTopic,cg,option.rect); break; } - - KviTopicWidget::paintColoredText(p,szText,cg,option.rect); } QString KviChannelTreeWidgetItem::key(int col,bool) const @@ -217,6 +197,8 @@ KviListWindow::KviListWindow(KviFrame * lpFrm,KviConsole * lpConsole) m_pInfoLabel = new KviThemedLabel(m_pTopSplitter,"info_label"); m_pTreeWidget = new KviTalTreeWidget(m_pVertSplitter); + m_pTreeWidget->setSelectionBehavior(QAbstractItemView::SelectRows); + m_pTreeWidget->setSelectionMode(QAbstractItemView::SingleSelection); m_pTreeWidget->setItemDelegate(new KviChannelTreeWidgetItemDelegate(m_pTreeWidget)); QStringList columnLabels; columnLabels.append(__tr2qs("Channel")); @@ -225,11 +207,9 @@ KviListWindow::KviListWindow(KviFrame * lpFrm,KviConsole * lpConsole) m_pTreeWidget->setColumnCount(3); m_pTreeWidget->setHeaderLabels(columnLabels); m_pTreeWidget->setAllColumnsShowFocus(TRUE); - //m_pTreeWidget->setColumnWidthMode(2,KviTalTreeWidget::Maximum); - //m_pTreeWidget->setColumnWidthMode(3,KviTalTreeWidget::Maximum); - //m_pTreeWidget->setSorting(100); m_pTreeWidget->sortItems(0,Qt::AscendingOrder); - connect(m_pTreeWidget,SIGNAL(itemDoubleClicked(KviTalTreeWidgetItem *)),this,SLOT(itemDoubleClicked(KviTalTreeWidgetItem *))); + + connect(m_pTreeWidget,SIGNAL(itemDoubleClicked(KviTalTreeWidgetItem *, int)),this,SLOT(itemDoubleClicked(KviTalTreeWidgetItem *, int))); m_pIrcView = new KviIrcView(m_pVertSplitter,lpFrm,this); @@ -239,7 +219,6 @@ KviListWindow::KviListWindow(KviFrame * lpFrm,KviConsole * lpConsole) this,SLOT(connectionStateChange())); connectionStateChange(); - } KviListWindow::~KviListWindow() @@ -491,7 +470,7 @@ void KviListWindow::flush() m_pTreeWidget->viewport()->update(); } -void KviListWindow::itemDoubleClicked(KviTalTreeWidgetItem *it) +void KviListWindow::itemDoubleClicked(KviTalTreeWidgetItem *it, int) { QString sz = ((KviChannelTreeWidgetItem *)it)->channel(); if(sz.isEmpty())return; |
