diff options
author | Eike Ziller <[email protected]> | 2017-11-27 12:29:14 +0100 |
---|---|---|
committer | Eike Ziller <[email protected]> | 2017-11-27 12:34:01 +0000 |
commit | 6ee714619f6cdd95098c98e86c840ee56b2f07f4 (patch) | |
tree | 5a6496f7bf9c25ac270af05c1fb6ef068542ba1d /plugins/haskell/haskellrunconfiguration.cpp | |
parent | 01c0fa565f95d75ea2745f246a17dc0e15dc7175 (diff) |
Adapt to upstream API changes for run configuration factories
Change-Id: Ifc984f3eff16d109923db33f87906c49765f7864
Reviewed-by: Tobias Hunger <[email protected]>
Reviewed-by: hjk <[email protected]>
Diffstat (limited to 'plugins/haskell/haskellrunconfiguration.cpp')
-rw-r--r-- | plugins/haskell/haskellrunconfiguration.cpp | 57 |
1 files changed, 10 insertions, 47 deletions
diff --git a/plugins/haskell/haskellrunconfiguration.cpp b/plugins/haskell/haskellrunconfiguration.cpp index dfeee7e..9e7b6ff 100644 --- a/plugins/haskell/haskellrunconfiguration.cpp +++ b/plugins/haskell/haskellrunconfiguration.cpp @@ -31,6 +31,7 @@ #include <projectexplorer/buildconfiguration.h> #include <projectexplorer/localenvironmentaspect.h> +#include <projectexplorer/projectexplorerconstants.h> #include <projectexplorer/runconfigurationaspects.h> #include <projectexplorer/runnables.h> #include <projectexplorer/target.h> @@ -43,57 +44,19 @@ using namespace ProjectExplorer; namespace Haskell { namespace Internal { -HaskellRunConfigurationFactory::HaskellRunConfigurationFactory() {} - -QList<Core::Id> HaskellRunConfigurationFactory::availableCreationIds( - Target *parent, - IRunConfigurationFactory::CreationMode mode) const -{ - Q_UNUSED(mode) - const auto project = HaskellProject::toHaskellProject(parent->project()); - if (project) - return project->availableRunConfigurationIds(); - return {}; -} - -QString HaskellRunConfigurationFactory::displayNameForId(Core::Id id) const -{ - return id.suffixAfter(Constants::C_HASKELL_RUNCONFIG_ID_PREFIX); -} - -bool HaskellRunConfigurationFactory::canCreate(Target *parent, Core::Id id) const -{ - return id.name().startsWith(Constants::C_HASKELL_RUNCONFIG_ID_PREFIX) - && HaskellProject::isHaskellProject(parent->project()); -} - -bool HaskellRunConfigurationFactory::canRestore(Target *parent, const QVariantMap &map) const +HaskellRunConfigurationFactory::HaskellRunConfigurationFactory() { - return canCreate(parent, idFromMap(map)); + registerRunConfiguration<HaskellRunConfiguration>(Constants::C_HASKELL_RUNCONFIG_ID_PREFIX); + setSupportedProjectType<HaskellProject>(); + setSupportedTargetDeviceTypes({ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE}); } -bool HaskellRunConfigurationFactory::canClone(Target *parent, RunConfiguration *product) const +QList<QString> HaskellRunConfigurationFactory::availableBuildTargets( + Target *parent, IRunConfigurationFactory::CreationMode mode) const { - return canCreate(parent, product->id()); -} - -RunConfiguration *HaskellRunConfigurationFactory::clone(Target *parent, RunConfiguration *product) -{ - return cloneHelper<HaskellRunConfiguration>(parent, product); -} - -RunConfiguration *HaskellRunConfigurationFactory::doCreate(Target *parent, Core::Id id) -{ - QTC_ASSERT(canCreate(parent, id), return nullptr); - return createHelper<HaskellRunConfiguration>(parent, id); -} - -RunConfiguration *HaskellRunConfigurationFactory::doRestore(Target *parent, const QVariantMap &map) -{ - QTC_ASSERT(canRestore(parent, map), return nullptr); - auto config = doCreate(parent, idFromMap(map)); - config->fromMap(map); - return config; + Q_UNUSED(mode) + const auto project = HaskellProject::toHaskellProject(parent->project()); + return project ? project->availableExecutables() : QList<QString>(); } HaskellRunConfiguration::HaskellRunConfiguration(Target *parent) |