QGIS API Documentation  3.0.2-Girona (307d082)
Public Slots | Public Member Functions | Protected Member Functions | List of all members
QgsRelationReferenceWidgetWrapper Class Reference

Wraps a relation reference widget. More...

#include <qgsrelationreferencewidgetwrapper.h>

Inheritance diagram for QgsRelationReferenceWidgetWrapper:
Inheritance graph
[legend]

Public Slots

void setEnabled (bool enabled) override
 
void setValue (const QVariant &value) override
 
- Public Slots inherited from QgsEditorWidgetWrapper
void emitValueChanged ()
 Will call the value() method to determine the emitted value. More...
 
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...
 

Public Member Functions

 QgsRelationReferenceWidgetWrapper (QgsVectorLayer *vl, int fieldIdx, QWidget *editor, QgsMapCanvas *canvas, QgsMessageBar *messageBar, QWidget *parent=nullptr)
 Constructor for QgsRelationReferenceWidgetWrapper. More...
 
QWidget * createWidget (QWidget *parent) override
 This method should create a new widget with the provided parent. More...
 
void initWidget (QWidget *editor) override
 This method should initialize the editor widget with runtime data. More...
 
void showIndeterminateState () override
 Sets the widget to display in an indeterminate "mixed value" state. More...
 
bool valid () const override
 Return true if the widget has been properly initialized. More...
 
QVariant value () const override
 Will be used to access the widget's value. More...
 
- Public Member Functions inherited from QgsEditorWidgetWrapper
 QgsEditorWidgetWrapper (QgsVectorLayer *vl, int fieldIdx, QWidget *editor=nullptr, QWidget *parent=nullptr)
 Create a new widget wrapper. More...
 
QString constraintFailureReason () const
 Returns the reason why a constraint check has failed (or an empty string if constraint check was successful). More...
 
ConstraintResult constraintResult () const
 Getter of constraintResult It's the current result of the constraint on the widget influencing it's visualization. More...
 
bool constraintResultVisible () const
 Getter of constraintResultVisible Defines if the constraint result should be visualized on the widget (with color). 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 isBlockingCommit () const
 Returns true if the widget is preventing the feature from being committed. More...
 
bool isValidConstraint () const
 Get the current constraint status. More...
 
void setConstraintResultVisible (bool constraintResultVisible)
 Setter of constraintResultVisible Defines if the constraint result should be visualized on the widget (with color). More...
 
void setEnabled (bool enabled) override
 Is used to enable or disable the edit functionality of the managed widget. More...
 
virtual void setHint (const QString &hintText)
 Add a hint text on the widget. More...
 
void updateConstraint (const QgsFeature &featureContext, QgsFieldConstraints::ConstraintOrigin constraintOrigin=QgsFieldConstraints::ConstraintOriginNotSet)
 Update constraint. More...
 
void updateConstraint (const QgsVectorLayer *layer, int index, const QgsFeature &feature, QgsFieldConstraints::ConstraintOrigin constraintOrigin=QgsFieldConstraints::ConstraintOriginNotSet)
 Update constraint on a feature coming from a specific layer. 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...
 
QVariantMap config () const
 Returns the whole config. More...
 
const QgsAttributeEditorContextcontext () const
 Returns information about the context in which this widget is shown. More...
 
QgsPropertyCollectiondataDefinedProperties ()
 Returns a reference to the editor widget's property collection, used for data defined overrides. More...
 
const QgsPropertyCollectiondataDefinedProperties () const
 Returns a reference to the editor widget's property collection, used for data defined overrides. More...
 
QgsVectorLayerlayer () const
 Access the QgsVectorLayer, you are working on. More...
 
