QGIS API Documentation 3.27.0-Master (f261cc1f8b)
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...
 
virtual bool applySizeConstraintsToStack () const
 Returns true if the size constraints and hints for the panel widget should be applied to the parent QgsPanelWidgetStack which this panel is shown in. 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 31 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 128 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 68 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 83 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 78 of file qgsfieldmappingwidget.cpp.

◆ model()

QgsFieldMappingModel * QgsFieldMappingWidget::model ( ) const

Returns the underlying mapping model.

Definition at line 73 of file qgsfieldmappingwidget.cpp.

◆ moveSelectedFieldsDown

bool QgsFieldMappingWidget::moveSelectedFieldsDown ( )
slot

Moves down the currently selected field.

Definition at line 166 of file qgsfieldmappingwidget.cpp.

◆ moveSelectedFieldsUp

bool QgsFieldMappingWidget::moveSelectedFieldsUp ( )
slot

Moves up currently selected field.

Definition at line 150 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 123 of file qgsfieldmappingwidget.cpp.

◆ removeSelectedFields

bool QgsFieldMappingWidget::removeSelectedFields ( )
slot

Removes the currently selected field from the model.

Definition at line 133 of file qgsfieldmappingwidget.cpp.

◆ scrollTo()

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

Scroll the fields view to index.

Definition at line 118 of file qgsfieldmappingwidget.cpp.

◆ selectionModel()

QItemSelectionModel * QgsFieldMappingWidget::selectionModel ( )

Returns the selection model.

Definition at line 93 of file qgsfieldmappingwidget.cpp.

◆ setDestinationEditable()

void QgsFieldMappingWidget::setDestinationEditable ( bool  editable)

Sets the destination fields editable state to editable.

Definition at line 62 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 113 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 88 of file qgsfieldmappingwidget.cpp.

◆ setSourceFields()

void QgsFieldMappingWidget::setSourceFields ( const QgsFields sourceFields)

Set source fields of the underlying mapping model to sourceFields.

Definition at line 98 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 103 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 108 of file qgsfieldmappingwidget.cpp.

Friends And Related Function Documentation

◆ QgsAggregateMappingWidget

friend class QgsAggregateMappingWidget
friend

Definition at line 157 of file qgsfieldmappingwidget.h.


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