00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef FILTERSETUPITEM_H
00019 #define FILTERSETUPITEM_H
00020
00021
00022 #include <QTreeWidgetItem>
00023
00024
00025 #include <kapplication.h>
00026 #include <kconfig.h>
00027 #include <kdebug.h>
00028 #include <klocale.h>
00029 #include <KConfigGroup>
00030
00031
00032 #include "constants.h"
00033 #include "types.h"
00034
00035 using namespace Types;
00036
00041 class FilterSetupItem : public QTreeWidgetItem
00042 {
00043
00044 public:
00045
00049 enum Column{ ColNumber = 0, ColName = 1, ColAction = 2 };
00050
00055 FilterSetupItem( QTreeWidget* parent );
00056
00062 FilterSetupItem( QTreeWidget* parent, uint num );
00063
00067 ~FilterSetupItem();
00068
00075 void setName( QString name );
00076
00083 QString getName() const;
00084
00091 void setNumber( uint number );
00092
00099 uint getNumber() const;
00100
00107 void setAction( int action );
00108
00116 int getAction() const;
00117
00124 void setMailBox( QString mailbox );
00125
00132 QString getMailBox() const;
00133
00140 void setCriteriaLinkage( int linkage );
00141
00149 int getCriteriaLinkage() const;
00150
00158 void setCriteriaList( FilterCriteriaList_Type list );
00159
00167 FilterCriteriaList_Type getCriteriaList() const;
00168
00173 void save();
00174
00182 virtual int compare( FilterSetupItem* i, int col, bool ascending ) const;
00183
00188 void load();
00189
00190
00191 private:
00192
00196 QString name;
00197
00201 KSharedConfigPtr config;
00202
00206 FilterCriteriaList_Type criteriaList;
00207
00212 int action;
00213
00217 QString mailbox;
00218
00223 uint number;
00224
00229 int linkage;
00230
00231 protected:
00232
00236 void init();
00237
00241 void updateActionColumn();
00242
00243
00244
00245
00246 };
00247
00248 #endif