QGIS API Documentation
2.18.21-Las Palmas (9fba24a)
|
Manages an editor widget Widget and wrapper share the same parent. More...
#include <qgseditorwidgetwrapper.h>
Public Slots | |
void | setFeature (const QgsFeature &feature) override |
Will be called when the feature changes. More... | |
virtual void | setValue (const QVariant &value)=0 |
Is called, when the value of the widget needs to be changed. More... | |
Public Slots inherited from QgsWidgetWrapper | |
virtual void | setFeature (const QgsFeature &feature)=0 |
Is called, when the value of the widget needs to be changed. More... | |
Signals | |
void | constraintStatusChanged (const QString &constraint, const QString &desc, const QString &err, bool status) |
Emit this signal when the constraint status changed. More... | |
void | valueChanged (const QVariant &value) |
Emit this signal, whenever the value changed. More... | |
Public Member Functions | |
QgsEditorWidgetWrapper (QgsVectorLayer *vl, int fieldIdx, QWidget *editor=nullptr, QWidget *parent=nullptr) | |
Create a new widget wrapper. More... | |
QVariant | defaultValue () const |
Access the default value of the field. More... | |
QgsField | field () const |
Access the field. More... | |
int | fieldIdx () const |
Access the field index. More... | |
bool | isValidConstraint () const |
Get the current constraint status. More... | |
virtual void | setEnabled (bool enabled) override |
Is used to enable or disable the edit functionality of the managed widget. More... | |
virtual void | showIndeterminateState () |
Sets the widget to display in an indeterminate "mixed value" state. More... | |
void | updateConstraint (const QgsFeature &featureContext) |
Update constraint. More... | |
virtual QVariant | value () const =0 |
Will be used to access the widget's value. More... | |
Public Member Functions inherited from QgsWidgetWrapper | |
QgsWidgetWrapper (QgsVectorLayer *vl, QWidget *editor=nullptr, QWidget *parent=nullptr) | |
Create a new widget wrapper. More... | |
QVariant | config (const QString &key, const QVariant &defaultVal=QVariant()) const |
Use this inside your overridden classes to access the configuration. More... | |
QgsEditorWidgetConfig | config () const |
Returns the whole config. More... | |
const QgsAttributeEditorContext & | context () const |
Returns information about the context in which this widget is shown. More... | |
QgsVectorLayer * | layer () const |
Access the QgsVectorLayer, you are working on. More... | |
void | setConfig (const QgsEditorWidgetConfig &config) |
Will set the config of this wrapper to the specified config. More... | |
void | setContext (const QgsAttributeEditorContext &context) |
Set the context in which this widget is shown. More... | |
virtual bool | valid () const =0 |
Return true if the widget has been properly initialized. More... | |
QWidget * | widget () |
Access the widget managed by this wrapper. More... | |
template<class T > | |
T * | widget () |
Access the widget managed by this wrapper and cast it to a given type Example: QPushButton* pb = wrapper->widget<QPushButton*>();. More... | |
Public Member Functions inherited from QObject | |
QObject (QObject *parent) | |
QObject (QObject *parent, const char *name) | |
virtual | ~QObject () |
bool | blockSignals (bool block) |
QObject * | child (const char *objName, const char *inheritsClass, bool recursiveSearch) const |
const QObjectList & | children () const |
const char * | className () const |
bool | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const QObject *receiver, const char *method) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) |
void | dumpObjectInfo () |
void | dumpObjectTree () |
QList< QByteArray > | dynamicPropertyNames () const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name) const |
QList< T > | findChildren (const QRegExp ®Exp) const |
QList< T > | findChildren (const QString &name) const |
bool | inherits (const char *className) const |
void | insertChild (QObject *object) |
void | installEventFilter (QObject *filterObj) |
bool | isA (const char *className) const |
bool | isWidgetType () const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const |
void | moveToThread (QThread *targetThread) |
const char * | name () const |
const char * | name (const char *defaultName) const |
QString | objectName () const |
QObject * | parent () const |
QVariant | property (const char *name) const |
void | removeChild (QObject *object) |
void | removeEventFilter (QObject *obj) |
void | setName (const char *name) |
void | setObjectName (const QString &name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | signalsBlocked () const |
int | startTimer (int interval) |
QThread * | thread () const |
Static Public Member Functions | |
static QgsEditorWidgetWrapper * | fromWidget (QWidget *widget) |
Will return a wrapper for a given widget. More... | |
Static Public Member Functions inherited from QgsWidgetWrapper | |
static QgsWidgetWrapper * | fromWidget (QWidget *widget) |
Will return a wrapper for a given widget. More... | |
Static Public Member Functions inherited from QObject | |
bool | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
bool | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
Protected Slots | |
void | valueChanged (const QString &value) |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More... | |
void | valueChanged (int value) |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More... | |
void | valueChanged (double value) |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More... | |
void | valueChanged (bool value) |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More... | |
void | valueChanged (qlonglong value) |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More... | |
void | valueChanged () |
Will call the value() method to determine the emitted value. More... | |
Protected Member Functions | |
virtual void | updateConstraintWidgetStatus (bool constraintValid) |
This should update the widget with a visual cue if a constraint status changed. More... | |
Protected Member Functions inherited from QgsWidgetWrapper | |
virtual QWidget * | createWidget (QWidget *parent)=0 |
This method should create a new widget with the provided parent. More... | |
virtual void | initWidget (QWidget *editor) |
This method should initialize the editor widget with runtime data. More... | |
Protected Member Functions inherited from QObject | |
bool | checkConnectArgs (const char *signal, const QObject *object, const char *method) |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const char *signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const char *signal) |
int | receivers (const char *signal) const |
QObject * | sender () const |
int | senderSignalIndex () const |
virtual void | timerEvent (QTimerEvent *event) |
Additional Inherited Members | |
Static Protected Member Functions inherited from QObject | |
QByteArray | normalizeSignalSlot (const char *signalSlot) |
Properties inherited from QObject | |
objectName | |
Manages an editor widget Widget and wrapper share the same parent.
A wrapper controls one attribute editor widget and is able to create a default widget or use a pre-existent widget. It is able to set the widget to the value implied by a field of a vector layer, or return the value it currently holds. Every time it is changed it has to emit a valueChanged signal. If it fails to do so, there is no guarantee that the changed status of the widget will be saved.
Definition at line 41 of file qgseditorwidgetwrapper.h.
|
explicit |
Create a new widget wrapper.
vl | The layer on which the field is |
fieldIdx | The field which will be controlled |
editor | An editor widget. Can be NULL if one should be autogenerated. |
parent | A parent widget for this widget wrapper and the created widget. |
Definition at line 23 of file qgseditorwidgetwrapper.cpp.
|
signal |
Emit this signal when the constraint status changed.
constraintStatusChanged
constraint | represented as a string |
desc | is the constraint description |
err | the error represented as a string. Empty if none. |
status |
QVariant QgsEditorWidgetWrapper::defaultValue | ( | ) | const |
Access the default value of the field.
Definition at line 43 of file qgseditorwidgetwrapper.cpp.
QgsField QgsEditorWidgetWrapper::field | ( | ) | const |
Access the field.
Definition at line 35 of file qgseditorwidgetwrapper.cpp.
int QgsEditorWidgetWrapper::fieldIdx | ( | ) | const |
Access the field index.
Definition at line 30 of file qgseditorwidgetwrapper.cpp.
|
static |
Will return a wrapper for a given widget.
widget | The widget which was created by a wrapper |
Definition at line 54 of file qgseditorwidgetwrapper.cpp.
bool QgsEditorWidgetWrapper::isValidConstraint | ( | ) | const |
Get the current constraint status.
Definition at line 174 of file qgseditorwidgetwrapper.cpp.
|
overridevirtual |
Is used to enable or disable the edit functionality of the managed widget.
By default this will enable or disable the whole widget
enabled | Enable or Disable? |
Reimplemented from QgsWidgetWrapper.
Reimplemented in QgsValueRelationWidgetWrapper.
Definition at line 59 of file qgseditorwidgetwrapper.cpp.
|
overrideslot |
Will be called when the feature changes.
Is forwarded to the slot setValue()
feature | The new feature |
Definition at line 68 of file qgseditorwidgetwrapper.cpp.
|
pure virtualslot |
Is called, when the value of the widget needs to be changed.
Update the widget representation to reflect the new value.
value | The new value of the attribute |
|
inlinevirtual |
Sets the widget to display in an indeterminate "mixed value" state.
Reimplemented in QgsValueRelationWidgetWrapper, QgsDateTimeEditWrapper, QgsRelationReferenceWidgetWrapper, QgsPhotoWidgetWrapper, QgsCheckboxWidgetWrapper, QgsExternalResourceWidgetWrapper, QgsTextEditWrapper, QgsValueMapWidgetWrapper, QgsFileNameWidgetWrapper, QgsUniqueValuesWidgetWrapper, QgsWebViewWidgetWrapper, QgsColorWidgetWrapper, QgsClassificationWidgetWrapper, and QgsEnumerationWidgetWrapper.
Definition at line 111 of file qgseditorwidgetwrapper.h.
void QgsEditorWidgetWrapper::updateConstraint | ( | const QgsFeature & | featureContext | ) |
Update constraint.
featureContext | the feature to use to evaluate the constraint |
Definition at line 112 of file qgseditorwidgetwrapper.cpp.
|
protectedvirtual |
This should update the widget with a visual cue if a constraint status changed.
By default a stylesheet will be applied on the widget that changes the background color to red.
This can be overwritten in subclasses to allow individual widgets to change the visual cue.
constraintValid | The current constraint status. |
Reimplemented in QgsRelationReferenceWidgetWrapper.
Definition at line 104 of file qgseditorwidgetwrapper.cpp.
|
pure virtual |
Will be used to access the widget's value.
Read the value from the widget and return it properly formatted to be saved in the attribute.
If an invalid variant is returned this will be interpreted as no change. Be sure to return a NULL QVariant if it should be set to NULL.
Implemented in QgsValueRelationWidgetWrapper, QgsDateTimeEditWrapper, QgsPhotoWidgetWrapper, QgsRelationReferenceWidgetWrapper, QgsRangeWidgetWrapper, QgsCheckboxWidgetWrapper, QgsExternalResourceWidgetWrapper, QgsTextEditWrapper, QgsValueMapWidgetWrapper, QgsFileNameWidgetWrapper, QgsUniqueValuesWidgetWrapper, QgsWebViewWidgetWrapper, QgsUuidWidgetWrapper, QgsColorWidgetWrapper, QgsClassificationWidgetWrapper, QgsEnumerationWidgetWrapper, and QgsHiddenWidgetWrapper.
|
signal |
Emit this signal, whenever the value changed.
value | The new value |
|
protectedslot |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.
Helper for string type widgets.
value | The value |
Definition at line 74 of file qgseditorwidgetwrapper.cpp.
|
protectedslot |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.
Helper for int type widgets.
value | The value |
Definition at line 79 of file qgseditorwidgetwrapper.cpp.
|
protectedslot |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.
Helper for double type widgets.
value | The value |
Definition at line 84 of file qgseditorwidgetwrapper.cpp.
|
protectedslot |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.
Helper for bool type widgets.
value | The value |
Definition at line 89 of file qgseditorwidgetwrapper.cpp.
|
protectedslot |
If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.
Helper for longlong type widgets.
value | The value |
Definition at line 94 of file qgseditorwidgetwrapper.cpp.
|
protectedslot |
Will call the value() method to determine the emitted value.
Definition at line 99 of file qgseditorwidgetwrapper.cpp.