Extending Qt Creator Manual | RunConfiguration

Extending Qt Creator Manual 4.4.0

# RunConfiguration Class

(ProjectExplorer::RunConfiguration)

The RunConfiguration class is the base class for a run configuration. More...

Header: | #include <RunConfiguration>
Inherits: | ProjectExplorer::ProjectConfiguration

- List of all members, including inherited members

## Public Types

enum | ConfigurationState { Configured, UnConfigured, Waiting }

## Public Functions

| ~RunConfiguration() override
virtual Abi | abi() const
void | addExtraAspect(IRunConfigurationAspect *aspect)
virtual QString | buildSystemTarget() const
virtual QWidget * | createConfigurationWidget() = 0
virtual Utils::OutputFormatter * | createOutputFormatter() const
virtual QString | disabledReason() const
virtual ConfigurationState | ensureConfigured(QString *errorMessage = nullptr)
IRunConfigurationAspect * | extraAspect(Core::Id id) const
T * | extraAspect() const
QList<IRunConfigurationAspect *> | extraAspects() const
virtual bool | isConfigured() const
virtual bool | isEnabled() const
Target * | target() const

## Reimplemented Public Functions

virtual bool | fromMap(const QVariantMap &map) override
virtual QVariantMap | toMap() const override

- 11 public functions inherited from ProjectExplorer::ProjectConfiguration

## Signals

void | configurationFinished()
void | enabledChanged()
void | requestRunActionsUpdate()

- 2 signals inherited from ProjectExplorer::ProjectConfiguration

## Static Public Members

void | registerAspect()
RunConfiguration * | startupRunConfiguration()

## Protected Functions

| RunConfiguration(Target *parent, Core::Id id)
| RunConfiguration(Target *parent, RunConfiguration *source)
BuildConfiguration * | activeBuildConfiguration() const

## Detailed Description

The RunConfiguration class is the base class for a run configuration.

A run configuration specifies how a target should be run, while a runner does the actual running.

All RunControls and the target hold a shared pointer to the run configuration. That is, the lifetime of the run configuration might exceed the life of the target. The user might still have a RunControl running (or output tab of that RunControl open) and yet unloaded the target.

Also, a run configuration might be already removed from the list of run configurations for a target, but still be runnable via the output tab.

## Member Type Documentation

### enum RunConfiguration::ConfigurationState

## Member Function Documentation

### `[protected]` RunConfiguration::RunConfiguration(Target *parent, Core::Id id)

Default constructs an instance of RunConfiguration.

### `[protected]` RunConfiguration::RunConfiguration(Target *parent, RunConfiguration *source)

Default constructs an instance of RunConfiguration.

### RunConfiguration::~RunConfiguration()

Destroys the instance of RunConfiguration.

### `[virtual]` Abi RunConfiguration::abi() const

### `[protected]` BuildConfiguration *RunConfiguration::activeBuildConfiguration() const

### void RunConfiguration::addExtraAspect(IRunConfigurationAspect *aspect)

### `[virtual]` QString RunConfiguration::buildSystemTarget() const

### `[signal]` void RunConfiguration::configurationFinished()

### `[pure virtual]` QWidget *RunConfiguration::createConfigurationWidget()

### `[virtual]` Utils::OutputFormatter *RunConfiguration::createOutputFormatter() const

### `[virtual]` QString RunConfiguration::disabledReason() const

### `[signal]` void RunConfiguration::enabledChanged()

### `[virtual]` ConfigurationState RunConfiguration::ensureConfigured(QString *errorMessage = nullptr)

### IRunConfigurationAspect *RunConfiguration::extraAspect(Core::Id id) const

### T *RunConfiguration::extraAspect() const

### QList<IRunConfigurationAspect *> RunConfiguration::extraAspects() const

Returns extra aspects.

See also ProjectExplorer::IRunConfigurationAspect.

### `[override virtual]` bool RunConfiguration::fromMap(const QVariantMap &map)

### `[virtual]` bool RunConfiguration::isConfigured() const

### `[virtual]` bool RunConfiguration::isEnabled() const

Checks whether a run configuration is enabled.

### `[static]` void RunConfiguration::registerAspect()

### `[signal]` void RunConfiguration::requestRunActionsUpdate()

### `[static]` RunConfiguration *RunConfiguration::startupRunConfiguration()

Returns the RunConfiguration of the currently active target of the startup project, if such exists, or `nullptr` otherwise.

### Target *RunConfiguration::target() const

### `[override virtual]` QVariantMap RunConfiguration::toMap() const