korganizer Library API Documentation

outgoingdialog.h

00001 /*
00002     This file is part of KOrganizer.
00003     Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
00004 
00005     This program 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     This program is distributed in the hope that it will be useful,
00011     but 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., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00018 
00019     As a special exception, permission is given to link this program
00020     with any edition of Qt, and distribute the resulting executable,
00021     without including the source code for Qt in the source distribution.
00022 */
00023 #ifndef OUTGOINGDIALOG_H
00024 #define OUTGOINGDIALOG_H
00025 
00026 #include <qlistview.h>
00027 #include <qmap.h>
00028 #include <qstring.h>
00029 
00030 #include <libkcal/scheduler.h>
00031 
00032 #include "docprefs.h"
00033 #include "outgoingdialog_base.h"
00034 
00035 using namespace KCal;
00036 
00037 class ScheduleItemOut : public QListViewItem
00038 {
00039   public:
00040     ScheduleItemOut(QListView *parent,IncidenceBase *ev,
00041         Scheduler::Method method, const QString &recipients=QString::null);
00042     virtual ~ScheduleItemOut() {}
00043 
00044     IncidenceBase *event() { return mIncidence; }
00045     Scheduler::Method method() { return mMethod; }
00046     QString recipients() { return mRecipients; }
00047 
00048   private:
00049     IncidenceBase *mIncidence;
00050     Scheduler::Method mMethod;
00051     QString mRecipients;
00052 };
00053 
00054 class OutgoingDialog : public OutgoingDialog_base
00055 {
00056     Q_OBJECT
00057   public:
00058     OutgoingDialog(Calendar *,QWidget* parent=0,const char* name=0,
00059                    bool modal=false,WFlags fl=0);
00060     ~OutgoingDialog();
00061 
00062     bool addMessage(IncidenceBase *,Scheduler::Method);
00063     bool addMessage(IncidenceBase *,Scheduler::Method,const QString &recipients);
00064     void setDocumentId( const QString &id );
00065 
00066   public slots:
00067     void loadMessages();
00068 
00069   signals:
00070     void numMessagesChanged(int);
00071 
00072   protected slots:
00073     void send();
00074     void deleteItem();
00075     void showEvent(QListViewItem *);
00076 
00077   private:
00078     bool saveMessage(IncidenceBase *,Scheduler::Method,const QString &recipients=0);
00079     bool deleteMessage(IncidenceBase *);
00080 
00081     Calendar *mCalendar;
00082     ICalFormat *mFormat;
00083     Scheduler *mScheduler;
00084     QMap<IncidenceBase*, QString> mMessageMap;
00085     DocPrefs *mDocPrefs;
00086 };
00087 
00088 #endif // OUTGOINGDIALOG_H
KDE Logo
This file is part of the documentation for korganizer Library Version 3.2.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat May 1 11:38:31 2004 by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2003