korganizer
koeventeditor.h
Go to the documentation of this file.00001 /* 00002 This file is part of KOrganizer. 00003 00004 Copyright (c) 2001,2003 Cornelius Schumacher <schumacher@kde.org> 00005 Copyright (C) 2003-2004 Reinhold Kainhofer <reinhold@kainhofer.com> 00006 00007 This program is free software; you can redistribute it and/or modify 00008 it under the terms of the GNU General Public License as published by 00009 the Free Software Foundation; either version 2 of the License, or 00010 (at your option) any later version. 00011 00012 This program is distributed in the hope that it will be useful, 00013 but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 GNU General Public License for more details. 00016 00017 You should have received a copy of the GNU General Public License along 00018 with this program; if not, write to the Free Software Foundation, Inc., 00019 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00020 00021 As a special exception, permission is given to link this program 00022 with any edition of Qt, and distribute the resulting executable, 00023 without including the source code for Qt in the source distribution. 00024 */ 00025 #ifndef KOEVENTEDITOR_H 00026 #define KOEVENTEDITOR_H 00027 00028 #include "koincidenceeditor.h" 00029 00030 class KOEditorGeneralEvent; 00031 class KOEditorRecurrence; 00032 class KOEditorRecurrenceDialog; 00033 class KOEditorFreeBusy; 00034 00035 class KOEditorFreeBusy; 00036 00037 namespace KCal { 00038 class Calendar; 00039 class Event; 00040 } 00041 using namespace KCal; 00042 00046 class KOEventEditor : public KOIncidenceEditor 00047 { 00048 Q_OBJECT 00049 public: 00053 KOEventEditor( Calendar *calendar, QWidget *parent ); 00054 virtual ~KOEventEditor(); 00055 00056 void init(); 00058 void modified( int change=0 ); 00059 void reload(); 00060 00064 void newEvent(); 00065 00071 void setTexts( const QString &summary, 00072 const QString &description = QString(), 00073 bool richDescription = false ); 00074 00078 void editIncidence( Incidence *incidence, Calendar *calendar ); 00079 00083 void setDates( const QDateTime &from, const QDateTime &to, bool allDay ); 00084 00093 void readEvent( Event *event, Calendar *calendar, bool tmpl = false ); 00097 void writeEvent( Event * ); 00098 00099 QObject *typeAheadReceiver() const; 00100 00101 void selectInvitationCounterProposal( bool enable ); 00102 00103 signals: 00104 void focusReceivedSignal(); 00105 00106 protected slots: 00107 void loadDefaults(); 00108 void deleteEvent(); 00109 00110 void slotSaveTemplate( const QString & ); 00111 void updateRecurrenceSummary(); 00112 00113 protected: 00114 QString type() { return "Event"; } 00115 void setupGeneral(); 00116 void setupRecurrence(); 00117 void setupFreeBusy(); 00118 00120 bool validateInput(); 00123 bool processInput(); 00124 void processCancel(); 00125 int msgItemDelete(); 00126 void loadTemplate( CalendarLocal & ); 00127 QStringList &templates() const; 00128 00129 private: 00130 Event *mEvent; 00131 Calendar *mCalendar; 00132 00133 KOEditorGeneralEvent *mGeneral; 00134 KOEditorRecurrenceDialog *mRecurrenceDialog; 00135 KOEditorRecurrence *mRecurrence; 00136 KOEditorFreeBusy *mFreeBusy; 00137 }; 00138 00139 #endif
KDE 4.2 API Reference