Cmake: Let the generator determine the toolchain

Otherwise we need to parse the cbp file, which happens only if the
buildconfiguration gets active. Also try to decouple a few internals a
little bit by using signals. The CMakeProject still handles a few things
directly instead of via signals, more to come eventually.
This commit is contained in:
dt
2009-12-03 19:45:09 +01:00
parent 1e46cb424e
commit 24a4590767
11 changed files with 111 additions and 46 deletions

View File

@@ -114,12 +114,19 @@ public:
QString sourceDirectory() const;
signals:
/// convenience signal emitted if the activeBuildConfiguration emits environmentChanged
/// or if the activeBuildConfiguration changes
void environmentChanged();
/// emitted after parsing
void targetsChanged();
protected:
virtual void saveSettingsImpl(ProjectExplorer::PersistentSettingsWriter &writer);
virtual bool restoreSettingsImpl(ProjectExplorer::PersistentSettingsReader &reader);
// called by CMakeBuildSettingsWidget
void changeBuildDirectory(ProjectExplorer::BuildConfiguration *configuration, const QString &newBuildDirectory);
void changeBuildDirectory(CMakeBuildConfiguration *bc, const QString &newBuildDirectory);
private slots:
void fileChanged(const QString &fileName);
@@ -145,6 +152,7 @@ private:
ProjectExplorer::FileWatcher *m_watcher;
bool m_insideFileChanged;
QSet<QString> m_watchedFiles;
CMakeBuildConfiguration *m_lastActiveBuildConfiguration;
friend class CMakeBuildConfigurationFactory; // for parseCMakeLists
};