kmail
headerlistquicksearch.h
Go to the documentation of this file.00001 /* -*- mode: C++ -*- 00002 This file is part of KMail, the KDE mail client. 00003 Copyright (c) 2004 Till Adam <adam@kde.org> 00004 00005 KMail is free software; you can redistribute it and/or modify 00006 it under the terms of the GNU General Public License as published by 00007 the Free Software Foundation; either version 2 of the License, or 00008 (at your option) any later version. 00009 00010 KMail is distributed in the hope that it will be useful, but 00011 WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00018 00019 In addition, as a special exception, the copyright holders give 00020 permission to link the code of this program with any edition of 00021 the Qt library by Trolltech AS, Norway (or with modified versions 00022 of Qt that use the same license as Qt), and distribute linked 00023 combinations including the two. You must obey the GNU General 00024 Public License in all respects for all of the code used other than 00025 Qt. If you modify this file, you may extend this exception to 00026 your version of the file, but you are not obligated to do so. If 00027 you do not wish to do so, delete this exception statement from 00028 your version. 00029 */ 00030 00031 #ifndef KMAILHEADERLISTQUICKSEARCH_H 00032 #define KMAILHEADERLISTQUICKSEARCH_H 00033 00034 #include <messagestatus.h> 00035 #include "kmsearchpattern.h" 00036 #include <k3listviewsearchline.h> 00037 00038 class KComboBox; 00039 class K3ListView; 00040 00041 namespace KMail { 00042 00043 class HeaderListQuickSearch : public K3ListViewSearchLine 00044 { 00045 Q_OBJECT 00046 public: 00047 00052 HeaderListQuickSearch( QWidget *parent, 00053 K3ListView *listView ); 00054 virtual ~HeaderListQuickSearch(); 00055 00059 QString currentSearchTerm() const; 00060 00064 KPIM::MessageStatus currentStatus() const; 00065 00066 public slots: 00067 void reset(); 00070 void updateComboList(); 00071 00072 signals: 00073 void requestFullSearch(); 00074 00075 protected: 00080 virtual bool itemMatches(const Q3ListViewItem *item, const QString &s) const; 00081 00082 private slots: 00087 void slotStatusChanged( int index ); 00088 00089 private: 00091 void insertStatus(KMail::StatusValueTypes which); 00092 KComboBox *mStatusCombo; 00093 KPIM::MessageStatus mStatus; 00094 QVector<QString> statusList; 00095 int mComboStatusCount; 00096 mutable QString mCurrentSearchTerm; 00097 bool mFilterWithTag; 00098 QString mTagLabel; 00099 }; 00100 00101 } 00102 00103 #endif
KDE 4.2 API Reference