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 | |
| 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')
| -rw-r--r-- | src/modules/list/libkvilist.cpp | 2 | ||||
| -rw-r--r-- | src/modules/list/listwindow.cpp | 51 | ||||
| -rw-r--r-- | src/modules/list/listwindow.h | 23 |
3 files changed, 27 insertions, 49 deletions
diff --git a/src/modules/list/libkvilist.cpp b/src/modules/list/libkvilist.cpp index c36893af4..40b2ae82c 100644 --- a/src/modules/list/libkvilist.cpp +++ b/src/modules/list/libkvilist.cpp @@ -89,7 +89,7 @@ static bool list_module_can_unload(KviModule *m) KVIRC_MODULE( "List", // module name "4.0.0", // module version - "Copyright (C) 2000-2001 Szymon Stefanek (pragma at kvirc dot net)", // author & (C) + "Copyright (C) 2000-2008 Szymon Stefanek (pragma at kvirc dot net)", // author & (C) "List window extension", list_module_init, list_module_can_unload, 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; diff --git a/src/modules/list/listwindow.h b/src/modules/list/listwindow.h index c7987dddb..125917cb1 100644 --- a/src/modules/list/listwindow.h +++ b/src/modules/list/listwindow.h @@ -78,7 +78,6 @@ public: const KviChannelTreeWidgetItemData * channelData(){ return m_pData;} int width ( const QFontMetrics & fm, const KviTalTreeWidget * lv, int column ) const; protected: -// virtual void paintCell(QPainter * p,const QColorGroup &cg,int col,int wdth,int align); virtual QString key(int col,bool) const; }; @@ -90,16 +89,16 @@ public: KviListWindow(KviFrame * lpFrm,KviConsole * lpConsole); ~KviListWindow(); protected: - QSplitter * m_pVertSplitter; - QSplitter * m_pTopSplitter; - KviTalTreeWidget * m_pTreeWidget; - QLineEdit * m_pParamsEdit; - QToolButton * m_pRequestButton; - QToolButton * m_pStopListDownloadButton; - QToolButton * m_pOpenButton; - QToolButton * m_pSaveButton; - KviThemedLabel * m_pInfoLabel; - QTimer * m_pFlushTimer; + QSplitter * m_pVertSplitter; + QSplitter * m_pTopSplitter; + KviTalTreeWidget * m_pTreeWidget; + QLineEdit * m_pParamsEdit; + QToolButton * m_pRequestButton; + QToolButton * m_pStopListDownloadButton; + QToolButton * m_pOpenButton; + QToolButton * m_pSaveButton; + KviThemedLabel * m_pInfoLabel; + QTimer * m_pFlushTimer; KviPointerList<KviChannelTreeWidgetItemData> * m_pItemList; public: // Methods virtual void control(int msg); @@ -113,7 +112,7 @@ protected: virtual void getBaseLogFileName(KviStr &buffer); protected slots: void flush(); - void itemDoubleClicked(KviTalTreeWidgetItem *it); + void itemDoubleClicked(KviTalTreeWidgetItem *it, int); void requestList(); void stoplistdownload(); void connectionStateChange(); |
