Files
qt-creator/src/plugins/genericprojectmanager/genericprojectwizard.h

92 lines
2.1 KiB
C
Raw Normal View History

2009-03-12 17:53:25 +01:00
#ifndef GENERICPROJECTWIZARD_H
#define GENERICPROJECTWIZARD_H
#include <coreplugin/basefilewizard.h>
#include <QtGui/QWizard>
2009-03-13 15:12:54 +01:00
QT_BEGIN_NAMESPACE
class QDir;
2009-03-13 15:12:54 +01:00
class QDirModel;
class QFileInfo;
class QListView;
2009-03-13 15:12:54 +01:00
class QModelIndex;
class QStringList;
class QTreeView;
2009-03-13 15:12:54 +01:00
QT_END_NAMESPACE
2009-03-12 17:53:25 +01:00
namespace Core {
namespace Utils {
class FileWizardPage;
} // namespace Utils
} // namespace Core
2009-03-12 17:53:25 +01:00
namespace GenericProjectManager {
namespace Internal {
class GenericProjectWizardDialog : public QWizard
2009-03-13 15:12:54 +01:00
{
Q_OBJECT
public:
GenericProjectWizardDialog(QWidget *parent = 0);
virtual ~GenericProjectWizardDialog();
QString path() const;
QString projectName() const;
2009-03-13 15:12:54 +01:00
private Q_SLOTS:
void updateFilesView(const QModelIndex &current,
const QModelIndex &previous);
protected:
virtual void initializePage(int id);
virtual bool validateCurrentPage();
private:
int m_secondPageId;
2009-03-13 15:12:54 +01:00
Core::Utils::FileWizardPage *m_firstPage;
2009-03-13 15:12:54 +01:00
QTreeView *m_dirView;
QDirModel *m_dirModel;
2009-03-13 15:12:54 +01:00
QListView *m_filesView;
QDirModel *m_filesModel;
2009-03-13 15:12:54 +01:00
};
2009-03-12 17:53:25 +01:00
class GenericProjectWizard : public Core::BaseFileWizard
{
Q_OBJECT
public:
GenericProjectWizard();
virtual ~GenericProjectWizard();
static Core::BaseFileWizardParameters parameters();
protected:
virtual QWizard *createWizardDialog(QWidget *parent,
const QString &defaultPath,
const WizardPageList &extensionPages) const;
virtual Core::GeneratedFiles generateFiles(const QWizard *w,
QString *errorMessage) const;
2009-03-12 18:31:50 +01:00
virtual bool postGenerateFiles(const Core::GeneratedFiles &l, QString *errorMessage);
2009-03-13 15:12:54 +01:00
bool isValidDir(const QFileInfo &fileInfo) const;
void getFileList(const QDir &dir, const QString &projectRoot,
const QStringList &suffixes,
QStringList *files,
QStringList *paths) const;
2009-03-12 17:53:25 +01:00
};
} // end of namespace Internal
} // end of namespace GenericProjectManager
#endif // GENERICPROJECTWIZARD_H