QGIS API Documentation  3.17.0-Master (a84647cf30)
Classes | Public Slots | Signals | Public Member Functions | Friends | List of all members
QgsFieldMappingWidget Class Reference

The QgsFieldMappingWidget class creates a mapping from one set of QgsFields to another, for each set of "destination" fields an expression defines how to obtain the values of the "destination" fields. More...

#include <qgsfieldmappingwidget.h>

Inheritance diagram for QgsFieldMappingWidget:
Inheritance graph
[legend]

Public Slots

void appendField (const QgsField &field, const QString &expression=QString())
 Appends a new field to the model, with an optional expression. More...
 
bool moveSelectedFieldsDown ()
 Moves down the currently selected field. More...
 
bool moveSelectedFieldsUp ()
 Moves up currently selected field. More...
 
bool removeSelectedFields ()
 Removes the currently selected field from the model. More...
 
- Public Slots inherited from QgsPanelWidget
void acceptPanel ()
 Accept the panel. More...
 
void openPanel (QgsPanelWidget *panel)
 Open a panel or dialog depending on dock mode setting If dock mode is true this method will emit the showPanel signal for connected slots to handle the open event. More...
 

Signals

void changed ()
 Emitted when the fields defined in the widget are changed. More...
 
- Signals inherited from QgsPanelWidget
void panelAccepted (QgsPanelWidget *panel)
 Emitted when the panel is accepted by the user. More...
 
void showPanel (QgsPanelWidget *panel)
 Emit when you require a panel to be show in the interface. More...
 
void widgetChanged ()
 Emitted when the widget state changes. More...
 

Public Member Functions

 QgsFieldMappingWidget (QWidget *parent=nullptr, const QgsFields &sourceFields=QgsFields(), const QgsFields &destinationFields=QgsFields(), const QMap< QString, QString > &expressions=QMap< QString, QString >())
 Constructs a QgsFieldMappingWidget from a set of sourceFields and destinationFields, initial values for the expressions can be optionally specified through expressions which is a map from the original field name to the corresponding expression. More...
 
bool destinationEditable () const
 Returns true if the destination fields are editable in the model. More...
 
QMap< QString, QgsPropertyfieldPropertyMap () const
 Returns a map of destination field name to QgsProperty definition for field value, representing the current status of the widget. More...
 
QList< QgsFieldMappingModel::Fieldmapping () const
 Returns a list of Field objects representing the current status of the underlying mapping model. More...
 
QgsFieldMappingModelmodel () const
 Returns the underlying mapping model. More...
 
void registerExpressionContextGenerator (const QgsExpressionContextGenerator *generator)
 Register an expression context generator class that will be used to retrieve an expression context for the widget. More...
 
void scrollTo (const QModelIndex &index) const
 Scroll the fields view to index. More...
 
QItemSelectionModel * selectionModel ()
 Returns the selection model. More...
 
void setDestinationEditable (bool editable)
 Sets the destination fields editable state to editable. More...
 
void setDestinationFields (const QgsFields &destinationFields, const QMap< QString, QString > &expressions=QMap< QString, QString >())
 Set destination fields to destinationFields in the underlying model, initial values for the expressions can be optionally specified through expressions which is a map from the original field name to the corresponding expression. More...
 
void setFieldPropertyMap (const QMap< QString, QgsProperty > &map)
 Sets a map of destination field name to QgsProperty definition for field value. More...
 
void setSourceFields (const QgsFields &sourceFields)
 Set source fields of the underlying mapping model to sourceFields. More...
 
void setSourceLayer (QgsVectorLayer *layer)
 Sets a source layer to use when generating expression previews in the widget. More...
 
QgsVectorLayersourceLayer ()
 Returns the source layer for use when generating expression previews. More...
 
- Public Member Functions inherited from QgsPanelWidget
 QgsPanelWidget (QWidget *parent=nullptr)
 Base class for any widget that can be shown as a inline panel. More...
 
bool autoDelete ()
 The the auto delete property on the widget. More...
 
void connectChildPanel (QgsPanelWidget *panel)
 Connect the given sub panel widgets showPanel signals to this current panels main showPanel event to bubble up to the user. More...
 
void connectChildPanels (const QList< QgsPanelWidget *> &panels)
 Connect the given sub panel widgets showPanel signals to this current panels main showPanel event to bubble up to the user. More...
 
bool dockMode ()
 Returns the dock mode state. More...
 
virtual QMenu * menuButtonMenu ()
 Returns the menu to use for the menu button for this panel, or nullptr if no menu button is required. More...
 
virtual QString menuButtonTooltip () const
 Returns the (translated) tooltip text to use for the menu button for this panel. More...
 
QString panelTitle ()
 The title of the panel. More...
 
void setAutoDelete (bool autoDelete)
 The the auto delete property on the widget. More...
 
virtual void setDockMode (bool dockMode)
 Set the widget in dock mode which tells the widget to emit panel widgets and not open dialogs. More...
 
void setPanelTitle (const QString &panelTitle)
 Set the title of the panel when shown in the interface. More...
 

Friends

class QgsAggregateMappingWidget
 

Additional Inherited Members

- Static Public Member Functions inherited from QgsPanelWidget
static QgsPanelWidgetfindParentPanel (QWidget *widget)
 Traces through the parents of a widget to find if it is contained within a QgsPanelWidget widget. More...
 
- Protected Member Functions inherited from QgsPanelWidget
void keyPressEvent (QKeyEvent *event) override
 Overridden key press event to handle the esc event on the widget. More...
 

Detailed Description

