5 #ifndef KMFILTERRULESEDIT_H
6 #define KMFILTERRULESEDIT_H
8 #include "kwidgetlister.h"
10 #include <tqgroupbox.h>
11 #include <tqstringlist.h>
16 template < typename T> class TQPtrList;
48 enum { Message, Body, AnyHeader, Recipients, Size, AgeInDays, Status,
49 Subject, From, To, CC, ReplyTo, Organization };
66 static int ruleFieldToId( const TQString & i18nVal );
69 void slotFunctionChanged();
70 void slotValueChanged();
91 void slotRuleFieldChanged( const TQString & );
95 void initFieldList( bool headersOnly, bool absoluteDates );
97 TQStringList mFilterFieldList;
98 TQComboBox *mRuleField;
99 TQWidgetStack *mFunctionStack;
100 TQWidgetStack *mValueStack;
105 class KMSearchRuleWidgetLister : public KWidgetLister
110 friend class ::KMSearchPatternEdit;
113 KMSearchRuleWidgetLister( TQWidget *parent=0, const char* name=0, bool headersOnly = false, bool absoluteDates = false );
115 virtual ~KMSearchRuleWidgetLister();
117 void setRuleList( TQPtrList<KMSearchRule> * aList );
118 void setHeadersOnly( bool headersOnly );
124 virtual void clearWidget( TQWidget *aWidget );
125 virtual TQWidget* createWidget( TQWidget *parent );
128 void regenerateRuleListFromWidgets();
129 TQPtrList<KMSearchRule> *mRuleList;
173 KMSearchPatternEdit(TQWidget *parent=0, const char *name=0, bool headersOnly = false, bool absoluteDates = false);
176 KMSearchPatternEdit( const TQString & title, TQWidget *parent=0, const char *name=0, bool headersOnly = false, bool absoluteDates = false);
203 void slotRadioClicked( int aIdx);
204 void slotAutoNameHack();
207 void initLayout( bool headersOnly, bool absoluteDates );
210 TQRadioButton *mAllRBtn, *mAnyRBtn;
211 KMSearchRuleWidgetLister *mRuleLister;
|