From 8d0c47724599ad279a88e3632784be40cc4175da Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Tue, 1 Feb 2011 18:36:00 +0100 Subject: ToolChain: Refactor toolchain support Refactor ToolChains in Qt Creator: * Allow for several toolchains of the same type * Be smarter wrt. guessing what kind of output a toolchain produces. This allows us to eventually handle e.g. embedded linux setups way better than before. * Be smarter wrt. guessing what kind of environment a Qt version needs. * Improve auto-detection of toolchains a bit * Decide on which debugger to use based on the kind of output produced by the compiler. * Add options page to configure toolchains * Remove toolchain related options from the Qt version dialog Reviewed-by: dt --- src/plugins/genericprojectmanager/genericproject.h | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'src/plugins/genericprojectmanager/genericproject.h') diff --git a/src/plugins/genericprojectmanager/genericproject.h b/src/plugins/genericprojectmanager/genericproject.h index 6997c8696c..9c95a25ea1 100644 --- a/src/plugins/genericprojectmanager/genericproject.h +++ b/src/plugins/genericprojectmanager/genericproject.h @@ -41,13 +41,17 @@ #include #include #include +#include #include -#include #include #include #include +QT_BEGIN_NAMESPACE +class QComboBox; +QT_END_NAMESPACE + namespace Utils { class PathChooser; } @@ -90,7 +94,6 @@ public: QStringList files(FilesMode fileMode) const; QStringList buildTargets() const; - ProjectExplorer::ToolChain *toolChain() const; bool addFiles(const QStringList &filePaths); bool removeFiles(const QStringList &filePaths); @@ -111,11 +114,14 @@ public: QStringList projectIncludePaths() const; QStringList files() const; QStringList generated() const; - ProjectExplorer::ToolChainType toolChainType() const; - void setToolChainType(ProjectExplorer::ToolChainType type); + ProjectExplorer::ToolChain *toolChain() const; + void setToolChain(ProjectExplorer::ToolChain *tc); QVariantMap toMap() const; +signals: + void toolChainChanged(ProjectExplorer::ToolChain *); + protected: virtual bool fromMap(const QVariantMap &map); @@ -143,7 +149,6 @@ private: GenericProjectNode *m_rootNode; ProjectExplorer::ToolChain *m_toolChain; - ProjectExplorer::ToolChainType m_toolChainType; QFuture m_codeModelFuture; }; @@ -190,10 +195,13 @@ public: private Q_SLOTS: void buildDirectoryChanged(); void toolChainSelected(int index); + void toolChainChanged(ProjectExplorer::ToolChain *); + void updateToolChainList(); private: GenericTarget *m_target; Utils::PathChooser *m_pathChooser; + QComboBox *m_toolChainChooser; GenericBuildConfiguration *m_buildConfiguration; }; -- cgit v1.2.1