summaryrefslogtreecommitdiff
path: root/core/pim/osearch/searchgroup.cpp
Unidiff
Diffstat (limited to 'core/pim/osearch/searchgroup.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/osearch/searchgroup.cpp24
1 files changed, 20 insertions, 4 deletions
diff --git a/core/pim/osearch/searchgroup.cpp b/core/pim/osearch/searchgroup.cpp
index dce3b14..d062207 100644
--- a/core/pim/osearch/searchgroup.cpp
+++ b/core/pim/osearch/searchgroup.cpp
@@ -11,12 +11,16 @@
11// 11//
12// 12//
13#include "searchgroup.h" 13#include "searchgroup.h"
14
15#include <qregexp.h>
16
14#include "olistviewitem.h" 17#include "olistviewitem.h"
15 18
16SearchGroup::SearchGroup(QListView* parent, QString name) 19SearchGroup::SearchGroup(QListView* parent, QString name)
17: OListViewItem(parent, name) 20: OListViewItem(parent, name)
18{ 21{
19 _name = name; 22 _name = name;
23 loaded = false;
20 expanded = false; 24 expanded = false;
21} 25}
22 26
@@ -28,14 +32,26 @@ SearchGroup::~SearchGroup()
28 32
29void SearchGroup::expand() 33void SearchGroup::expand()
30{ 34{
35 clearList();
36 if (_search.isEmpty()) return;
37 OListViewItem *dummy = new OListViewItem( this, "searching...");
38 setOpen( expanded );
39 if (!loaded) load();
40 int res_count = search();
41 setText(0, _name + " - " + _search.pattern() + " (" + QString::number( res_count ) + ")");
42 delete dummy;
43}
44
45
46void SearchGroup::clearList()
47{
31 QListViewItem *item = firstChild(); 48 QListViewItem *item = firstChild();
32 QListViewItem *toDel; 49 QListViewItem *toDel;
33 50
34 while ( item != 0 ) { 51 while ( item != 0 ) {
35 toDel = item; 52 toDel = item;
36 item = item->nextSibling(); 53 item = item->nextSibling();
37 //takeItem(toDel); 54 delete toDel;
38 delete toDel;
39 } 55 }
40 expanded = true; 56 expanded = true;
41} 57}