Class: QgsAttributeForm¶
- class qgis.gui.QgsAttributeForm(vl: QgsVectorLayer, feature: QgsFeature = QgsFeature(), context: QgsAttributeEditorContext = QgsAttributeEditorContext(), parent: QWidget = None)¶
Bases:
PyQt5.QtWidgets.QWidget
Methods
Takes ownership
The aggregate filter is only useful if the form is in AggregateFilter mode.
Call this to change the content of a given attribute.
Returns the feature that is currently displayed in the form with all the changes received on editing the values in the widgets.
Disconnects the button box (OK/Cancel) from the accept/resetValues slots If this method is called, you have to create these connections from outside
Displays a warning message in the form message bar
Returns if the form is currently in editable mode.
Intercepts keypress on custom form (escape should not close it)
- rtype
QgsFeature
Hides the button box (OK/Cancel) and enables auto-commit
Returns the layer for which this form is shown
Returns the current mode of the form.
Is called in embedded forms when an
attribute
value in the parent form has changed tonewValue
.reload current feature
Resets the search/filter form values.
Sets all values to the values of the current feature
Save all the values from the editors to the layer.
Save all the values from the editors to the layer.
Sets the edit command message (Undo) that will be used when the dialog is accepted
Sets an additional expression context scope to be used for calculations in this form.
Update all editors to correspond to a different feature.
Sets the message bar to display feedback from the form in.
Sets the current mode of the form.
Sets all feature IDs which are to be edited if the form is in multiedit mode
Shows the button box (OK/Cancel) and disables auto-commit
Signals
Notifies about changes of attributes, this signal is not emitted when the value is set back to the original one.
Emitted when the user selects the close option from the form's button bar.
Emitted when a feature is changed or added [signal]
Emitted when a filter expression is set using the form.
Emitted when the user chooses to flash a filtered set of features.
Emitted when the form changes mode.
Notifies about changes of attributes
Emitted when the user chooses to zoom to a filtered set of features.
Attributes
- AddFeatureMode = 1¶
- AggregateSearchMode = 4¶
- FilterAnd = 1¶
- FilterOr = 2¶
- class FilterType¶
Bases:
int
- IdentifyMode = 5¶
- class Mode¶
Bases:
int
- MultiEditMode = 2¶
- ReplaceFilter = 0¶
- SearchMode = 3¶
- SingleEditMode = 0¶
- actionEvent(self, QActionEvent)¶
- addInterface(self, iface: QgsAttributeFormInterface)¶
Takes ownership
- Parameters
iface (QgsAttributeFormInterface) –
- aggregateFilter(self) str ¶
The aggregate filter is only useful if the form is in AggregateFilter mode. In this case it will return a combined expression according to the chosen filters on all attribute widgets.
New in version 3.0.
- Return type
str
- attributeChanged¶
Notifies about changes of attributes, this signal is not emitted when the value is set back to the original one.
- Parameters
attribute (str) – The name of the attribute that changed.
value (Any) – The new value of the attribute.
Deprecated since version since: 3.0 [signal]
- changeAttribute(self, field: str, value: Any, hintText: str = '')¶
Call this to change the content of a given attribute. Will update the editor(s) related to this field.
- Parameters
field (str) – The field to change
value (Any) – The new value
hintText (str = '') – A hint text for non existent joined features
- changeEvent(self, QEvent)¶
- childEvent(self, QChildEvent)¶
- closeEvent(self, QCloseEvent)¶
- closed¶
Emitted when the user selects the close option from the form’s button bar.
New in version 2.16: [signal]
- connectNotify(self, QMetaMethod)¶
- contextMenuEvent(self, QContextMenuEvent)¶
- create(self, window: sip.voidptr = 0, initializeWindow: bool = True, destroyOldWindow: bool = True)¶
- currentFormFeature(self) QgsFeature ¶
Returns the feature that is currently displayed in the form with all the changes received on editing the values in the widgets.
New in version 3.16.
- Return type
- customEvent(self, QEvent)¶
- destroy(self, destroyWindow: bool = True, destroySubWindows: bool = True)¶
- disconnectButtonBox(self)¶
Disconnects the button box (OK/Cancel) from the accept/resetValues slots If this method is called, you have to create these connections from outside
- disconnectNotify(self, QMetaMethod)¶
- displayWarning(self, message: str)¶
Displays a warning message in the form message bar
- Parameters
message (str) – message string
See also
New in version 3.12.
- dragEnterEvent(self, QDragEnterEvent)¶
- dragLeaveEvent(self, QDragLeaveEvent)¶
- dragMoveEvent(self, QDragMoveEvent)¶
- dropEvent(self, QDropEvent)¶
- editable(self) bool ¶
Returns if the form is currently in editable mode.
- Return type
bool
- Returns
Editable mode of this form
- enterEvent(self, QEvent)¶
- event(self, QEvent) bool ¶
- eventFilter(self, object: QObject, event: QEvent) bool ¶
Intercepts keypress on custom form (escape should not close it)
- Parameters
object (QObject) – The object for which the event has been sent
event (QEvent) – The event which is being filtered
- Return type
bool
- Returns
True
if the event has been handled (key was ESC)
- feature(self) QgsFeature ¶
- Return type
- featureSaved¶
Emitted when a feature is changed or added [signal]
- Parameters
feature (QgsFeature) –
- filterExpressionSet¶
Emitted when a filter expression is set using the form.
- Parameters
expression (str) – filter expression
type (QgsAttributeForm.FilterType) – filter type
New in version 2.16: [signal]
- flashFeatures¶
Emitted when the user chooses to flash a filtered set of features.
New in version 3.0: [signal]
- Parameters
filter (str) –
- focusInEvent(self, QFocusEvent)¶
- focusNextChild(self) bool ¶
- focusNextPrevChild(self, bool) bool ¶
- focusOutEvent(self, QFocusEvent)¶
- focusPreviousChild(self) bool ¶
- hideButtonBox(self)¶
Hides the button box (OK/Cancel) and enables auto-commit
Note
set Embed in
QgsAttributeEditorContext
in constructor instead
- hideEvent(self, QHideEvent)¶
- initPainter(self, QPainter)¶
- inputMethodEvent(self, QInputMethodEvent)¶
- isSignalConnected(self, QMetaMethod) bool ¶
- keyPressEvent(self, QKeyEvent)¶
- keyReleaseEvent(self, QKeyEvent)¶
- layer(self) QgsVectorLayer ¶
Returns the layer for which this form is shown
- Return type
- Returns
Layer
- leaveEvent(self, QEvent)¶
- metric(self, QPaintDevice.PaintDeviceMetric) int ¶
- mode(self) QgsAttributeEditorContext.Mode ¶
Returns the current mode of the form.
See also
New in version 2.16.
- Return type
- modeChanged¶
Emitted when the form changes mode.
- Parameters
mode (QgsAttributeEditorContext.Mode) – new mode [signal]
- mouseDoubleClickEvent(self, QMouseEvent)¶
- mouseMoveEvent(self, QMouseEvent)¶
- mousePressEvent(self, QMouseEvent)¶
- mouseReleaseEvent(self, QMouseEvent)¶
- moveEvent(self, QMoveEvent)¶
- nativeEvent(self, Union[QByteArray, bytes, bytearray], sip.voidptr) Tuple[bool, int] ¶
- paintEvent(self, QPaintEvent)¶
- parentFormValueChanged(self, attribute: str, newValue: Any)¶
Is called in embedded forms when an
attribute
value in the parent form has changed tonewValue
.Notify the form widgets that something has changed in case they have filter expressions that depend on the parent form scope.
New in version 3.14.
- Parameters
attribute (str) –
newValue (Any) –
- receivers(self, PYQT_SIGNAL) int ¶
- refreshFeature(self)¶
reload current feature
- resetSearch(self)¶
Resets the search/filter form values.
New in version 2.16.
- resetValues(self)¶
Sets all values to the values of the current feature
- resizeEvent(self, QResizeEvent)¶
- save(self) bool ¶
Save all the values from the editors to the layer.
- Return type
bool
- Returns
True
if successful
- saveWithDetails(self) Tuple[bool, str] ¶
Save all the values from the editors to the layer.
- Return type
Tuple[bool, str]
- Returns
True
if save was successfulerror: will be set to an explanatory error message if an error occurs while saving the form.
New in version 3.18.
- sender(self) QObject ¶
- senderSignalIndex(self) int ¶
- setEditCommandMessage(self, message: str)¶
Sets the edit command message (Undo) that will be used when the dialog is accepted
- Parameters
message (str) – The message
- setExtraContextScope(self, extraScope: QgsExpressionContextScope)¶
Sets an additional expression context scope to be used for calculations in this form.
New in version 3.16.
- Parameters
extraScope (QgsExpressionContextScope) –
- setFeature(self, feature: QgsFeature)¶
Update all editors to correspond to a different feature.
- Parameters
feature (QgsFeature) – The feature which will be represented by the form
- setMessageBar(self, messageBar: QgsMessageBar)¶
Sets the message bar to display feedback from the form in. This is used in the search/filter mode to display the count of selected features.
- Parameters
messageBar (QgsMessageBar) – target message bar
New in version 2.16.
- setMode(self, mode: QgsAttributeEditorContext.Mode)¶
Sets the current mode of the form.
- Parameters
mode (QgsAttributeEditorContext.Mode) – form mode
See also
New in version 2.16.
- setMultiEditFeatureIds(self, fids: object)¶
Sets all feature IDs which are to be edited if the form is in multiedit mode
- Parameters
fids (object) – feature ID list
New in version 2.16.
- showButtonBox(self)¶
Shows the button box (OK/Cancel) and disables auto-commit
Note
set Embed in
QgsAttributeEditorContext
in constructor instead
- showEvent(self, QShowEvent)¶
- tabletEvent(self, QTabletEvent)¶
- timerEvent(self, QTimerEvent)¶
- updateMicroFocus(self)¶
- wheelEvent(self, QWheelEvent)¶
- widgetValueChanged¶
Notifies about changes of attributes
- Parameters
attribute (str) – The name of the attribute that changed.
value (Any) – The new value of the attribute.
attributeChanged (bool) – If
True
, it corresponds to an actual change of the feature attribute
New in version 3.0.1: [signal]
- zoomToFeatures¶
Emitted when the user chooses to zoom to a filtered set of features.
New in version 3.0: [signal]
- Parameters
filter (str) –