QGIS API Documentation  2.18.3-Las Palmas (77b8c3d)
Public Types | Public Slots | Public Member Functions | Protected Slots | Protected Member Functions | Friends | List of all members
QgsValueRelationSearchWidgetWrapper Class Reference

Wraps a value relation search widget. More...

#include <qgsvaluerelationsearchwidgetwrapper.h>

Inheritance diagram for QgsValueRelationSearchWidgetWrapper:
Inheritance graph
[legend]

Public Types

typedef QVector< ValueRelationItemValueRelationCache
 
typedef QPair< QVariant, QStringValueRelationItem
 
- Public Types inherited from QgsSearchWidgetWrapper
enum  FilterFlag {
  EqualTo = 1 << 1, NotEqualTo = 1 << 2, GreaterThan = 1 << 3, LessThan = 1 << 4,
  GreaterThanOrEqualTo = 1 << 5, LessThanOrEqualTo = 1 << 6, Between = 1 << 7, CaseInsensitive = 1 << 8,
  Contains = 1 << 9, DoesNotContain = 1 << 10, IsNull = 1 << 11, IsNotBetween = 1 << 12,
  IsNotNull = 1 << 13
}
 Flags which indicate what types of filtering and searching is possible using the widget. More...
 

Public Slots

virtual void clearWidget () override
 
void onValueChanged ()
 Called when current value of search widget changes. More...
 
virtual void setEnabled (bool enabled) override
 
- Public Slots inherited from QgsSearchWidgetWrapper
virtual void clearWidget ()
 Clears the widget's current value and resets it back to the default state. More...
 
virtual void setEnabled (bool enabled) override
 Toggles whether the search widget is enabled or disabled. More...
 
- Public Slots inherited from QgsWidgetWrapper
virtual void setEnabled (bool enabled)
 Is used to enable or disable the edit functionality of the managed widget. More...
 
virtual void setFeature (const QgsFeature &feature)=0
 Is called, when the value of the widget needs to be changed. More...
 

Public Member Functions

 QgsValueRelationSearchWidgetWrapper (QgsVectorLayer *vl, int fieldIdx, QWidget *parent=nullptr)
 
bool applyDirectly () override
 If this is true, then this search widget should take effect directly when its expression changes. More...
 
virtual QString createExpression (FilterFlags flags) const override
 Creates a filter expression based on the current state of the search widget and the specified filter flags. More...
 
FilterFlags defaultFlags () const override
 Returns the filter flags which should be set by default for the search widget. More...
 
QString expression () override
 Will be used to access the widget's value. More...
 
FilterFlags supportedFlags () const override
 Returns filter flags supported by the search widget. More...
 
bool valid () const override
 Return true if the widget has been properly initialized. More...
 
QVariant value () const
 
- Public Member Functions inherited from QgsSearchWidgetWrapper
 QgsSearchWidgetWrapper (QgsVectorLayer *vl, int fieldIdx, QWidget *parent=nullptr)
 Create a new widget wrapper. 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 QgsAttributeEditorContextcontext () const
 Returns information about the context in which this widget is shown. More...
 
QgsVectorLayerlayer () 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...
 
QWidgetwidget ()
 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)
 
QObjectchild (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< QByteArraydynamicPropertyNames () const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name) const
 
QList< T > findChildren (const QRegExp &regExp) 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 QMetaObjectmetaObject () const
 
void moveToThread (QThread *targetThread)
 
const char * name () const
 
const char * name (const char *defaultName) const
 
QString objectName () const
 
QObjectparent () 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)
 
QThreadthread () const
 

Protected Slots

void setExpression (QString exp) override
 
- Protected Slots inherited from QgsSearchWidgetWrapper
virtual void setExpression (QString value)=0
 
void setFeature (const QgsFeature &feature) override
 

Protected Member Functions

QWidgetcreateWidget (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...
 
- Protected Member Functions inherited from QgsSearchWidgetWrapper
void clearExpression ()
 clears the expression to search for all features 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
 
QObjectsender () const
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *event)
 

Friends

class QgsValueRelationWidgetFactory
 

Additional Inherited Members

- Signals inherited from QgsSearchWidgetWrapper
void expressionChanged (const QString &exp)
 Emitted whenever the expression changes. More...
 
void valueChanged ()
 Emitted when a user changes the value of the search widget. More...
 
void valueCleared ()
 Emitted when a user changes the value of the search widget back to an empty, default state. More...
 
- Static Public Member Functions inherited from QgsSearchWidgetWrapper
static QList< FilterFlagexclusiveFilterFlags ()
 Returns a list of exclusive filter flags, which cannot be combined with other flags (eg EqualTo/NotEqualTo) More...
 
static QList< FilterFlagnonExclusiveFilterFlags ()
 Returns a list of non-exclusive filter flags, which can be combined with other flags (eg CaseInsensitive) More...
 
static QString toString (FilterFlag flag)
 Returns a translated string representing a filter flag. More...
 
