00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef KCONFIGURE_H
00019 #define KCONFIGURE_H
00020
00021 #ifdef HAVE_CONFIG_H
00022 #include <config.h>
00023 #endif
00024
00025 #include <kapp.h>
00026 #include <kmainwindow.h>
00027 #include <klocale.h>
00028 #include <kconfig.h>
00029 #include <kprocess.h>
00030 #include <kurl.h>
00031 #include <kaction.h>
00032 #include <kstdaction.h>
00033 #include <knotifyclient.h>
00034
00035 #include "konq_actions.h"
00036
00037 #include <qdir.h>
00038 #include <qmultilineedit.h>
00039 #include <qsplitter.h>
00040 #include <qdatetime.h>
00041 #include <kio/job.h>
00042
00048 class Kconfigure : public KMainWindow
00049 {
00050 Q_OBJECT
00051 public:
00053 Kconfigure(QWidget *parent=0, const char *name=0, WFlags f=WDestructiveClose);
00055 ~Kconfigure();
00057 void setActionMode( bool isRun, bool stop);
00058 private:
00060 void init();
00062 bool openExtractURL(const KURL &kurl);
00064 void setupMenuBar();
00066 void configRead();
00068 void configWrite();
00070 void execute(const char *file);
00072 void openViewFile( const QString &filename );
00074 void headerHTML( const QString &command );
00076 void stop_time();
00077 private:
00079 QMultiLineEdit *view_errors;
00081 bool FatalError;
00083 QMultiLineEdit *view_main;
00085 KShellProcess q;
00087 QDir qDir;
00089 QString streamLine;
00091 QString fileName;
00093 QString filePath;
00095 KRecentFilesAction *recentFiles;
00097 QSplitter *s1;
00099 QString file_README;
00101 QString file_INSTALL;
00103 QString file_CHANGELOG;
00105 KToggleAction *toolbarAction;
00107 KAction *actionfilemenu_README;
00109 KAction *actionfilemenu_INSTALL;
00111 KAction *actionfilemenu_CHANGELOG;
00113 KToggleAction *filemenu_start_log;
00115 bool logOn;
00117 bool logHtml;
00119 QString logString;
00121 QTime time;
00123 KonqLogoAction *AnimatedLogo;
00125 KAction *actionStop;
00126 KAction *actionConfigure;
00127 KAction *actionConfigureHelp;
00128 KAction *actionConfigureArg;
00129 KAction *actionMake;
00130 KAction *actionMakeClean;
00131 KAction *actionMakeArg;
00132 KAction *actionInstall;
00133 KAction *actionInstallRoot;
00134
00135 private slots:
00137 void slotMenuQuit();
00139 void slotMenuToggleToolBar();
00141 void slotMenuConfigureToolbar();
00143 void slotMenuConfigureKeys();
00145 void slotOutputMessages(KProcess*,char* buffer,int buflen);
00147 void slotOutputMessagesError(KProcess*,char* buffer,int buflen);
00149 void slotExecuteConfigure();
00151 void slotFinishAction();
00153 void slotExecuteConfigure_Help();
00155 void slotExecuteConfigure_Args();
00157 void slotExecuteMake_Args();
00159 void slotExecuteMake();
00161 void slotExecuteMake_Clean();
00163 void slotVerifyInstall() ;
00165 void slotVerifyRootInstall();
00167 void slotExecuteInstall();
00169 void slotExecuteInstallRoot();
00171 void slotExecuteCheckInstallRoot();
00173 void slotOpenTerminal();
00175 void slotKillProcess();
00177 void slotMenuConfigure();
00179 void slotClearMain();
00180 void slotClearError();
00181 void slotClearAll();
00183 void slotReadREADME();
00185 void slotReadINSTALL();
00187 void slotReadCHANGELOG();
00189 void slotLogStart();
00190 void slotLogView();
00191 void slotLogClear();
00192 void slotLogSave();
00194 void openURLnew();
00196 void slotResult( KIO::Job *job);
00197 protected:
00199 bool queryExit();
00200 public slots:
00202 void openURL( const KURL &url );
00203 };
00204
00205 #endif