kmail Library API Documentation

kmfldsearch.h

00001 /* kmfldsearch 00002 * (c) 1999 Stefan Taferner, (c) 2001 Aaron J. Seigo 00003 * This code is under GPL 00004 */ 00005 #ifndef kmfldsearch_h 00006 #define kmfldsearch_h 00007 00008 #include <qvaluelist.h> 00009 #include <qptrlist.h> 00010 #include <qstringlist.h> 00011 #include <qguardedptr.h> 00012 00013 #include <kdialogbase.h> 00014 #include <kxmlguiclient.h> 00015 #include <mimelib/string.h> 00016 00017 class QCheckBox; 00018 class QComboBox; 00019 class QGridLayout; 00020 class QLabel; 00021 class QLineEdit; 00022 class KListView; 00023 class QListViewItem; 00024 class QPushButton; 00025 class QRadioButton; 00026 class KAction; 00027 class KActionMenu; 00028 class KMFolder; 00029 class KMFolderSearch; 00030 class KMFolderComboBox; 00031 class KMFolderImap; 00032 class KMFolderMgr; 00033 class KMMainWidget; 00034 class KMMessage; 00035 class KMSearchPattern; 00036 class KMSearchPatternEdit; 00037 class KStatusBar; 00038 class DwBoyerMoore; 00039 00040 typedef QPtrList<KMMsgBase> KMMessageList; 00041 00042 class KMFldSearch: public KDialogBase, virtual public KXMLGUIClient 00043 { 00044 Q_OBJECT 00045 00046 public: 00047 KMFldSearch(KMMainWidget* parent, const char* name=0, 00048 KMFolder *curFolder=0, bool modal=FALSE); 00049 virtual ~KMFldSearch(); 00050 00051 void activateFolder(KMFolder* curFolder); 00052 KMMessageList selectedMessages(); 00053 KMMessage* message(); 00054 00055 protected slots: 00057 virtual void updStatus(void); 00058 00059 virtual void slotClose(); 00060 virtual void slotSearch(); 00061 virtual void slotStop(); 00062 void updateCreateButton( const QString &); 00063 void renameSearchFolder(); 00064 void openSearchFolder(); 00065 void folderInvalidated(KMFolder *); 00066 virtual bool slotShowMsg(QListViewItem *); 00067 virtual void updateContextMenuActions(); 00068 virtual void slotContextMenuRequested( QListViewItem*, const QPoint &, int ); 00069 virtual void copySelectedToFolder( int menuId ); 00070 virtual void moveSelectedToFolder( int menuId ); 00071 virtual void slotFolderActivated(int nr); 00072 virtual void slotFilterAvailableRules(); 00073 void slotClearSelection(); 00074 void slotReplyToMsg(); 00075 void slotReplyAllToMsg(); 00076 void slotReplyListToMsg(); 00077 void slotForwardMsg(); 00078 void slotForwardAttachedMsg(); 00079 void slotSaveMsg(); 00080 void slotSaveAttachments(); 00081 void slotPrintMsg(); 00082 00084 virtual void searchDone(); 00085 virtual void slotAddMsg(int idx); 00086 virtual void slotRemoveMsg(KMFolder *, Q_UINT32 serNum); 00087 void enableGUI(); 00088 00089 protected: 00090 00092 virtual void keyPressEvent(QKeyEvent*); 00093 00095 virtual void closeEvent(QCloseEvent*); 00096 00097 protected: 00098 bool mStopped; 00099 bool mCloseRequested; 00100 int mFetchingInProgress; 00101 int mSortColumn; 00102 SortOrder mSortOrder; 00103 QGuardedPtr<KMFolderSearch> mFolder; 00104 QTimer *mTimer; 00105 00106 // GC'd by Qt 00107 QRadioButton *mChkbxAllFolders; 00108 QRadioButton *mChkbxSpecificFolders; 00109 KMFolderComboBox *mCbxFolders; 00110 QPushButton *mBtnSearch; 00111 QPushButton *mBtnStop; 00112 QCheckBox *mChkSubFolders; 00113 KListView* mLbxMatches; 00114 QLabel *mSearchFolderLbl; 00115 QLineEdit *mSearchFolderEdt; 00116 QPushButton *mSearchFolderBtn; 00117 QPushButton *mSearchFolderOpenBtn; 00118 KStatusBar* mStatusBar; 00119 QWidget* mLastFocus; // to remember the position of the focus 00120 QMap<int,KMFolder*> mMenuToFolder; 00121 KAction *mReplyAction, *mReplyAllAction, *mReplyListAction, *mSaveAsAction, 00122 *mForwardAction, *mForwardAttachedAction, *mPrintAction, *mClearAction, 00123 *mSaveAtchAction; 00124 KActionMenu *mForwardActionMenu; 00125 QValueList<QGuardedPtr<KMFolder> > mFolders; 00126 00127 // not owned by us 00128 KMMainWidget* mKMMainWidget; 00129 KMSearchPatternEdit *mPatternEdit; 00130 KMSearchPattern *mSearchPattern; 00131 00132 static const int MSGID_COLUMN; 00133 }; 00134 #endif /*kmfldsearch_h*/
KDE Logo
This file is part of the documentation for kmail Library Version 3.3.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Fri Aug 27 12:52:31 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003