KDevelop API Documentation

parts/appwizard/appwizarddlg.h

Go to the documentation of this file.
00001 /*************************************************************************** 00002 * Copyright (C) 2001 by Bernd Gehrmann * 00003 * bernd@kdevelop.org * 00004 * Copyright (C) 2001 by Sandy Meier * 00005 * smeier@kdevelop.org * 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 _APPWIZARDDIALOG_H_ 00015 #define _APPWIZARDDIALOG_H_ 00016 00017 class AppWizardPart; 00018 class QMultiLineEdit; 00019 class QRadioButton; 00020 class KTempFile; 00021 class QWidgetStack; 00022 class QVBox; 00023 00024 #include <qptrlist.h> 00025 #include <qdict.h> 00026 #include <qlistview.h> 00027 #include <qlineedit.h> 00028 #include <qlabel.h> 00029 #include <qstringlist.h> 00030 00031 #include "kdevversioncontrol.h" 00032 #include "appwizarddlgbase.h" 00033 #include "vcs_form.h" 00034 00035 struct ApplicationInfo 00036 { 00037 QString templateName; 00038 QString name; 00039 QString comment; 00040 QString icon; 00041 QString category; 00042 QString defaultDestDir; 00043 QString fileTemplates; 00044 QStringList openFilesAfterGeneration; 00045 00047 QListViewItem *item; 00048 00049 ApplicationInfo() 00050 : item( 0 ) 00051 {} 00052 }; 00053 00054 00055 struct AppWizardFileTemplate 00056 { 00057 QString suffix; 00058 QString style; 00059 QMultiLineEdit *edit; 00060 00061 AppWizardFileTemplate() 00062 : edit( 0 ) 00063 {} 00064 }; 00065 00066 00067 class AppWizardDialog : public AppWizardDialogBase 00068 { 00069 Q_OBJECT 00070 00071 public: 00072 AppWizardDialog( AppWizardPart *part, QWidget *parent=0, const char *name=0 ); 00073 ~AppWizardDialog(); 00074 QString getProjectName() { return appname_edit->text(); } 00075 QString getProjectLocation() { return finalLoc_label->text(); } 00076 QString getCommandLine() { return m_cmdline; } 00077 QStringList getFilesToOpenAfterGeneration(); 00078 00079 protected: 00080 virtual void templatesTreeViewClicked(QListViewItem*); 00081 virtual void textChanged(); 00082 virtual void licenseChanged(); 00083 virtual void destButtonClicked(const QString&); 00084 virtual void projectNameChanged(); 00085 virtual void projectLocationChanged(); 00086 virtual void accept(); 00087 00088 protected slots: 00089 void pageChanged(); 00090 00091 private: 00092 ApplicationInfo *templateForItem(QListViewItem *item); 00093 void insertCategoryIntoTreeView(const QString &completeCategoryPath); 00094 void loadVcs(); 00095 00096 QPtrList<ApplicationInfo> m_appsInfo; 00097 QValueList<AppWizardFileTemplate> m_fileTemplates; 00099 QDict<QListViewItem> m_categoryMap; 00101 QDict<KDevVersionControl> m_availVcs; 00102 00103 AppWizardPart *m_part; 00104 QWidget *m_lastPage; 00105 QString m_cmdline; 00106 QPtrList<KTempFile> m_tempFiles; 00107 ApplicationInfo* m_pCurrentAppInfo; 00108 bool m_projectLocationWasChanged; 00109 VcsForm *m_vcsForm; 00110 bool m_pathIsValid; 00111 }; 00112 00113 #endif
KDE Logo
This file is part of the documentation for KDevelop Version 3.0.4.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Tue Oct 19 08:01:49 2004 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003