From ea8ae6ee9a5aac6fcca4b9a92ee0caa6f682d1dc Mon Sep 17 00:00:00 2001 From: Szymon Tomasz Stefanek Date: Sun, 29 Nov 2009 08:27:25 +0000 Subject: Client side list filtering by sg2002 git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@3637 17fca916-40b9-46aa-a4ea-0a15b648b75c --- src/modules/list/listwindow.cpp | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) (limited to 'src/modules/list/listwindow.cpp') diff --git a/src/modules/list/listwindow.cpp b/src/modules/list/listwindow.cpp index 7f996201c..0b6a607e7 100644 --- a/src/modules/list/listwindow.cpp +++ b/src/modules/list/listwindow.cpp @@ -247,7 +247,8 @@ void KviListWindow::requestList() KviStr parms = m_pParamsEdit->text(); if(parms.isEmpty()) m_pConsole->connection()->sendFmtData("list"); - else m_pConsole->connection()->sendFmtData("list %s",m_pConsole->connection()->encodeText(parms.ptr()).data()); + else + m_pConsole->connection()->sendFmtData("list %s",m_pConsole->connection()->encodeText(parms.ptr()).data()); outputNoFmt(KVI_OUT_SYSTEMMESSAGE,__tr2qs("Sent list request, waiting for reply...")); m_pRequestButton->setEnabled(false); @@ -435,12 +436,29 @@ void KviListWindow::processData(KviIrcMessage * pMsg) m_pRequestButton->setEnabled(false); } - m_pItemList->append( - new KviChannelTreeWidgetItemData( - pMsg->connection()->decodeText(pMsg->safeParam(1)), - pMsg->connection()->decodeText(pMsg->safeParam(2)), - pMsg->connection()->decodeText(pMsg->safeTrailing())) - ); + if(m_pParamsEdit->text().isEmpty()) + { + m_pItemList->append( + new KviChannelTreeWidgetItemData( + pMsg->connection()->decodeText(pMsg->safeParam(1)), + pMsg->connection()->decodeText(pMsg->safeParam(2)), + pMsg->connection()->decodeText(pMsg->safeTrailing())) + ); + } else { + if( + pMsg->connection()->decodeText(pMsg->safeParam(1)).contains(m_pParamsEdit->text()) || + pMsg->connection()->decodeText(pMsg->safeTrailing()).contains(m_pParamsEdit->text()) + ) + { + m_pItemList->append( + new KviChannelTreeWidgetItemData( + pMsg->connection()->decodeText(pMsg->safeParam(1)), + pMsg->connection()->decodeText(pMsg->safeParam(2)), + pMsg->connection()->decodeText(pMsg->safeTrailing()) + ) + ); + } + } if(_OUTPUT_VERBOSE) { -- cgit v1.3.1-10-gc9f91