kmail

vacationdialog.h
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 TQString;
00021 class TQCheckBox;
00022 class TQLineEdit;
00023 class TQTextEdit;
00024 class KDateWidget;
00025 class KIntSpinBox;
00026 template <typename T> class TQValueList;
00027 
00028 namespace KMime {
00029   namespace Types {
00030     struct AddrSpec;
00031     typedef TQValueList<AddrSpec> AddrSpecList;
00032   }
00033 }
00034 
00035 namespace KMail {
00036 
00037   class VacationDialog : public KDialogBase {
00038     Q_OBJECT
00039   TQ_OBJECT
00040   public:
00041     VacationDialog( const TQString & caption, TQWidget * parent=0,
00042             const char * name=0, bool modal=true );
00043     virtual ~VacationDialog();
00044 
00045     virtual void enableDomainAndSendForSpam( bool enable = true );
00046 
00047     bool activateVacation() const;
00048     virtual void setActivateVacation( bool activate );
00049 
00050     bool domainCheck() const;
00051     virtual void setDomainCheck( bool check );
00052 
00053     TQString messageText() const;
00054     virtual void setMessageText( const TQString & text );
00055 
00056     int notificationInterval() const;
00057     virtual void setNotificationInterval( int days );
00058 
00059     KMime::Types::AddrSpecList mailAliases() const;
00060     virtual void setMailAliases( const KMime::Types::AddrSpecList & aliases );
00061     virtual void setMailAliases( const TQString & aliases );
00062 
00063     TQString domainName() const;
00064     virtual void setDomainName( const TQString & domain );
00065 
00066     bool sendForSpam() const;
00067     virtual void setSendForSpam( bool enable );
00068 
00069 
00070   private slots:
00071     void slotIntervalSpinChanged( int value );
00072 
00073   protected:
00074     TQCheckBox   * mActiveCheck;
00075     KIntSpinBox * mIntervalSpin;
00076     TQLineEdit   * mMailAliasesEdit;
00077     TQTextEdit   * mTextEdit;
00078     TQCheckBox   * mSpamCheck;
00079     TQCheckBox   * mDomainCheck;
00080     TQLineEdit   * mDomainEdit;
00081 
00082   };
00083 
00084 } // namespace KMail
00085 
00086 #endif // __KMAIL_VACATIONDIALOG_H__