diff options
Diffstat (limited to 'plugins/haskell')
-rw-r--r-- | plugins/haskell/haskellrunconfiguration.cpp | 18 | ||||
-rw-r--r-- | plugins/haskell/haskellrunconfiguration.h | 1 |
2 files changed, 8 insertions, 11 deletions
diff --git a/plugins/haskell/haskellrunconfiguration.cpp b/plugins/haskell/haskellrunconfiguration.cpp index 980e4fd..b2b4b7f 100644 --- a/plugins/haskell/haskellrunconfiguration.cpp +++ b/plugins/haskell/haskellrunconfiguration.cpp @@ -53,25 +53,23 @@ HaskellExecutableAspect::HaskellExecutableAspect(RunConfiguration *rc) { setSettingsKey("Haskell.Executable"); setLabelText(tr("Executable")); - connect(rc->target(), &Target::applicationTargetsChanged, - this, &HaskellExecutableAspect::update); -} - -void HaskellExecutableAspect::update() -{ - RunConfiguration *rc = runConfiguration(); - BuildTargetInfo bti = rc->target()->applicationTargets().buildTargetInfo(rc->buildKey()); - setValue(bti.targetFilePath.toString()); } HaskellRunConfiguration::HaskellRunConfiguration(Target *target, Core::Id id) : RunConfiguration(target, id) { - addAspect<HaskellExecutableAspect>(); + auto executableAspect = addAspect<HaskellExecutableAspect>(); + connect(target, &Target::applicationTargetsChanged, this, [this, target, executableAspect] { + BuildTargetInfo bti = target->applicationTargets().buildTargetInfo(buildKey()); + executableAspect->setValue(bti.targetFilePath.toString()); + }); + addAspect<ArgumentsAspect>(); + auto workingDirAspect = addAspect<WorkingDirectoryAspect>(); workingDirAspect->setDefaultWorkingDirectory(target->project()->projectDirectory()); workingDirAspect->setVisible(false); + addAspect<TerminalAspect>(); addAspect<LocalEnvironmentAspect>(LocalEnvironmentAspect::BaseEnvironmentModifier()); } diff --git a/plugins/haskell/haskellrunconfiguration.h b/plugins/haskell/haskellrunconfiguration.h index 8af9a18..01cc352 100644 --- a/plugins/haskell/haskellrunconfiguration.h +++ b/plugins/haskell/haskellrunconfiguration.h @@ -42,7 +42,6 @@ class HaskellExecutableAspect : public ProjectExplorer::BaseStringAspect public: HaskellExecutableAspect(ProjectExplorer::RunConfiguration *rc); - void update(); }; class HaskellRunConfiguration : public ProjectExplorer::RunConfiguration |