From 27d783fd1e361f64ad36fe533812301130685a45 Mon Sep 17 00:00:00 2001 From: hjk Date: Mon, 10 Jul 2023 09:28:29 +0200 Subject: [PATCH] Nim: Use aspects more directly in NimRunConfiguration Change-Id: I4120f86d36ece183c95325ccea33cb66778753db Reviewed-by: Marcus Tillmanns --- .../nim/project/nimrunconfiguration.cpp | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/plugins/nim/project/nimrunconfiguration.cpp b/src/plugins/nim/project/nimrunconfiguration.cpp index fa60694be24..30ed5d64d3b 100644 --- a/src/plugins/nim/project/nimrunconfiguration.cpp +++ b/src/plugins/nim/project/nimrunconfiguration.cpp @@ -26,19 +26,13 @@ public: NimRunConfiguration(Target *target, Utils::Id id) : RunConfiguration(target, id) { - auto envAspect = addAspect(); - envAspect->setSupportForBuildEnvironment(target); + environment.setSupportForBuildEnvironment(target); - auto exeAspect = addAspect(); - exeAspect->setDeviceSelector(target, ExecutableAspect::RunDevice); + executable.setDeviceSelector(target, ExecutableAspect::RunDevice); - auto argsAspect = addAspect(); - argsAspect->setMacroExpander(macroExpander()); + arguments.setMacroExpander(macroExpander()); - auto workingDirAspect = addAspect(); - workingDirAspect->setMacroExpander(macroExpander()); - - addAspect(); + workingDir.setMacroExpander(macroExpander()); setDisplayName(Tr::tr("Current Build Target")); setDefaultDisplayName(Tr::tr("Current Build Target")); @@ -47,15 +41,21 @@ public: auto buildConfiguration = qobject_cast(target->activeBuildConfiguration()); QTC_ASSERT(buildConfiguration, return); const QFileInfo outFileInfo = buildConfiguration->outFilePath().toFileInfo(); - aspect()->setExecutable(FilePath::fromString(outFileInfo.absoluteFilePath())); + executable.setExecutable(FilePath::fromString(outFileInfo.absoluteFilePath())); const QString workingDirectory = outFileInfo.absoluteDir().absolutePath(); - aspect()->setDefaultWorkingDirectory(FilePath::fromString(workingDirectory)); + workingDir.setDefaultWorkingDirectory(FilePath::fromString(workingDirectory)); }); // Connect target signals connect(target, &Target::buildSystemUpdated, this, &RunConfiguration::update); update(); } + + EnvironmentAspect environment{this}; + ExecutableAspect executable{this}; + ArgumentsAspect arguments{this}; + WorkingDirectoryAspect workingDir{this}; + TerminalAspect terminal{this}; }; // NimRunConfigurationFactory