blob: 0746da65e41308db2f560ffbe8dbc646c7b61e8d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
/***************************************************************************
categoryfilterimpl.cpp - description
-------------------
begin : Sun Nov 17 2002
copyright : (C) 2002 by Andy Qua
email : andy.qua@blueyonder.co.uk
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#include <iostream>
using namespace std;
#include <qlistbox.h>
#include <qstring.h>
#include "categoryfilterimpl.h"
CategoryFilterImpl :: CategoryFilterImpl(const QString &categories, const QString &selectedCategories, QWidget *parent, const char *name )
: CategoryFilterDlg(parent,name, true)
{
// Split up categories and add them to the listbox
int start = 1;
QString item;
int end;
do
{
end = categories.find( "#", start );
item = categories.mid( start, end - start );
if ( item != "" )
{
lstCategories->insertItem( item );
if ( selectedCategories.find( "#" + item + "#" ) != -1 )
lstCategories->setSelected( lstCategories->count()-1, true );
}
start = end + 1;
} while ( start < (int)categories.length() );
lstCategories->sort( true );
showMaximized();
}
CategoryFilterImpl :: ~CategoryFilterImpl()
{
}
QString CategoryFilterImpl :: getSelectedFilter()
{
// Grab cetegories from listbox
QString ret = "#";
for ( int i = 0 ; i < (int)lstCategories->count() ; ++i )
{
if ( lstCategories->isSelected( i ) )
ret += lstCategories->text( i ) + "#";
}
if ( ret == "#" )
ret = "";
return ret;
}
|