QGIS API Documentation 3.41.0-Master (092dc69654e)
|
Shows a search widget on a filter form. More...
#include <qgssearchwidgetwrapper.h>
Public Types | |
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... | |
typedef QFlags< FilterFlag > | FilterFlags |
Public Types inherited from QgsWidgetWrapper | |
enum class | Property : int { RootPath = 0 , DocumentViewerContent , StorageUrl } |
Data defined properties for different editor widgets. More... | |
Public Slots | |
virtual void | clearWidget () |
Clears the widget's current value and resets it back to the default state. | |
void | setEnabled (bool enabled) override |
Toggles whether the search widget is enabled or disabled. | |
Public Slots inherited from QgsWidgetWrapper | |
virtual void | setEnabled (bool enabled) |
Is used to enable or disable the edit functionality of the managed widget. | |
virtual void | setFeature (const QgsFeature &feature)=0 |
Is called when the value of the widget needs to be changed. | |
Signals | |
void | expressionChanged (const QString &exp) |
Emitted whenever the expression changes. | |
void | valueChanged () |
Emitted when a user changes the value of the search widget. | |
void | valueCleared () |
Emitted when a user changes the value of the search widget back to an empty, default state. | |
Signals inherited from QgsWidgetWrapper | |
void | contextChanged () |
Signal when QgsAttributeEditorContext mContext changed. | |
Public Member Functions | |
QgsSearchWidgetWrapper (QgsVectorLayer *vl, int fieldIdx, QWidget *parent=nullptr) | |
Create a new widget wrapper. | |
QString | aggregate () const |
If in AggregateSearch mode, which aggregate should be used to construct the filter expression. | |
virtual bool | applyDirectly ()=0 |
If this is true , then this search widget should take effect directly when its expression changes. | |
virtual QString | createExpression (FilterFlags flags) const |
Creates a filter expression based on the current state of the search widget and the specified filter flags. | |
QString | createFieldIdentifier () const |
Gets a field name or expression to use as field comparison. | |
virtual FilterFlags | defaultFlags () const |
Returns the filter flags which should be set by default for the search widget. | |
virtual QString | expression () const =0 |
Will be used to access the widget's value. | |
int | fieldIndex () const |
Returns the field index. | |
void | setAggregate (const QString &aggregate) |
If in AggregateSearch mode, which aggregate should be used to construct the filter expression. | |
virtual FilterFlags | supportedFlags () const |
Returns filter flags supported by the search widget. | |
Public Member Functions inherited from QgsWidgetWrapper | |
QgsWidgetWrapper (QgsVectorLayer *vl, QWidget *editor=nullptr, QWidget *parent=nullptr) | |
Create a new widget wrapper. | |
QVariantMap | config () const |
Returns the whole config. | |
QVariant | config (const QString &key, const QVariant &defaultVal=QVariant()) const |
Use this inside your overridden classes to access the configuration. | |
const QgsAttributeEditorContext & | context () const |
Returns information about the context in which this widget is shown. | |
QgsPropertyCollection & | dataDefinedProperties () |
Returns a reference to the editor widget's property collection, used for data defined overrides. | |
const QgsPropertyCollection & | dataDefinedProperties () const |
Returns a reference to the editor widget's property collection, used for data defined overrides. | |
QgsVectorLayer * | layer () const |
Returns the vector layer associated with the widget. | |
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. | |
void | setConfig (const QVariantMap &config) |
Will set the config of this wrapper to the specified config. | |
void | setContext (const QgsAttributeEditorContext &context) |
Set the context in which this widget is shown. | |
void | setDataDefinedProperties (const QgsPropertyCollection &collection) |
Sets the editor widget's property collection, used for data defined overrides. | |
virtual bool | valid () const =0 |
Returns true if the widget has been properly initialized. | |
QWidget * | widget () |
Access the widget managed by this wrapper. | |
template<class T > | |
T * | widget () |
Access the widget managed by this wrapper and cast it to a given type. | |
Static Public Member Functions | |
static QList< QgsSearchWidgetWrapper::FilterFlag > | exclusiveFilterFlags () |
Returns a list of exclusive filter flags, which cannot be combined with other flags (e.g., EqualTo/NotEqualTo) | |
static QList< QgsSearchWidgetWrapper::FilterFlag > | nonExclusiveFilterFlags () |
Returns a list of non-exclusive filter flags, which can be combined with other flags (e.g., CaseInsensitive) | |
static QString | toString (QgsSearchWidgetWrapper::FilterFlag flag) |
Returns a translated string representing a filter flag. | |
Static Public Member Functions inherited from QgsWidgetWrapper | |
static QgsWidgetWrapper * | fromWidget (QWidget *widget) |
Will return a wrapper for a given widget. | |
static const QgsPropertiesDefinition & | propertyDefinitions () |
Returns the editor widget property definitions. | |
Protected Slots | |
virtual void | setExpression (const QString &expression)=0 |
Set the expression which is currently used as filter for this widget. | |
void | setFeature (const QgsFeature &feature) override |
Protected Member Functions | |
void | clearExpression () |
clears the expression to search for all features | |
Protected Member Functions inherited from QgsWidgetWrapper | |
virtual QWidget * | createWidget (QWidget *parent)=0 |
This method should create a new widget with the provided parent. | |
virtual void | initWidget (QWidget *editor) |
This method should initialize the editor widget with runtime data. | |
Protected Attributes | |
QString | mExpression |
int | mFieldIdx |
Protected Attributes inherited from QgsWidgetWrapper | |
QgsPropertyCollection | mPropertyCollection |
Data defined property collection. | |
Shows a search widget on a filter form.
Definition at line 85 of file qgssearchwidgetwrapper.h.
typedef QFlags< FilterFlag > QgsSearchWidgetWrapper::FilterFlags |
Definition at line 111 of file qgssearchwidgetwrapper.h.
Flags which indicate what types of filtering and searching is possible using the widget.
Definition at line 93 of file qgssearchwidgetwrapper.h.
|
explicit |
Create a new widget wrapper.
vl | The layer on which the field is |
fieldIdx | The field which will be controlled |
parent | A parent widget for this widget wrapper and the created widget. |
Definition at line 88 of file qgssearchwidgetwrapper.cpp.
QString QgsSearchWidgetWrapper::aggregate | ( | ) | const |
If in AggregateSearch mode, which aggregate should be used to construct the filter expression.
Is a Null String if none.
Definition at line 124 of file qgssearchwidgetwrapper.cpp.
|
pure virtual |
If this is true
, then this search widget should take effect directly when its expression changes.
Implemented in QgsCheckboxSearchWidgetWrapper, QgsDateTimeSearchWidgetWrapper, QgsDefaultSearchWidgetWrapper, QgsRelationAggregateSearchWidgetWrapper, QgsRelationReferenceSearchWidgetWrapper, QgsTextEditSearchWidgetWrapper, QgsValueMapSearchWidgetWrapper, and QgsValueRelationSearchWidgetWrapper.
|
protected |
clears the expression to search for all features
Definition at line 119 of file qgssearchwidgetwrapper.cpp.
|
inlinevirtualslot |
Clears the widget's current value and resets it back to the default state.
Definition at line 212 of file qgssearchwidgetwrapper.h.
|
inlinevirtual |
Creates a filter expression based on the current state of the search widget and the specified filter flags.
flags | filter flags |
Reimplemented in QgsCheckboxSearchWidgetWrapper, QgsDateTimeSearchWidgetWrapper, QgsDefaultSearchWidgetWrapper, QgsRelationReferenceSearchWidgetWrapper, QgsValueMapSearchWidgetWrapper, and QgsValueRelationSearchWidgetWrapper.
Definition at line 177 of file qgssearchwidgetwrapper.h.
QString QgsSearchWidgetWrapper::createFieldIdentifier | ( | ) | const |
Gets a field name or expression to use as field comparison.
If in SearchMode returns a quoted field identifier. If in AggregateSearchMode returns an appropriate aggregate expression.
Definition at line 105 of file qgssearchwidgetwrapper.cpp.
|
virtual |
Returns the filter flags which should be set by default for the search widget.
Reimplemented in QgsCheckboxSearchWidgetWrapper, QgsDateTimeSearchWidgetWrapper, QgsDefaultSearchWidgetWrapper, QgsRelationReferenceSearchWidgetWrapper, QgsValueMapSearchWidgetWrapper, and QgsValueRelationSearchWidgetWrapper.
Definition at line 100 of file qgssearchwidgetwrapper.cpp.
|
static |
Returns a list of exclusive filter flags, which cannot be combined with other flags (e.g., EqualTo/NotEqualTo)
Definition at line 25 of file qgssearchwidgetwrapper.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 QgsCheckboxSearchWidgetWrapper, QgsDateTimeSearchWidgetWrapper, QgsDefaultSearchWidgetWrapper, QgsRelationAggregateSearchWidgetWrapper, QgsRelationReferenceSearchWidgetWrapper, QgsValueMapSearchWidgetWrapper, and QgsValueRelationSearchWidgetWrapper.
|
signal |
Emitted whenever the expression changes.
exp | The new search expression |
int QgsSearchWidgetWrapper::fieldIndex | ( | ) | const |
|
static |
Returns a list of non-exclusive filter flags, which can be combined with other flags (e.g., CaseInsensitive)
Definition at line 44 of file qgssearchwidgetwrapper.cpp.
void QgsSearchWidgetWrapper::setAggregate | ( | const QString & | aggregate | ) |
If in AggregateSearch mode, which aggregate should be used to construct the filter expression.
Is a Null String if none.
Definition at line 129 of file qgssearchwidgetwrapper.cpp.
|
inlineoverrideslot |
Toggles whether the search widget is enabled or disabled.
enabled | set to true to enable widget |
Definition at line 218 of file qgssearchwidgetwrapper.h.
|
protectedpure virtualslot |
Set the expression which is currently used as filter for this widget.
Implemented in QgsRelationAggregateSearchWidgetWrapper.
|
overrideprotectedslot |
Definition at line 114 of file qgssearchwidgetwrapper.cpp.
|
virtual |
Returns filter flags supported by the search widget.
Reimplemented in QgsCheckboxSearchWidgetWrapper, QgsDateTimeSearchWidgetWrapper, QgsDefaultSearchWidgetWrapper, QgsRelationReferenceSearchWidgetWrapper, QgsValueMapSearchWidgetWrapper, and QgsValueRelationSearchWidgetWrapper.
Definition at line 95 of file qgssearchwidgetwrapper.cpp.
|
static |
Returns a translated string representing a filter flag.
flag | flag to convert to string |
Definition at line 50 of file qgssearchwidgetwrapper.cpp.
|
signal |
Emitted when a user changes the value of the search widget.
|
signal |
Emitted when a user changes the value of the search widget back to an empty, default state.
|
protected |
Definition at line 252 of file qgssearchwidgetwrapper.h.
|
protected |
Definition at line 253 of file qgssearchwidgetwrapper.h.