QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
Public Member Functions | List of all members
QgsRelationAggregateSearchWidgetWrapper Class Reference

Search widget for the children of a relation. More...

#include <qgsrelationaggregatesearchwidgetwrapper.h>

Inheritance diagram for QgsRelationAggregateSearchWidgetWrapper:
Inheritance graph
[legend]

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 bool applyDirectly ()=0
 If this is true, then this search widget should take effect directly when its expression changes. 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...
 
virtual QString expression () const =0
 Will be used to access the widget's value. More...
 
int fieldIndex () const
 Returns the field index. 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...
 
QVariantMap config () const
 Returns the whole config. More...
 
QVariant config (const QString &key, const QVariant &defaultVal=QVariant()) const
 Use this inside your overridden classes to access the configuration. 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
 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...
 
virtual bool valid () const =0
 Returns 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. 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...
 
typedef QFlags< FilterFlagFilterFlags
 
- Public Types inherited from QgsWidgetWrapper
enum class  Property : int { RootPath = 0 , DocumentViewerContent , StorageUrl }
 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::FilterFlagexclusiveFilterFlags ()
 Returns a list of exclusive filter flags, which cannot be combined with other flags (e.g., EqualTo/NotEqualTo) More...
 
static QList< QgsSearchWidgetWrapper::FilterFlagnonExclusiveFilterFlags ()
 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 QgsWidgetWrapperfromWidget (QWidget *widget)
 Will return a wrapper for a given widget. More...
 
static const QgsPropertiesDefinitionpropertyDefinitions ()
 Returns the editor widget property definitions. More...
 
- Protected Slots inherited from QgsSearchWidgetWrapper
virtual void setExpression (const QString &expression)=0
 Set the expression which is currently used as filter for this widget. More...
 
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 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 Attributes inherited from QgsSearchWidgetWrapper
QString mExpression
 
int mFieldIdx
 
- Protected Attributes inherited from QgsWidgetWrapper
QgsPropertyCollection mPropertyCollection
 Data defined property collection. More...
 

Detailed Description

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 34 of file qgsrelationaggregatesearchwidgetwrapper.h.

Constructor & Destructor Documentation

◆ QgsRelationAggregateSearchWidgetWrapper()

QgsRelationAggregateSearchWidgetWrapper::QgsRelationAggregateSearchWidgetWrapper ( QgsVectorLayer layer,
QgsRelationWidgetWrapper wrapper,
QWidget *parent  SIP_TRANSFERTHIS = nullptr 
)
explicit

Constructor.

Definition at line 26 of file qgsrelationaggregatesearchwidgetwrapper.cpp.

Member Function Documentation

◆ applyDirectly()

bool QgsRelationAggregateSearchWidgetWrapper::applyDirectly ( )
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.

◆ createWidget()

QWidget * QgsRelationAggregateSearchWidgetWrapper::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 51 of file qgsrelationaggregatesearchwidgetwrapper.cpp.

◆ eventFilter()

bool QgsRelationAggregateSearchWidgetWrapper::eventFilter ( QObject *  watched,
QEvent *  event 
)
override

Definition at line 86 of file qgsrelationaggregatesearchwidgetwrapper.cpp.

◆ expression()

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

Definition at line 33 of file qgsrelationaggregatesearchwidgetwrapper.cpp.

◆ setExpression()

void QgsRelationAggregateSearchWidgetWrapper::setExpression ( const QString &  expression)
overridevirtual

Set the expression which is currently used as filter for this widget.

Implements QgsSearchWidgetWrapper.

Definition at line 80 of file qgsrelationaggregatesearchwidgetwrapper.cpp.

◆ valid()

bool QgsRelationAggregateSearchWidgetWrapper::valid ( ) const
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.

Returns
Validity status of this widget.

Implements QgsWidgetWrapper.

Definition at line 46 of file qgsrelationaggregatesearchwidgetwrapper.cpp.


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