00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef AKONADI_FIRSTRUN_P_H
00021 #define AKONADI_FIRSTRUN_P_H
00022
00023 #include <QObject>
00024 #include <QStringList>
00025 #include <QVariant>
00026
00027 class KConfig;
00028 class KJob;
00029 class KProcess;
00030 struct QMetaObject;
00031
00032 namespace Akonadi {
00033
00067 class Firstrun : public QObject
00068 {
00069 Q_OBJECT
00070 public:
00071 Firstrun( QObject * parent = 0 );
00072 ~Firstrun();
00073
00074 private:
00075 void findPendingDefaults();
00076 void setupNext();
00077 #ifndef KDEPIM_NO_KRESOURCES
00078 void migrateKresType( const QString &resourceFamily );
00079 #endif
00080 static QVariant::Type argumentType( const QMetaObject *mo, const QString &method );
00081
00082 private slots:
00083 void instanceCreated( KJob* job );
00084 #ifndef KDEPIM_NO_KRESOURCES
00085 void migrationFinished( int exitCode );
00086 #endif
00087
00088 private:
00089 QStringList mPendingDefaults;
00090 KConfig *mConfig;
00091 KConfig *mCurrentDefault;
00092 KProcess *mProcess;
00093 #ifndef KDEPIM_NO_KRESOURCES
00094 QString mResourceFamily;
00095 #endif
00096 };
00097
00098 }
00099
00100 #endif
00101