16#ifndef QGSFIELDMAPPINGMODEL_H 
   17#define QGSFIELDMAPPINGMODEL_H 
   19#include <QAbstractTableModel> 
   20#include <QStyledItemDelegate> 
   57      DestinationConstraints, 
 
   86                          const QMap<QString, QString> &expressions = QMap<QString, QString>(),
 
   87                          QObject *parent = 
nullptr );
 
   90    bool destinationEditable() 
const;
 
   93    void setDestinationEditable( 
bool editable );
 
   99    Q_DECL_DEPRECATED 
static const QMap<QVariant::Type, QString> dataTypes();
 
  105    static const QList<QgsVectorDataProvider::NativeType> supportedDataTypes();
 
  111    QList<QgsFieldMappingModel::Field> mapping() 
const;
 
  119    QMap< QString, QgsProperty > fieldPropertyMap() 
const;
 
  126    void setFieldPropertyMap( 
const QMap< QString, QgsProperty > &map );
 
  129    void appendField( 
const QgsField &
field, 
const QString &expression = QString() );
 
  132    bool removeField( 
const QModelIndex &index );
 
  135    bool moveUp( 
const QModelIndex &index );
 
  138    bool moveDown( 
const QModelIndex &index );
 
  141    void setSourceFields( 
const QgsFields &sourceFields );
 
  157    void setDestinationFields( 
const QgsFields &destinationFields,
 
  158                               const QMap<QString, QString> &expressions = QMap<QString, QString>() );
 
  162    int rowCount( 
const QModelIndex &parent = QModelIndex() ) 
const override;
 
  163    int columnCount( 
const QModelIndex &parent = QModelIndex() ) 
const override;
 
  164    QVariant data( 
const QModelIndex &index, 
int role ) 
const override;
 
  165    QVariant headerData( 
int section, Qt::Orientation orientation, 
int role ) 
const override;
 
  166    Qt::ItemFlags flags( 
const QModelIndex &index ) 
const override;
 
  167    bool setData( 
const QModelIndex &index, 
const QVariant &value, 
int role ) 
override;
 
  176        ExpressionContextGenerator( 
const QgsFields &sourceFields );
 
  181        void setSourceFields( 
const QgsFields &fields );
 
  192    QgsFieldConstraints::Constraints fieldConstraints( 
const QgsField &
field ) 
const;
 
  198    static const QString qgsFieldToTypeName( 
const QgsField &
field );
 
  204    static void setFieldTypeFromName( 
QgsField &
field, 
const QString &name );
 
  206    bool moveUpOrDown( 
const QModelIndex &index, 
bool up = 
true );
 
  219    QList<Field> mMapping;
 
  220    bool mDestinationEditable = 
false;
 
  222    std::unique_ptr<ExpressionContextGenerator> mExpressionContextGenerator;
 
The QgsAggregateMappingModel holds mapping information for defining sets of aggregates of fields from...
 
Abstract interface for generating an expression context.
 
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
 
The QgsFieldMappingModel holds mapping information for mapping from one set of QgsFields to another,...
 
ColumnDataIndex
The ColumnDataIndex enum represents the column index for the view.
 
Encapsulate a field in an attribute table or data source.
 
Container of fields for a vector layer.
 
The Field struct holds information about a mapped field.
 
QgsField field
The field in its current status (it might have been renamed)
 
QString expression
The expression for the mapped field from the source fields.
 
QString originalName
The original name of the field.