QGIS API Documentation 3.41.0-Master (3440c17df1d)
|
The QgsProcessingGuiRegistry is a home for widgets for processing configuration widgets. More...
#include <qgsprocessingguiregistry.h>
Public Member Functions | |
QgsProcessingGuiRegistry () | |
Constructor. | |
~QgsProcessingGuiRegistry () | |
void | addAlgorithmConfigurationWidgetFactory (QgsProcessingAlgorithmConfigurationWidgetFactory *factory) |
Add a new configuration widget factory for customized algorithm configuration widgets. | |
bool | addParameterWidgetFactory (QgsProcessingParameterWidgetFactoryInterface *factory) |
Adds a parameter widget factory to the registry, allowing widget creation for parameters of the matching type via createParameterWidgetWrapper() and createModelerParameterWidget(). | |
QgsProcessingAlgorithmConfigurationWidget * | algorithmConfigurationWidget (const QgsProcessingAlgorithm *algorithm) const |
Gets the configuration widget for an algorithm. | |
QgsProcessingModelerParameterWidget * | createModelerParameterWidget (QgsProcessingModelAlgorithm *model, const QString &childId, const QgsProcessingParameterDefinition *parameter, QgsProcessingContext &context) |
Creates a new modeler parameter widget for the given parameter. | |
QgsProcessingAbstractParameterDefinitionWidget * | createParameterDefinitionWidget (const QString &type, QgsProcessingContext &context, const QgsProcessingParameterWidgetContext &widgetContext, const QgsProcessingParameterDefinition *definition=nullptr, const QgsProcessingAlgorithm *algorithm=nullptr) |
Creates a new parameter definition widget allowing for configuration of an instance of a specific parameter type. | |
QgsAbstractProcessingParameterWidgetWrapper * | createParameterWidgetWrapper (const QgsProcessingParameterDefinition *parameter, QgsProcessingGui::WidgetType type) |
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. | |
The QgsProcessingGuiRegistry is a home for widgets for processing configuration widgets.
QgsProcessingGuiRegistry is not usually directly created, but rather accessed through QgsGui::processingGuiRegistry().
Definition at line 44 of file qgsprocessingguiregistry.h.
QgsProcessingGuiRegistry::QgsProcessingGuiRegistry | ( | ) |
Constructor.
Should never be called manually, is already created by QgsGui.
Definition at line 34 of file qgsprocessingguiregistry.cpp.
QgsProcessingGuiRegistry::~QgsProcessingGuiRegistry | ( | ) |
Definition at line 95 of file qgsprocessingguiregistry.cpp.
void QgsProcessingGuiRegistry::addAlgorithmConfigurationWidgetFactory | ( | QgsProcessingAlgorithmConfigurationWidgetFactory * | factory | ) |
Add a new configuration widget factory for customized algorithm configuration widgets.
Ownership is taken.
Definition at line 105 of file qgsprocessingguiregistry.cpp.
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.
Definition at line 132 of file qgsprocessingguiregistry.cpp.
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.
Definition at line 116 of file qgsprocessingguiregistry.cpp.
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, nullptr
will be returned.
Definition at line 170 of file qgsprocessingguiregistry.cpp.
QgsProcessingAbstractParameterDefinitionWidget * QgsProcessingGuiRegistry::createParameterDefinitionWidget | ( | const QString & | type, |
QgsProcessingContext & | context, | ||
const QgsProcessingParameterWidgetContext & | widgetContext, | ||
const QgsProcessingParameterDefinition * | definition = nullptr , |
||
const QgsProcessingAlgorithm * | algorithm = nullptr |
||
) |
Creates a new parameter definition widget allowing for configuration of an instance of a specific parameter type.
The context argument must specify a Processing context, which will be used by the widget to evaluate existing definition properties such as default values. Similarly, the widgetContext argument specifies the wider GUI context in which the widget will be used.
The optional definition argument may specify an existing parameter definition which will be reflected in the initial state of the returned widget. If definition is nullptr
, then the returned widget will use default settings instead.
Additionally, the optional algorithm parameter may be used to specify the algorithm or model associated with the parameter.
If nullptr
is returned for a particular parameter type, it indicates that the parameter type cannot be configured via GUI.
Definition at line 182 of file qgsprocessingguiregistry.cpp.
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, nullptr
will be returned.
Definition at line 156 of file qgsprocessingguiregistry.cpp.
void QgsProcessingGuiRegistry::removeAlgorithmConfigurationWidgetFactory | ( | QgsProcessingAlgorithmConfigurationWidgetFactory * | factory | ) |
Remove a configuration widget factory for customized algorithm configuration widgets.
Definition at line 110 of file qgsprocessingguiregistry.cpp.
void QgsProcessingGuiRegistry::removeParameterWidgetFactory | ( | QgsProcessingParameterWidgetFactoryInterface * | factory | ) |
Removes a parameter widget factory from the registry.
The factory will be deleted.
Definition at line 147 of file qgsprocessingguiregistry.cpp.