kmail
editorwatcher.h00001
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 <tqdatetime.h>
00025 #include <tqobject.h>
00026 #include <tqtimer.h>
00027
00028 class KProcess;
00029
00030 namespace KMail {
00031
00038 class EditorWatcher : public QObject
00039 {
00040 Q_OBJECT
00041 public:
00049 EditorWatcher( const KURL &url, const TQString &mimeType, bool openWith,
00050 TQObject *parent, TQWidget *parentWidget );
00051 bool start();
00052 bool fileChanged() const { return mFileModified; }
00053 signals:
00054 void editDone( KMail::EditorWatcher* watcher );
00055
00056 private slots:
00057 void editorExited();
00058 void inotifyEvent();
00059 void checkEditDone();
00060
00061 private:
00062 KURL mUrl;
00063 TQString mMimeType;
00064 bool mOpenWith;
00065 KProcess *mEditor;
00066 TQWidget *mParentWidget;
00067
00068 int mInotifyFd;
00069 int mInotifyWatch;
00070 bool mHaveInotify;
00071
00072 bool mFileOpen;
00073 bool mEditorRunning;
00074
00075 bool mFileModified;
00076
00077 TQTimer mTimer;
00078 TQTime mEditTime;
00079
00080 bool mError;
00081 bool mDone;
00082 };
00083
00084 }
00085
00086 #endif
|