The QgsFieldMappingWidget class creates a mapping from one set of QgsFields to another, for each set of "destination" fields an expression defines how to obtain the values of the "destination" fields.

Since
QGIS 3.14

Definition at line 39 of file qgsfieldmappingwidget.h.

Constructor & Destructor Documentation

◆ QgsFieldMappingWidget()

QgsFieldMappingWidget::QgsFieldMappingWidget ( QWidget *  parent = nullptr,
const QgsFields sourceFields = QgsFields(),
const QgsFields destinationFields = QgsFields(),
const QMap< QString, QString > &  expressions = QMap<QString, QString>() 
)
explicit

Constructs a QgsFieldMappingWidget from a set of sourceFields and destinationFields, initial values for the expressions can be optionally specified through expressions which is a map from the original field name to the corresponding expression.

A parent object can also be specified.

Definition at line 30 of file qgsfieldmappingwidget.cpp.

Member Function Documentation

◆ appendField

void QgsFieldMappingWidget::appendField ( const QgsField field,
const QString &  expression = QString() 
)
slot

Appends a new field to the model, with an optional expression.

Definition at line 127 of file qgsfieldmappingwidget.cpp.

◆ changed

void QgsFieldMappingWidget::changed ( )
signal

Emitted when the fields defined in the widget are changed.

◆ destinationEditable()

bool QgsFieldMappingWidget::destinationEditable ( ) const

Returns true if the destination fields are editable in the model.

Definition at line 67 of file qgsfieldmappingwidget.cpp.

◆ fieldPropertyMap()

QMap< QString, QgsProperty > QgsFieldMappingWidget::fieldPropertyMap ( ) const

Returns a map of destination field name to QgsProperty definition for field value, representing the current status of the widget.

See also
setFieldPropertyMap()

Definition at line 82 of file qgsfieldmappingwidget.cpp.

◆ mapping()

QList< QgsFieldMappingModel::Field > QgsFieldMappingWidget::mapping ( ) const

Returns a list of Field objects representing the current status of the underlying mapping model.

Definition at line 77 of file qgsfieldmappingwidget.cpp.

◆ model()

QgsFieldMappingModel * QgsFieldMappingWidget::model ( ) const

Returns the underlying mapping model.

Definition at line 72 of file qgsfieldmappingwidget.cpp.

◆ moveSelectedFieldsDown

bool QgsFieldMappingWidget::moveSelectedFieldsDown ( )
slot

Moves down the currently selected field.

Definition at line 165 of file qgsfieldmappingwidget.cpp.

◆ moveSelectedFieldsUp

bool QgsFieldMappingWidget::moveSelectedFieldsUp ( )
slot

Moves up currently selected field.

Definition at line 149 of file qgsfieldmappingwidget.cpp.

◆ registerExpressionContextGenerator()

void QgsFieldMappingWidget::registerExpressionContextGenerator ( const QgsExpressionContextGenerator generator)

Register an expression context generator class that will be used to retrieve an expression context for the widget.

Definition at line 122 of file qgsfieldmappingwidget.cpp.

◆ removeSelectedFields

bool QgsFieldMappingWidget::removeSelectedFields ( )
slot

Removes the currently selected field from the model.

Definition at line 132 of file qgsfieldmappingwidget.cpp.

◆ scrollTo()

void QgsFieldMappingWidget::scrollTo ( const QModelIndex &  index) const

Scroll the fields view to index.

Definition at line 117 of file qgsfieldmappingwidget.cpp.

◆ selectionModel()

QItemSelectionModel * QgsFieldMappingWidget::selectionModel ( )

Returns the selection model.

Definition at line 92 of file qgsfieldmappingwidget.cpp.

◆ setDestinationEditable()

void QgsFieldMappingWidget::setDestinationEditable ( bool  editable)

Sets the destination fields editable state to editable.

Definition at line 61 of file qgsfieldmappingwidget.cpp.

◆ setDestinationFields()

void QgsFieldMappingWidget::setDestinationFields ( const QgsFields destinationFields,
const QMap< QString, QString > &  expressions = QMap<QString, QString>() 
)

Set destination fields to destinationFields in the underlying model, initial values for the expressions can be optionally specified through expressions which is a map from the original field name to the corresponding expression.

Definition at line 112 of file qgsfieldmappingwidget.cpp.

◆ setFieldPropertyMap()

void QgsFieldMappingWidget::setFieldPropertyMap ( const QMap< QString, QgsProperty > &  map)

Sets a map of destination field name to QgsProperty definition for field value.

See also
fieldPropertyMap()

Definition at line 87 of file qgsfieldmappingwidget.cpp.

◆ setSourceFields()

void QgsFieldMappingWidget::setSourceFields ( const QgsFields sourceFields)

Set source fields of the underlying mapping model to sourceFields.

Definition at line 97 of file qgsfieldmappingwidget.cpp.

◆ setSourceLayer()

void QgsFieldMappingWidget::setSourceLayer ( QgsVectorLayer layer)

Sets a source layer to use when generating expression previews in the widget.

Since
QGIS 3.16

Definition at line 102 of file qgsfieldmappingwidget.cpp.

◆ sourceLayer()

QgsVectorLayer * QgsFieldMappingWidget::sourceLayer ( )

Returns the source layer for use when generating expression previews.

Returned value may be nullptr.

Since
QGIS 3.16

Definition at line 107 of file qgsfieldmappingwidget.cpp.

Friends And Related Function Documentation

◆ QgsAggregateMappingWidget

friend class QgsAggregateMappingWidget
friend

Definition at line 183 of file qgsfieldmappingwidget.h.


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