Class: QgsEditFormConfig¶
-
class
qgis.core.
QgsEditFormConfig
(o: QgsEditFormConfig)¶ Bases:
sip.wrapper
Copy constructor
New in version 3.0.
QgsEditFormConfig() Create a new edit form config. Normally invoked by
QgsVectorLayer
- Parameters
o –
-
CodeSourceDialog
= 2¶
-
CodeSourceEnvironment
= 3¶
-
CodeSourceFile
= 1¶
-
CodeSourceNone
= 0¶
-
class
EditorLayout
¶ Bases:
int
-
class
FeatureFormSuppress
¶ Bases:
int
-
GeneratedLayout
= 0¶
-
class
GroupData
¶ Bases:
sip.wrapper
Constructor for GroupData
QgsEditFormConfig.GroupData(name: str, fields: Iterable[str])
QgsEditFormConfig.GroupData(QgsEditFormConfig.GroupData)
-
mFields
¶
-
mName
¶
-
-
class
PythonInitCodeSource
¶ Bases:
int
-
SuppressDefault
= 0¶
-
SuppressOff
= 2¶
-
SuppressOn
= 1¶
-
class
TabData
¶ Bases:
sip.wrapper
Constructor for TabData
QgsEditFormConfig.TabData(name: str, fields: Iterable[str], groups: Iterable[QgsEditFormConfig.GroupData])
QgsEditFormConfig.TabData(QgsEditFormConfig.TabData)
-
mFields
¶
-
mGroups
¶
-
mName
¶
-
-
TabLayout
= 1¶
-
UiFileLayout
= 2¶
-
addTab
(self, data: QgsAttributeEditorElement)¶ Adds a new element to the invisible root container in the layout.
This is only useful in combination with EditorLayout.TabLayout.
- Parameters
data (QgsAttributeEditorElement) –
-
attributeEditorElementFromDomElement
(self, elem: QDomElement, parent: QgsAttributeEditorElement, layerId: str = '', context: QgsReadWriteContext = QgsReadWriteContext()) → QgsAttributeEditorElement¶ Deserialize drag and drop designer elements.
- Parameters
elem (QDomElement) –
parent (QgsAttributeEditorElement) –
layerId (str = '') –
context (
QgsReadWriteContext
= QgsReadWriteContext()) –
- Return type
-
clearTabs
(self)¶ Clears all the tabs for the attribute editor form with EditorLayout.TabLayout.
-
initCode
(self) → str¶ Gets Python code for edit form initialization.
- Return type
str
-
initCodeSource
(self) → QgsEditFormConfig.PythonInitCodeSource¶ Returns Python code source for edit form initialization (if it shall be loaded from a file, read from the provided dialog editor or inherited from the environment)
- Return type
-
initFilePath
(self) → str¶ Gets Python external file path for edit form initialization.
- Return type
str
-
initFunction
(self) → str¶ Gets Python function for edit form initialization. Will be looked up in a Python file relative to the project folder if it includes a module name or if it’s a pure function name it will searched in the Python code set with setInitCode().
- Return type
str
-
invisibleRootContainer
(self) → QgsAttributeEditorContainer¶ Gets the invisible root container for the drag and drop designer form (EditorLayout.TabLayout).
New in version 3.
- Return type
-
labelOnTop
(self, idx: int) → bool¶ If this returns true, the widget at the given index will receive its label on the previous line while if it returns false, the widget will receive its label on the left hand side. Labeling on top leaves more horizontal space for the widget itself.
- Parameters
idx (int) –
- Return type
bool
-
layout
(self) → QgsEditFormConfig.EditorLayout¶ Gets the active layout style for the attribute editor for this layer
- Return type
-
readOnly
(self, idx: int) → bool¶ This returns true if the field is manually set to read only or if the field does not support editing like joins or virtual fields.
- Parameters
idx (int) –
- Return type
bool
-
readXml
(self, node: QDomNode, context: QgsReadWriteContext)¶ Read XML information Deserialize on project load
- Parameters
node (QDomNode) –
context (QgsReadWriteContext) –
-
removeWidgetConfig
(self, widgetName: str) → bool¶ Remove the configuration for the editor widget with the given name
- Parameters
widgetName (str) – The name of the widget.
- Return type
bool
- Returns
true if a configuration has been removed
-
setInitCode
(self, code: str)¶ Set Python code for edit form initialization. Make sure that you also set the appropriate function name in setInitFunction().
- Parameters
code (str) –
-
setInitCodeSource
(self, initCodeSource: QgsEditFormConfig.PythonInitCodeSource)¶ Sets if Python code shall be used for edit form initialization and its origin
- Parameters
initCodeSource (QgsEditFormConfig.PythonInitCodeSource) –
-
setInitFilePath
(self, filePath: str)¶ Set Python external file path for edit form initialization. Make sure that you also set the appropriate function name in setInitFunction().
- Parameters
filePath (str) –
-
setInitFunction
(self, function: str)¶ Set Python function for edit form initialization. Will be looked up in a Python file relative to the project folder if it includes a module name or if it’s a pure function name it will searched in the Python code set with setInitCode().
- Parameters
function (str) –
-
setLabelOnTop
(self, idx: int, onTop: bool)¶ If this is set to true, the widget at the given index will receive its label on the previous line while if it is set to false, the widget will receive its label on the left hand side. Labeling on top leaves more horizontal space for the widget itself.
- Parameters
idx (int) –
onTop (bool) –
-
setLayout
(self, editorLayout: QgsEditFormConfig.EditorLayout)¶ Sets the active layout style for the attribute editor for this layer
- Parameters
editorLayout (QgsEditFormConfig.EditorLayout) –
-
setReadOnly
(self, idx: int, readOnly: bool = True)¶ If set to false, the widget at the given index will be read-only.
- Parameters
idx (int) –
readOnly (bool = True) –
-
setSuppress
(self, s: QgsEditFormConfig.FeatureFormSuppress)¶ Sets type of feature form pop-up suppression after feature creation (overrides app setting)
- Parameters
-
setUiForm
(self, ui: str)¶ Set path to the .ui form. When a string is provided in
ui
, the layout style will be set to EditorLayout.UiFileLayout, if an empty or a null string is provided, the layout style will be set to EditorLayout.GeneratedLayout. Ifui
is a URL, a local copy of the file will be made and will be used to create the formscontext
is provided to save error messages- Parameters
ui (str) –
-
setWidgetConfig
(self, widgetName: str, config: Dict[str, Any]) → bool¶ Set the editor widget config for a widget which is not for a simple field.
Example: .. code-block:: python
editFormConfig = layer.editFormConfig() editFormConfig.setWidgetConfig( ‘relation_id’, { ‘nm-rel’: ‘other_relation’ } ) layer.setEditFormConfig(editFormConfig)
- Parameters
widgetName (str) – The name of the widget to configure
config (Dict[str) – The config to set for this widget
- Return type
bool
- Returns
false if a field exists with the provided widgetName. In this case QgsVectorLayer.setEditorWidgetSetup should be used.
-
suppress
(self) → QgsEditFormConfig.FeatureFormSuppress¶ Type of feature form pop-up suppression after feature creation (overrides app setting)
- Return type
-
tabs
(self) → List[QgsAttributeEditorElement]¶ Returns a list of tabs for EditorLayout.TabLayout obtained from the invisible root container.
- Return type
-
uiForm
(self) → str¶ Returns the path or URL to the .ui form. Only meaningful with EditorLayout.UiFileLayout
- Return type
str
-
widgetConfig
(self, widgetName: str) → Dict[str, Any]¶ Gets the configuration for the editor widget with the given name.
- Parameters
widgetName (str) – The name of the widget.
- Return type
Dict[str, Any]
- Returns
The configuration for the editor widget or an empty config if the field does not exist
-
writeXml
(self, node: QDomNode, context: QgsReadWriteContext)¶ Write XML information Serialize on project save
- Parameters
node (QDomNode) –
context (QgsReadWriteContext) –