forked from qt-creator/qt-creator
Python: Adapt PySideBuildStep to recent FilePath{Aspect} changes
Change-Id: I866b49733f3007e4f029fb25f8519a1c5b690370 Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -34,31 +34,30 @@ PySideBuildStepFactory::PySideBuildStepFactory()
|
||||
PySideBuildStep::PySideBuildStep(BuildStepList *bsl, Id id)
|
||||
: AbstractProcessStep(bsl, id)
|
||||
{
|
||||
m_pysideProject = addAspect<StringAspect>();
|
||||
m_pysideProject->setSettingsKey("Python.PySideProjectTool");
|
||||
m_pysideProject->setLabelText(Tr::tr("PySide project tool:"));
|
||||
m_pysideProject->setToolTip(Tr::tr("Enter location of PySide project tool."));
|
||||
m_pysideProject->setDisplayStyle(StringAspect::PathChooserDisplay);
|
||||
m_pysideProject->setExpectedKind(PathChooser::Command);
|
||||
m_pysideProject->setHistoryCompleter("Python.PySideProjectTool.History");
|
||||
setOwnsSubAspects(false);
|
||||
|
||||
const FilePath pySideProjectPath = Environment::systemEnvironment().searchInPath(
|
||||
"pyside6-project");
|
||||
m_pysideProject.setSettingsKey("Python.PySideProjectTool");
|
||||
m_pysideProject.setLabelText(Tr::tr("PySide project tool:"));
|
||||
m_pysideProject.setToolTip(Tr::tr("Enter location of PySide project tool."));
|
||||
m_pysideProject.setExpectedKind(PathChooser::Command);
|
||||
m_pysideProject.setHistoryCompleter("Python.PySideProjectTool.History");
|
||||
|
||||
const FilePath pySideProjectPath = FilePath("pyside6-project").searchInPath();
|
||||
if (pySideProjectPath.isExecutableFile())
|
||||
m_pysideProject->setFilePath(pySideProjectPath);
|
||||
m_pysideProject.setFilePath(pySideProjectPath);
|
||||
|
||||
setCommandLineProvider([this] { return CommandLine(m_pysideProject->filePath(), {"build"}); });
|
||||
setCommandLineProvider([this] { return CommandLine(m_pysideProject(), {"build"}); });
|
||||
setWorkingDirectoryProvider([this] {
|
||||
return m_pysideProject->filePath().withNewMappedPath(target()->project()->projectDirectory()); // FIXME: new path needed?
|
||||
return m_pysideProject().withNewMappedPath(project()->projectDirectory()); // FIXME: new path needed?
|
||||
});
|
||||
setEnvironmentModifier([this](Environment &env) {
|
||||
env.prependOrSetPath(m_pysideProject->filePath().parentDir());
|
||||
env.prependOrSetPath(m_pysideProject().parentDir());
|
||||
});
|
||||
}
|
||||
|
||||
void PySideBuildStep::updatePySideProjectPath(const Utils::FilePath &pySideProjectPath)
|
||||
void PySideBuildStep::updatePySideProjectPath(const FilePath &pySideProjectPath)
|
||||
{
|
||||
m_pysideProject->setFilePath(pySideProjectPath);
|
||||
m_pysideProject.setFilePath(pySideProjectPath);
|
||||
}
|
||||
|
||||
void PySideBuildStep::doRun()
|
||||
|
||||
@@ -16,11 +16,10 @@ public:
|
||||
PySideBuildStep(ProjectExplorer::BuildStepList *bsl, Utils::Id id);
|
||||
void updatePySideProjectPath(const Utils::FilePath &pySideProjectPath);
|
||||
|
||||
private:
|
||||
Utils::StringAspect *m_pysideProject;
|
||||
|
||||
private:
|
||||
void doRun() override;
|
||||
|
||||
Utils::FilePathAspect m_pysideProject{this};
|
||||
};
|
||||
|
||||
class PySideBuildStepFactory : public ProjectExplorer::BuildStepFactory
|
||||
|
||||
Reference in New Issue
Block a user