kmail

vacationdialog.h

Go to the documentation of this file.
00001 /*  -*- c++ -*-
00002     vacationdialog.h
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, US
00013 */
00014 
00015 #ifndef __KMAIL_VACATIONDIALOG_H__
00016 #define __KMAIL_VACATIONDIALOG_H__
00017 
00018 #include "kdialogbase.h"
00019 
00020 class QString;
00021 class QCheckBox;
00022 class QLineEdit;
00023 class QTextEdit;
00024 class KDateWidget;
00025 class KIntSpinBox;
00026 template <typename T> class QValueList;
00027 
00028 namespace KMime {
00029   namespace Types {
00030     struct AddrSpec;
00031     typedef QValueList<AddrSpec> AddrSpecList;
00032   }
00033 }
00034 
00035 namespace KMail {
00036 
00037   class VacationDialog : public KDialogBase {
00038     Q_OBJECT
00039   public:
00040     VacationDialog( const QString & caption, QWidget * parent=0,
00041             const char * name=0, bool modal=true );
00042     virtual ~VacationDialog();
00043 
00044     virtual void enableDomainAndSendForSpam( bool enable = true );
00045 
00046     bool activateVacation() const;
00047     virtual void setActivateVacation( bool activate );
00048 
00049     QString messageText() const;
00050     virtual void setMessageText( const QString & text );
00051 
00052     int notificationInterval() const;
00053     virtual void setNotificationInterval( int days );
00054 
00055     KMime::Types::AddrSpecList mailAliases() const;
00056     virtual void setMailAliases( const KMime::Types::AddrSpecList & aliases );
00057     virtual void setMailAliases( const QString & aliases );
00058  
00059     QString domainName() const;
00060     virtual void setDomainName( const QString & domain );
00061 
00062     bool sendForSpam() const;
00063     virtual void setSendForSpam( bool enable );
00064 
00065     
00066   private slots:
00067     void slotIntervalSpinChanged( int value );
00068 
00069   protected:
00070     QCheckBox   * mActiveCheck;
00071     KIntSpinBox * mIntervalSpin;
00072     QLineEdit   * mMailAliasesEdit;
00073     QTextEdit   * mTextEdit;
00074     QCheckBox   * mSpamCheck;
00075     QCheckBox   * mDomainCheck;
00076     QLineEdit   * mDomainEdit;
00077 
00078   };
00079 
00080 } // namespace KMail
00081 
00082 #endif // __KMAIL_VACATIONDIALOG_H__