00001 #ifndef CEDITORPROC_H 00002 #define CEDITORPROC_H 00003 00004 /**************************************************************************\ 00005 * REQUIRED HEADERS * 00006 \**************************************************************************/ 00007 00008 //QT 00009 #include <QWidget> 00010 #include <QProcess> 00011 #include <QFile> 00012 #include <QFileInfo> 00013 //OWN 00014 #include "Definitions.h" 00015 #include "Memory/mmgr.h" 00016 00017 /**************************************************************************\ 00018 * DEFINITIONS * 00019 \**************************************************************************/ 00020 00021 class CShaderEditor; 00022 00023 /**************************************************************************\ 00024 * CLASS * 00025 \**************************************************************************/ 00026 class CEditorProc : public QProcess 00027 { 00028 Q_OBJECT 00029 00030 /**************************************************************************\ 00031 * PUBLIC CLASS FUNCTIONS * 00032 \**************************************************************************/ 00033 public: 00034 00035 CEditorProc(QString & filename,QObject * = NULL); 00036 ~CEditorProc(); 00037 00038 bool StartEdit(QString & editorPath,QStringList & editorArgs,QString & shaderText,QString & shaderFileName); 00039 QString & StopEdit(); 00040 00041 /**************************************************************************\ 00042 * PRIVATE CLASS FUNCTIONS * 00043 \**************************************************************************/ 00044 private: 00045 00046 /**************************************************************************\ 00047 * PRIVATE CLASS MEMBERS * 00048 \**************************************************************************/ 00049 private: 00050 00051 QFile * pTmpFile; 00052 QString tmpFileName; 00053 QString textReceived; 00054 00055 QString currentEditorPath; 00056 QStringList currentEditorArgs; 00057 }; 00058 00059 #endif //CEDITORPROC_H