summaryrefslogtreecommitdiff
path: root/noncore/net/mail/nntpgroups.cpp
authoralwin <alwin>2004-03-07 02:18:47 (UTC)
committer alwin <alwin>2004-03-07 02:18:47 (UTC)
commite1c0bbc4fafe709ceed8f4a046c4bff7d4ba30ff (patch) (unidiff)
tree5c7bc290c2f2e262749c93023a4a5c2b7249bd92 /noncore/net/mail/nntpgroups.cpp
parentdf4f3107d45976d9276ef96df4683822cf05d38c (diff)
downloadopie-e1c0bbc4fafe709ceed8f4a046c4bff7d4ba30ff.zip
opie-e1c0bbc4fafe709ceed8f4a046c4bff7d4ba30ff.tar.gz
opie-e1c0bbc4fafe709ceed8f4a046c4bff7d4ba30ff.tar.bz2
filter for newsgroups works
ToDo: we should cache the list of newsgroups!
Diffstat (limited to 'noncore/net/mail/nntpgroups.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/nntpgroups.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/noncore/net/mail/nntpgroups.cpp b/noncore/net/mail/nntpgroups.cpp
index 97b1985..8741c4b 100644
--- a/noncore/net/mail/nntpgroups.cpp
+++ b/noncore/net/mail/nntpgroups.cpp
@@ -1,11 +1,12 @@
1#include "nntpgroups.h" 1#include "nntpgroups.h"
2 2
3#include <libmailwrapper/settings.h> 3#include <libmailwrapper/settings.h>
4 4
5#include <qlistview.h> 5#include <qlistview.h>
6#include <qlineedit.h>
6 7
7NNTPGroups::NNTPGroups(NNTPaccount *account, QWidget* parent, const char* name, WFlags fl) 8NNTPGroups::NNTPGroups(NNTPaccount *account, QWidget* parent, const char* name, WFlags fl)
8 : NNTPGroupsUI(parent,name,fl),subscribedGroups() 9 : NNTPGroupsUI(parent,name,fl),subscribedGroups()
9{ 10{
10 m_Account = account; 11 m_Account = account;
11 fillGroups(); 12 fillGroups();
@@ -18,18 +19,21 @@ NNTPGroups::~NNTPGroups()
18 19
19void NNTPGroups::slotGetNG() 20void NNTPGroups::slotGetNG()
20{ 21{
21 if (!m_Account) return; 22 if (!m_Account) return;
22 GroupListView->clear(); 23 GroupListView->clear();
23 NNTPwrapper tmp( m_Account ); 24 NNTPwrapper tmp( m_Account );
24 QStringList list = tmp.listAllNewsgroups(); 25 QString filter = Groupfilteredit->text();
26 QStringList list = tmp.listAllNewsgroups(filter);
27 subscribedGroupsNotListed = subscribedGroups;
25 for ( QStringList::Iterator it = list.begin(); it != list.end(); ++it ) { 28 for ( QStringList::Iterator it = list.begin(); it != list.end(); ++it ) {
26 QCheckListItem *item; 29 QCheckListItem *item;
27 item = new QCheckListItem( GroupListView, (*it), QCheckListItem::CheckBox ); 30 item = new QCheckListItem( GroupListView, (*it), QCheckListItem::CheckBox );
28 if ( subscribedGroups.contains( (*it) ) >= 1 ) { 31 if ( subscribedGroups.contains( (*it) ) >= 1 ) {
29 item->setOn( true ); 32 item->setOn( true );
33 subscribedGroupsNotListed.remove((*it));
30 } 34 }
31 } 35 }
32} 36}
33 37
34void NNTPGroups::fillGroups() 38void NNTPGroups::fillGroups()
35{ 39{
@@ -50,8 +54,9 @@ void NNTPGroups::storeValues()
50 for ( ; list_it.current(); ++list_it ) { 54 for ( ; list_it.current(); ++list_it ) {
51 if ( ( (QCheckListItem*)list_it.current() )->isOn() ) { 55 if ( ( (QCheckListItem*)list_it.current() )->isOn() ) {
52 qDebug(list_it.current()->text(0) ); 56 qDebug(list_it.current()->text(0) );
53 subscribedGroups.append( list_it.current()->text(0) ); 57 subscribedGroups.append( list_it.current()->text(0) );
54 } 58 }
55 } 59 }
60 subscribedGroups+=subscribedGroupsNotListed;
56 m_Account->setGroups( subscribedGroups ); 61 m_Account->setGroups( subscribedGroups );
57} 62}