Class: QgsEditorWidgetFactory¶
-
class
qgis.gui.
QgsEditorWidgetFactory
(name: str)¶ Bases:
sip.wrapper
Constructor
- Parameters
name – A human readable name for this widget type
QgsEditorWidgetFactory(QgsEditorWidgetFactory)
Every attribute editor widget needs a factory, which inherits this class
It provides metadata for the widgets such as the name (human readable), it serializes the configuration to an xml structure and loads the configuration from there.
It also has factory methods to create a widget wrapper for the attribute editor itself and another factory method to create a configuration dialog.
Enums
Methods
Override this in your implementation.
Override this in your implementation.
This method allows disabling this editor widget type for a certain field.
Returns The human readable identifier name of this widget type
Check if this editor widget type supports a certain field.
Signals
Attributes
-
configWidget
(self, vl: QgsVectorLayer, fieldIdx: int, parent: QWidget) → QgsEditorConfigWidget¶ Override this in your implementation. Create a new configuration widget for this widget type.
- Parameters
vl – The layer for which the widget will be created
fieldIdx – The field index for which the widget will be created
parent – The parent widget of the created config widget
- Returns
A configuration widget
-
create
(self, vl: QgsVectorLayer, fieldIdx: int, editor: QWidget, parent: QWidget) → QgsEditorWidgetWrapper¶ Override this in your implementation. Create a new editor widget wrapper. Call
QgsEditorWidgetRegistry.create()
instead of calling this method directly.- Parameters
vl – The vector layer on which this widget will act
fieldIdx – The field index on which this widget will act
editor – An editor widget if already existent. If NULL is provided, a new widget will be created.
parent – The parent for the wrapper class and any created widget.
- Returns
A new widget wrapper
-
createSearchWidget
(self, vl: QgsVectorLayer, fieldIdx: int, parent: QWidget) → QgsSearchWidgetWrapper¶
-
fieldScore
(self, vl: QgsVectorLayer, fieldIdx: int) → int¶ This method allows disabling this editor widget type for a certain field. By default, it returns 5 for every fields. Reimplement this if you only support certain fields.
Typical return values are: * 0: not supported * 5: maybe support (for example, Datetime support strings depending on their content) * 10: basic support (this is what returns TextEdit for example, since it supports everything in a crude way) * 20: specialized support
- Parameters
vl –
fieldIdx –
- Returns
0 if the field is not supported or a bigger number if it can (the widget with the biggest number will be taken by default). The default implementation returns 5..
See also
-
name
(self) → str¶ Returns The human readable identifier name of this widget type
- Returns
a name
-
supportsField
(self, vl: QgsVectorLayer, fieldIdx: int) → bool¶ Check if this editor widget type supports a certain field.
- Parameters
vl – The layer
fieldIdx – The field index
- Returns
True if the type is supported for this field
See also