- Static Public Member Functions inherited from QgsWidgetWrapper
static QgsWidgetWrapperfromWidget (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)
 
- Static Protected Member Functions inherited from QObject
QByteArray normalizeSignalSlot (const char *signalSlot)
 
- Protected Attributes inherited from QgsSearchWidgetWrapper
QString mExpression
 
int mFieldIdx
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Wraps a value relation search widget.

This widget will offer a combobox with values from another layer referenced by a foreign key (a constraint may be set but is not required on data level). It will be used as a search widget and produces expression to look for in the layer.

Definition at line 34 of file qgsvaluerelationsearchwidgetwrapper.h.

Member Typedef Documentation

Definition at line 40 of file qgsvaluerelationsearchwidgetwrapper.h.

Definition at line 39 of file qgsvaluerelationsearchwidgetwrapper.h.

Constructor & Destructor Documentation

QgsValueRelationSearchWidgetWrapper::QgsValueRelationSearchWidgetWrapper ( QgsVectorLayer vl,
int  fieldIdx,
QWidget parent = nullptr 
)
explicit

Definition at line 28 of file qgsvaluerelationsearchwidgetwrapper.cpp.

Member Function Documentation

bool QgsValueRelationSearchWidgetWrapper::applyDirectly ( )
overridevirtual

If this is true, then this search widget should take effect directly when its expression changes.

Implements QgsSearchWidgetWrapper.

Definition at line 37 of file qgsvaluerelationsearchwidgetwrapper.cpp.

void QgsValueRelationSearchWidgetWrapper::clearWidget ( )
overridevirtualslot

Definition at line 145 of file qgsvaluerelationsearchwidgetwrapper.cpp.

QString QgsValueRelationSearchWidgetWrapper::createExpression ( FilterFlags  flags) const
overridevirtual

Creates a filter expression based on the current state of the search widget and the specified filter flags.

Parameters
flagsfilter flags
Returns
filter expression
Note
added in QGIS 2.16

Reimplemented from QgsSearchWidgetWrapper.

Definition at line 102 of file qgsvaluerelationsearchwidgetwrapper.cpp.

QWidget * QgsValueRelationSearchWidgetWrapper::createWidget ( QWidget parent)
overrideprotectedvirtual

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(QWidget*).

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

Implements QgsWidgetWrapper.

Definition at line 220 of file qgsvaluerelationsearchwidgetwrapper.cpp.

QgsSearchWidgetWrapper::FilterFlags QgsValueRelationSearchWidgetWrapper::defaultFlags ( ) const
overridevirtual

Returns the filter flags which should be set by default for the search widget.

Note
added in QGIS 2.16
See also
supportedFlags()

Reimplemented from QgsSearchWidgetWrapper.

Definition at line 97 of file qgsvaluerelationsearchwidgetwrapper.cpp.

QString QgsValueRelationSearchWidgetWrapper::expression ( )
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 QgsSearchWidgetWrapper.

Definition at line 46 of file qgsvaluerelationsearchwidgetwrapper.cpp.

void QgsValueRelationSearchWidgetWrapper::initWidget ( QWidget editor)
overrideprotectedvirtual

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 236 of file qgsvaluerelationsearchwidgetwrapper.cpp.

void QgsValueRelationSearchWidgetWrapper::onValueChanged ( )
slot

Called when current value of search widget changes.

Definition at line 182 of file qgsvaluerelationsearchwidgetwrapper.cpp.

void QgsValueRelationSearchWidgetWrapper::setEnabled ( bool  enabled)
overridevirtualslot

Definition at line 161 of file qgsvaluerelationsearchwidgetwrapper.cpp.

void QgsValueRelationSearchWidgetWrapper::setExpression ( QString  exp)
overrideprotectedslot

Definition at line 199 of file qgsvaluerelationsearchwidgetwrapper.cpp.

QgsSearchWidgetWrapper::FilterFlags QgsValueRelationSearchWidgetWrapper::supportedFlags ( ) const
overridevirtual

Returns filter flags supported by the search widget.

Note
added in QGIS 2.16
See also
defaultFlags()

Reimplemented from QgsSearchWidgetWrapper.

Definition at line 92 of file qgsvaluerelationsearchwidgetwrapper.cpp.

bool QgsValueRelationSearchWidgetWrapper::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 tothe caller that he may try to find another suitable widget type instead.

Returns
Validity status of this widget.
Note
Added in 2.12

Implements QgsWidgetWrapper.

Definition at line 177 of file qgsvaluerelationsearchwidgetwrapper.cpp.

QVariant QgsValueRelationSearchWidgetWrapper::value ( ) const

Definition at line 51 of file qgsvaluerelationsearchwidgetwrapper.cpp.

Friends And Related Function Documentation

friend class QgsValueRelationWidgetFactory
friend

Definition at line 77 of file qgsvaluerelationsearchwidgetwrapper.h.


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