kmail Library API Documentation

vacation.h

00001 /* -*- c++ -*- 00002 vacation.cpp 00003 00004 KMail, the KDE mail client. 00005 Copyright (c) 2002 Marc Mutz <mutz@kde.org> 00006 00007 This program is free software; you can redistribute it and/or 00008 modify it under the terms of the GNU General Public License, 00009 version 2.0, as published by the Free Software Foundation. 00010 You should have received a copy of the GNU General Public License 00011 along with this program; if not, write to the Free Software Foundation, 00012 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, US 00013 */ 00014 00015 #ifndef __KMAIL_VACATION_H__ 00016 #define __KMAIL_VACATION_H__ 00017 00018 #include <qobject.h> 00019 00020 #include <kurl.h> 00021 00022 class QString; 00023 class QStringList; 00024 template <typename T> class QValueList; 00025 namespace KMail { 00026 class SieveJob; 00027 class VacationDialog; 00028 } 00029 namespace KMime { 00030 namespace Types { 00031 struct AddrSpec; 00032 typedef QValueList<AddrSpec> AddrSpecList; 00033 } 00034 } 00035 00036 namespace KMail { 00037 00038 class Vacation : public QObject { 00039 Q_OBJECT 00040 public: 00041 Vacation( QObject * parent=0, const char * name=0 ); 00042 virtual ~Vacation(); 00043 00044 bool isUsable() const { return !mUrl.isEmpty(); } 00045 00046 static QString defaultMessageText(); 00047 static int defaultNotificationInterval(); 00048 static QStringList defaultMailAliases(); 00049 00050 protected: 00051 static QString composeScript( const QString & messageText, 00052 int notificationInterval, 00053 const KMime::Types::AddrSpecList & aliases); 00054 static bool parseScript( const QString & script, QString & messageText, 00055 int & notificationInterval, QStringList & aliases ); 00056 KURL findURL() const; 00057 void handlePutResult( KMail::SieveJob * job, bool success, bool ); 00058 00059 00060 signals: 00061 void result( bool success ); 00062 00063 protected slots: 00064 void slotDialogDefaults(); 00065 void slotGetResult( KMail::SieveJob * job, bool success, 00066 const QString & script, bool active ); 00067 void slotDialogOk(); 00068 void slotDialogCancel(); 00069 void slotPutActiveResult( KMail::SieveJob *, bool ); 00070 void slotPutInactiveResult( KMail::SieveJob *, bool ); 00071 protected: 00072 // IO: 00073 KMail::SieveJob * mSieveJob; 00074 KURL mUrl; 00075 // GUI: 00076 KMail::VacationDialog * mDialog; 00077 bool mWasActive; 00078 }; 00079 00080 } // namespace KMail 00081 00082 #endif // __KMAIL_VACATION_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:54 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003