QgsProcessingGuiRegistry class

The QgsProcessingGuiRegistry is a home for widgets for processing configuration widgets.

QgsProcessingGuiRegistry is not usually directly created, but rather accessed through QgsGui::processingGuiRegistry().

Constructors, destructors, conversion operators

QgsProcessingGuiRegistry()
Constructor.

Public functions

void addAlgorithmConfigurationWidgetFactory(QgsProcessingAlgorithmConfigurationWidgetFactory* factory)
Add a new configuration widget factory for customized algorithm configuration widgets.
auto addParameterWidgetFactory(QgsProcessingParameterWidgetFactoryInterface* factory) -> bool
Adds a parameter widget factory to the registry, allowing widget creation for parameters of the matching type via createParameterWidgetWrapper() and createModelerParameterWidget().
auto algorithmConfigurationWidget(const QgsProcessingAlgorithm* algorithm) const -> QgsProcessingAlgorithmConfigurationWidget*
Gets the configuration widget for an algorithm.
auto createModelerParameterWidget(QgsProcessingModelAlgorithm* model, const QString& childId, const QgsProcessingParameterDefinition* parameter, QgsProcessingContext& context) -> QgsProcessingModelerParameterWidget*
Creates a new modeler parameter widget for the given parameter.
auto createParameterWidgetWrapper(const QgsProcessingParameterDefinition* parameter, QgsProcessingGui::WidgetType type) -> QgsAbstractProcessingParameterWidgetWrapper*
Creates a new parameter widget wrapper for the given parameter.
void removeAlgorithmConfigurationWidgetFactory(QgsProcessingAlgorithmConfigurationWidgetFactory* factory)
Remove a configuration widget factory for customized algorithm configuration widgets.
void removeParameterWidgetFactory(QgsProcessingParameterWidgetFactoryInterface* factory)
Removes a parameter widget factory from the registry.

Function documentation

QgsProcessingGuiRegistry::QgsProcessingGuiRegistry()

Constructor.

Should never be called manually, is already created by QgsGui.

void QgsProcessingGuiRegistry::addAlgorithmConfigurationWidgetFactory(QgsProcessingAlgorithmConfigurationWidgetFactory* factory)

Add a new configuration widget factory for customized algorithm configuration widgets.

Ownership is taken.

bool QgsProcessingGuiRegistry::addParameterWidgetFactory(QgsProcessingParameterWidgetFactoryInterface* factory)

Adds a parameter widget factory to the registry, allowing widget creation for parameters of the matching type via createParameterWidgetWrapper() and createModelerParameterWidget().

Ownership of factory is transferred to the registry.

Returns true if the factory was successfully added, or false if the factory could not be added. Each factory must return a unique value for QgsProcessingParameterWidgetFactoryInterface::parameterType(), and attempting to add a new factory with a duplicate type will result in failure.

QgsProcessingAlgorithmConfigurationWidget* QgsProcessingGuiRegistry::algorithmConfigurationWidget(const QgsProcessingAlgorithm* algorithm) const

Gets the configuration widget for an algorithm.

This widget will be shown next to parameter widgets. Most algorithms do not have a configuration widget and in this case, nullptr will be returned.

QgsProcessingModelerParameterWidget* QgsProcessingGuiRegistry::createModelerParameterWidget(QgsProcessingModelAlgorithm* model, const QString& childId, const QgsProcessingParameterDefinition* parameter, QgsProcessingContext& context)

Creates a new modeler parameter widget for the given parameter.

This widget allows configuration of the parameter's value when used inside a Processing model.

The ID of the child algorithm within the model must be specified via the childId argument. This value corresponds to the QgsProcessingModelChildAlgorithm::childId() string, which uniquely identifies which child algorithm the parameter is associated with inside the given model.

The caller takes ownership of the returned widget. If no factory is registered which handles the given parameter, a nullptr will be returned.

QgsAbstractProcessingParameterWidgetWrapper* QgsProcessingGuiRegistry::createParameterWidgetWrapper(const QgsProcessingParameterDefinition* parameter, QgsProcessingGui::WidgetType type)

Creates a new parameter widget wrapper for the given parameter.

The type argument dictates the type of dialog the wrapper should be created for. The caller takes ownership of the returned wrapper.

If no factory is registered which handles the given parameter, a nullptr will be returned.

void QgsProcessingGuiRegistry::removeAlgorithmConfigurationWidgetFactory(QgsProcessingAlgorithmConfigurationWidgetFactory* factory)

Remove a configuration widget factory for customized algorithm configuration widgets.

void QgsProcessingGuiRegistry::removeParameterWidgetFactory(QgsProcessingParameterWidgetFactoryInterface* factory)

Removes a parameter widget factory from the registry.

The factory will be deleted.