korganizer Library API Documentation

kogroupware.h

00001 /*
00002   This file is part of the Groupware/KOrganizer integration.
00003 
00004   Requires the Qt and KDE widget libraries, available at no cost at
00005   http://www.trolltech.com and http://www.kde.org respectively
00006 
00007   Copyright (c) 2002-2004 Klarälvdalens Datakonsult AB
00008         <info@klaralvdalens-datakonsult.se>
00009 
00010   This program is free software; you can redistribute it and/or modify
00011   it under the terms of the GNU General Public License as published by
00012   the Free Software Foundation; either version 2 of the License, or
00013   (at your option) any later version.
00014 
00015   This program is distributed in the hope that it will be useful,
00016   but WITHOUT ANY WARRANTY; without even the implied warranty of
00017   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00018   GNU General Public License for more details.
00019 
00020   You should have received a copy of the GNU General Public License
00021   along with this program; if not, write to the Free Software
00022   Foundation, Inc., 59 Temple Place - Suite 330, Boston,
00023   MA  02111-1307, USA.
00024 
00025   In addition, as a special exception, the copyright holders give
00026   permission to link the code of this program with any edition of
00027   the Qt library by Trolltech AS, Norway (or with modified versions
00028   of Qt that use the same license as Qt), and distribute linked
00029   combinations including the two.  You must obey the GNU General
00030   Public License in all respects for all of the code used other than
00031   Qt.  If you modify this file, you may extend this exception to
00032   your version of the file, but you are not obligated to do so.  If
00033   you do not wish to do so, delete this exception statement from
00034   your version.
00035 */
00036 
00037 #ifndef KOGROUPWARE_H
00038 #define KOGROUPWARE_H
00039 
00040 #include <libkcal/icalformat.h>
00041 #include <libkcal/scheduler.h>
00042 #include <qstring.h>
00043 
00044 #include <kio/job.h>
00045 
00046 using namespace KCal;
00047 
00048 namespace KCal {
00049 class Calendar;
00050 class Event;
00051 }
00052 class CalendarView;
00053 class FreeBusyManager;
00054 
00055 class KOGroupware : public QObject
00056 {
00057     Q_OBJECT
00058   public:
00059     static KOGroupware* create( CalendarView*, KCal::Calendar* );
00060     static KOGroupware* instance();
00061 
00062     FreeBusyManager *freeBusyManager();
00063 
00068     bool sendICalMessage( QWidget* parent, KCal::Scheduler::Method method,
00069                           Incidence* incidence, bool isDeleting = false );
00070 
00071     // THIS IS THE ACTUAL KM/KO API
00072     enum EventState { Accepted, ConditionallyAccepted, Declined, Request };
00073 
00074   private slots:
00076     void incomingDirChanged( const QString& path );
00077 
00078   protected:
00079     KOGroupware( CalendarView*, KCal::Calendar* );
00080 
00081   private:
00082     static KOGroupware *mInstance;
00083     KCal::ICalFormat mFormat;
00084     CalendarView *mView;
00085     KCal::Calendar *mCalendar;
00086     static FreeBusyManager *mFreeBusyManager;
00087 };
00088 
00089 #endif
KDE Logo
This file is part of the documentation for korganizer Library Version 3.3.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Mar 23 22:45:25 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003