doxygenpart.h
Go to the documentation of this file.00001 /*************************************************************************** 00002 * Copyright (C) 2001 by Bernd Gehrmann * 00003 * bernd@kdevelop.org * 00004 * Copyright (C) 2004 by Jonas Jacobi * 00005 * jonas.jacobi@web.de * 00006 * * 00007 * This program is free software; you can redistribute it and/or modify * 00008 * it under the terms of the GNU General Public License as published by * 00009 * the Free Software Foundation; either version 2 of the License, or * 00010 * (at your option) any later version. * 00011 * * 00012 ***************************************************************************/ 00013 00014 #ifndef _DOXYGENPART_H_ 00015 #define _DOXYGENPART_H_ 00016 00017 #include <qguardedptr.h> 00018 #include <kdialogbase.h> 00019 #include <kprocess.h> 00020 #include <ktempdir.h> 00021 #include <qstring.h> 00022 00023 #include "kdevplugin.h" 00024 00025 class DoxygenDialog; 00026 class QPopupMenu; 00027 class Context; 00028 class KAction; 00029 class KDialogBase; 00030 class ConfigWidgetProxy; 00031 00032 namespace KParts{ 00033 class Part; 00034 } 00035 namespace KTextEditor{ 00036 class ViewCursorInterface; 00037 class EditInterface; 00038 } 00039 00040 class DoxygenPart : public KDevPlugin 00041 { 00042 Q_OBJECT 00043 00044 public: 00045 DoxygenPart( QObject *parent, const char *name, const QStringList & ); 00046 ~DoxygenPart(); 00047 00048 private slots: 00055 // void projectConfigWidget(KDialogBase *dlg); 00056 void insertConfigWidget( const KDialogBase* dlg, QWidget * page, unsigned int ); 00057 00059 void slotDoxygen(); 00060 00062 void slotDoxClean(); 00063 00068 void slotPreviewProcessExited(); 00069 00074 void slotRunPreview(); 00075 00082 void slotActivePartChanged(KParts::Part*); 00083 00087 void slotDocumentFunction(); 00088 00089 00090 private: 00091 00096 void adjustDoxyfile(); 00097 00098 DoxygenDialog *m_dialog; 00099 ConfigWidgetProxy * _configProxy; 00100 00101 //needed for doxygen preview 00102 KProcess m_process; 00103 QString m_file; 00104 KTempDir m_tmpDir; 00105 KAction* m_action; 00106 00107 //needed for documentFunction 00108 KAction* m_actionDocumentFunction; 00109 KAction* m_actionPreview; 00110 KTextEditor::EditInterface* m_activeEditor; 00111 KTextEditor::ViewCursorInterface* m_cursor; 00112 }; 00113 00114 #endif