QGIS API Documentation
3.6.0-Noosa (5873452)
|
Search widget for the children of a relation. More...
#include <qgsrelationaggregatesearchwidgetwrapper.h>
Public Member Functions | |
QgsRelationAggregateSearchWidgetWrapper (QgsVectorLayer *layer, QgsRelationWidgetWrapper *wrapper, QWidget *parent SIP_TRANSFERTHIS=nullptr) | |
Constructor. More... | |
bool | applyDirectly () override |
If this is true, then this search widget should take effect directly when its expression changes. More... | |
QWidget * | createWidget (QWidget *parent) override |
This method should create a new widget with the provided parent. More... | |
bool | eventFilter (QObject *watched, QEvent *event) override |
QString | expression () const override |
Will be used to access the widget's value. More... | |
void | setExpression (const QString &value) override |
Set the expression which is currently used as filter for this widget. More... | |
bool | valid () const override |
Returns true if the widget has been properly initialized. More... | |
Public Member Functions inherited from QgsSearchWidgetWrapper | |
QgsSearchWidgetWrapper (QgsVectorLayer *vl, int fieldIdx, QWidget *parent=nullptr) | |
Create a new widget wrapper. More... | |
QString | aggregate () const |
If in AggregateSearch mode, which aggregate should be used to construct the filter expression. More... | |
virtual QString | createExpression (FilterFlags flags) const |
Creates a filter expression based on the current state of the search widget and the specified filter flags. More... | |
QString | createFieldIdentifier () const |
Gets a field name or expression to use as field comparison. More... | |
virtual FilterFlags | defaultFlags () const |
Returns the filter flags which should be set by default for the search widget. More... | |
void | setAggregate (const QString &aggregate) |
If in AggregateSearch mode, which aggregate should be used to construct the filter expression. More... | |
virtual FilterFlags | supportedFlags () const |
Returns filter flags supported by the search widget. 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 QgsAttributeEditorContext & | context () const |
Returns information about the context in which this widget is shown. More... | |
QgsPropertyCollection & | dataDefinedProperties () |
Returns a reference to the editor widget's property collection, used for data defined overrides. More... | |
const QgsPropertyCollection & | dataDefinedProperties () const |
Returns a reference to the editor widget's property collection, used for data defined overrides. More... | |
QgsVectorLayer * | layer () const |
Returns the vector layer associated with the widget. More... | |
void | notifyAboutToSave () |
Notify this widget, that the containing form is about to save and that any pending changes should be pushed to the edit buffer or they might be lost. 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... | |
Additional Inherited Members | |
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, StartsWith = 1 << 14, EndsWith = 1 << 15 } |
Flags which indicate what types of filtering and searching is possible using the widget. More... | |
Public Types inherited from QgsWidgetWrapper | |
enum | Property { RootPath = 0, DocumentViewerContent } |
Data defined properties for different editor widgets. More... | |
Public Slots inherited from QgsSearchWidgetWrapper | |
virtual void | clearWidget () |
Clears the widget's current value and resets it back to the default state. More... | |
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... | |
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... | |
Signals inherited from QgsWidgetWrapper | |
void | contextChanged () |
Signal when QgsAttributeEditorContext mContext changed. More... | |
Static Public Member Functions inherited from QgsSearchWidgetWrapper | |
static QList< QgsSearchWidgetWrapper::FilterFlag > | exclusiveFilterFlags () |
Returns a list of exclusive filter flags, which cannot be combined with other flags (e.g., EqualTo/NotEqualTo) More... | |
static QList< QgsSearchWidgetWrapper::FilterFlag > | nonExclusiveFilterFlags () |
Returns a list of non-exclusive filter flags, which can be combined with other flags (e.g., CaseInsensitive) More... | |
static QString | toString (QgsSearchWidgetWrapper::FilterFlag flag) |
Returns a translated string representing a filter flag. More... | |
Static Public Member Functions inherited from QgsWidgetWrapper | |
static QgsWidgetWrapper * | fromWidget (QWidget *widget) |
Will return a wrapper for a given widget. More... | |
static const QgsPropertiesDefinition & | propertyDefinitions () |
Returns the editor widget property definitions. More... | |
Protected Slots inherited from QgsSearchWidgetWrapper | |
void | setFeature (const QgsFeature &feature) override |
Protected Member Functions inherited from QgsSearchWidgetWrapper | |
void | clearExpression () |
clears the expression to search for all features More... | |
Protected Member Functions inherited from QgsWidgetWrapper | |
virtual void | initWidget (QWidget *editor) |
This method should initialize the editor widget with runtime data. More... | |
Protected Attributes inherited from QgsSearchWidgetWrapper | |
QString | mExpression |
int | mFieldIdx |
Protected Attributes inherited from QgsWidgetWrapper | |
QgsPropertyCollection | mPropertyCollection |
Data defined property collection. More... | |
Search widget for the children of a relation.
For each attribute of the child, an additional QgsAggregateToolButton will be shown to determine how the values should be aggregated for searching.
Definition at line 35 of file qgsrelationaggregatesearchwidgetwrapper.h.
|
explicit |
Constructor.
Definition at line 26 of file qgsrelationaggregatesearchwidgetwrapper.cpp.
|
overridevirtual |
If this is true, then this search widget should take effect directly when its expression changes.
Implements QgsSearchWidgetWrapper.
Definition at line 75 of file qgsrelationaggregatesearchwidgetwrapper.cpp.
|
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().
parent | You should set this parent on the created widget. |
Implements QgsWidgetWrapper.
Definition at line 51 of file qgsrelationaggregatesearchwidgetwrapper.cpp.
|
override |
Definition at line 86 of file qgsrelationaggregatesearchwidgetwrapper.cpp.
|
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.
Implements QgsSearchWidgetWrapper.
Definition at line 33 of file qgsrelationaggregatesearchwidgetwrapper.cpp.
|
overridevirtual |
Set the expression which is currently used as filter for this widget.
Implements QgsSearchWidgetWrapper.
Definition at line 80 of file qgsrelationaggregatesearchwidgetwrapper.cpp.
|
overridevirtual |
Returns 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.
Implements QgsWidgetWrapper.
Definition at line 46 of file qgsrelationaggregatesearchwidgetwrapper.cpp.