void setConfig (const QVariantMap &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...
 
void setDataDefinedProperties (const QgsPropertyCollection &collection)
 Sets the editor widget's property collection, used for data defined overrides. 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...
 

Protected Member Functions

void updateConstraintWidgetStatus () override
 This should update the widget with a visual cue if a constraint status changed. More...
 

Additional Inherited Members

- Public Types inherited from QgsEditorWidgetWrapper
enum  ConstraintResult { ConstraintResultPass = 0, ConstraintResultFailHard, ConstraintResultFailSoft }
 Result of constraint checks. More...
 
- Public Types inherited from QgsWidgetWrapper
enum  Property { RootPath = 0, DocumentViewerContent }
 Data defined properties for different editor widgets. More...
 
- Signals inherited from QgsEditorWidgetWrapper
void constraintResultVisibleChanged (bool visible)
 Emit this signal when the constraint result visibility changed. More...
 
void constraintStatusChanged (const QString &constraint, const QString &desc, const QString &err, QgsEditorWidgetWrapper::ConstraintResult status)
 Emit this signal when the constraint status changed. More...
 
void valueChanged (const QVariant &value)
 Emit this signal, whenever the value changed. More...
 
- Static Public Member Functions inherited from QgsEditorWidgetWrapper
static QgsEditorWidgetWrapperfromWidget (QWidget *widget)
 Will return a wrapper for a given widget. More...
 
static bool isInTable (const QWidget *parent)
 Check if the given widget or one of its parent is a QTableView. More...
 
- Static Public Member Functions inherited from QgsWidgetWrapper
static QgsWidgetWrapperfromWidget (QWidget *widget)
 Will return a wrapper for a given widget. More...
 
static const QgsPropertiesDefinitionpropertyDefinitions ()
 Returns the editor widget property definitions. More...
 
- Protected Attributes inherited from QgsWidgetWrapper
QgsPropertyCollection mPropertyCollection
 Data defined property collection. More...
 
- Properties inherited from QgsEditorWidgetWrapper
ConstraintResult constraintResult
 
bool constraintResultVisible
 

Detailed Description

Wraps a relation reference widget.

Options:

Definition at line 43 of file qgsrelationreferencewidgetwrapper.h.

Constructor & Destructor Documentation

◆ QgsRelationReferenceWidgetWrapper()

QgsRelationReferenceWidgetWrapper::QgsRelationReferenceWidgetWrapper ( QgsVectorLayer vl,
int  fieldIdx,
QWidget *  editor,
QgsMapCanvas canvas,
QgsMessageBar messageBar,
QWidget *  parent = nullptr 
)
explicit

Constructor for QgsRelationReferenceWidgetWrapper.

Definition at line 22 of file qgsrelationreferencewidgetwrapper.cpp.

Member Function Documentation

◆ createWidget()

QWidget * QgsRelationReferenceWidgetWrapper::createWidget ( QWidget *  parent)
overridevirtual

This method should create a new widget with the provided parent.

This will only be called if the form did not already provide a widget, so it is not guaranteed to be called! You should not do initialization stuff, which also has to be done for custom editor widgets inside this method. Things like filling comboboxes and assigning other data which will also be used to make widgets on forms created in the QtDesigner usable should be assigned in initWidget().

Parameters
parentYou should set this parent on the created widget.
Returns
A new widget

Implements QgsWidgetWrapper.

Definition at line 30 of file qgsrelationreferencewidgetwrapper.cpp.

◆ initWidget()

void QgsRelationReferenceWidgetWrapper::initWidget ( QWidget *  editor)
overridevirtual

This method should initialize the editor widget with runtime data.

Fill your comboboxes here.

Parameters
editorThe widget which will represent this attribute editor in a form.

Reimplemented from QgsWidgetWrapper.

Definition at line 36 of file qgsrelationreferencewidgetwrapper.cpp.

◆ setEnabled

void QgsRelationReferenceWidgetWrapper::setEnabled ( bool  enabled)
overrideslot

Definition at line 136 of file qgsrelationreferencewidgetwrapper.cpp.

◆ setValue

void QgsRelationReferenceWidgetWrapper::setValue ( const QVariant &  value)
overrideslot

Definition at line 127 of file qgsrelationreferencewidgetwrapper.cpp.

◆ showIndeterminateState()

void QgsRelationReferenceWidgetWrapper::showIndeterminateState ( )
overridevirtual

Sets the widget to display in an indeterminate "mixed value" state.

Since
QGIS 2.16

Reimplemented from QgsEditorWidgetWrapper.

Definition at line 118 of file qgsrelationreferencewidgetwrapper.cpp.

◆ updateConstraintWidgetStatus()

void QgsRelationReferenceWidgetWrapper::updateConstraintWidgetStatus ( )
overrideprotectedvirtual

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.

Since
QGIS 2.16

Reimplemented from QgsEditorWidgetWrapper.

Definition at line 153 of file qgsrelationreferencewidgetwrapper.cpp.

◆ valid()

bool QgsRelationReferenceWidgetWrapper::valid ( ) const
overridevirtual

Return true if the widget has been properly initialized.

This acts as hint for the calling party if this wrapper can be used after initializing it. If it cannot be used this is a hint to the caller that he may try to find another suitable widget type instead.

Returns
Validity status of this widget.
Since
QGIS 2.12

Implements QgsWidgetWrapper.

Definition at line 113 of file qgsrelationreferencewidgetwrapper.cpp.

◆ value()

QVariant QgsRelationReferenceWidgetWrapper::value ( ) const
overridevirtual

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.

Returns
The current value the widget represents

Implements QgsEditorWidgetWrapper.

Definition at line 96 of file qgsrelationreferencewidgetwrapper.cpp.


The documentation for this class was generated from the following files: