kmail
editorwatcher.hGo 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 #ifndef KMAIL_EDITORWATCHER_H
00020 #define KMAIL_EDITORWATCHER_H
00021
00022 #include <kurl.h>
00023
00024 #include <qdatetime.h>
00025 #include <qobject.h>
00026 #include <qtimer.h>
00027
00028 class KProcess;
00029
00030 namespace KMail {
00031
00038 class EditorWatcher : public QObject
00039 {
00040 Q_OBJECT
00041 public:
00042 EditorWatcher( const KURL &url, const QString &mimeType, bool openWith, QObject *parent = 0 );
00043 bool start();
00044 bool fileChanged() const { return mFileModified; }
00045 signals:
00046 void editDone( KMail::EditorWatcher* watcher );
00047
00048 private slots:
00049 void editorExited();
00050 void inotifyEvent();
00051 void checkEditDone();
00052
00053 private:
00054 KURL mUrl;
00055 QString mMimeType;
00056 bool mOpenWith;
00057 KProcess *mEditor;
00058
00059 int mInotifyFd;
00060 int mInotifyWatch;
00061 bool mHaveInotify;
00062
00063 bool mFileOpen;
00064 bool mEditorRunning;
00065
00066 bool mFileModified;
00067
00068 QTimer mTimer;
00069 QTime mEditTime;
00070
00071 bool mError;
00072 bool mDone;
00073 };
00074
00075 }
00076
00077 #endif
|