KCal Library
dndfactory.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00034 #ifndef KCAL_DNDFACTORY_H
00035 #define KCAL_DNDFACTORY_H
00036
00037 #include "kcal_export.h"
00038
00039 #include <KDE/KDateTime>
00040
00041 class QDate;
00042 class QTime;
00043 class QDrag;
00044 class QWidget;
00045 class QDropEvent;
00046 class QMimeData;
00047
00048 namespace KCal {
00049
00050 class Event;
00051 class Todo;
00052 class Incidence;
00053 class Calendar;
00054
00062 class KCAL_EXPORT DndFactory
00063 {
00064 public:
00065 explicit DndFactory( Calendar * );
00066
00067 ~DndFactory();
00068
00072 Calendar *createDropCalendar( QDropEvent *de );
00073
00077 Calendar *createDropCalendar( const QMimeData *md );
00078
00082 static Calendar *createDropCalendar( const QMimeData *md, const KDateTime::Spec &timeSpec );
00083
00087 QMimeData *createMimeData();
00088
00092 QDrag *createDrag( QWidget *owner );
00093
00097 QMimeData *createMimeData( Incidence *incidence );
00098
00102 QDrag *createDrag( Incidence *incidence, QWidget *owner );
00103
00107 Todo *createDropTodo( const QMimeData *md );
00108
00112 Todo *createDropTodo( QDropEvent *de );
00113
00117 Event *createDropEvent( const QMimeData *md );
00118
00122 Event *createDropEvent( QDropEvent *de );
00123
00127 void cutIncidence( Incidence * );
00128
00132 bool copyIncidence( Incidence * );
00133
00137 Incidence *pasteIncidence( const QDate &, const QTime *newTime = 0 );
00138
00139 private:
00140
00141 Q_DISABLE_COPY( DndFactory )
00142 class Private;
00143 Private *const d;
00144
00145 };
00146
00147 }
00148
00149 #endif