Skip to content

Commit e832b2a

Browse files
committed
Add QgsVectorLayer::fields() as alias to pendingFields()
pendingFields() is not very intuitive and leads to confusion for new developers.
1 parent c27f357 commit e832b2a

File tree

90 files changed

+304
-294
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

90 files changed

+304
-294
lines changed

python/core/qgsvectorlayer.sip

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -807,7 +807,16 @@ class QgsVectorLayer : QgsMapLayer
807807
*
808808
* @return A list of fields
809809
*/
810-
const QgsFields &pendingFields() const;
810+
const QgsFields fields() const;
811+
812+
/**
813+
* Returns the list of fields of this layer.
814+
* This also includes fields which have not yet been saved to the provider.
815+
* Alias for {@link fields()}
816+
*
817+
* @return A list of fields
818+
*/
819+
const QgsFields pendingFields() const;
811820

812821
/** Returns list of attributes */
813822
QList<int> pendingAllAttributesList();

src/analysis/vector/qgsgeometryanalyzer.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ bool QgsGeometryAnalyzer::simplify( QgsVectorLayer* layer,
4747
QGis::WkbType outputType = dp->geometryType();
4848
const QgsCoordinateReferenceSystem crs = layer->crs();
4949

50-
QgsVectorFileWriter vWriter( shapefileName, dp->encoding(), layer->pendingFields(), outputType, &crs );
50+
QgsVectorFileWriter vWriter( shapefileName, dp->encoding(), layer->fields(), outputType, &crs );
5151
QgsFeature currentFeature;
5252

5353
//take only selection
@@ -163,7 +163,7 @@ bool QgsGeometryAnalyzer::centroids( QgsVectorLayer* layer, const QString& shape
163163
QGis::WkbType outputType = QGis::WKBPoint;
164164
const QgsCoordinateReferenceSystem crs = layer->crs();
165165

166-
QgsVectorFileWriter vWriter( shapefileName, dp->encoding(), layer->pendingFields(), outputType, &crs );
166+
QgsVectorFileWriter vWriter( shapefileName, dp->encoding(), layer->fields(), outputType, &crs );
167167
QgsFeature currentFeature;
168168

169169
//take only selection
@@ -622,7 +622,7 @@ bool QgsGeometryAnalyzer::dissolve( QgsVectorLayer* layer, const QString& shapef
622622
QGis::WkbType outputType = dp->geometryType();
623623
const QgsCoordinateReferenceSystem crs = layer->crs();
624624

625-
QgsVectorFileWriter vWriter( shapefileName, dp->encoding(), layer->pendingFields(), outputType, &crs );
625+
QgsVectorFileWriter vWriter( shapefileName, dp->encoding(), layer->fields(), outputType, &crs );
626626
QgsFeature currentFeature;
627627
QMultiMap<QString, QgsFeatureId> map;
628628

@@ -775,7 +775,7 @@ bool QgsGeometryAnalyzer::buffer( QgsVectorLayer* layer, const QString& shapefil
775775
}
776776
const QgsCoordinateReferenceSystem crs = layer->crs();
777777

778-
QgsVectorFileWriter vWriter( shapefileName, dp->encoding(), layer->pendingFields(), outputType, &crs );
778+
QgsVectorFileWriter vWriter( shapefileName, dp->encoding(), layer->fields(), outputType, &crs );
779779
QgsFeature currentFeature;
780780
QgsGeometry *dissolveGeometry = 0; //dissolve geometry (if dissolve enabled)
781781

@@ -946,14 +946,14 @@ bool QgsGeometryAnalyzer::eventLayer( QgsVectorLayer* lineLayer, QgsVectorLayer*
946946
}
947947
fileWriter = new QgsVectorFileWriter( outputLayer,
948948
eventLayer->dataProvider()->encoding(),
949-
eventLayer->pendingFields(),
949+
eventLayer->fields(),
950950
memoryProviderType,
951951
&( lineLayer->crs() ),
952952
outputFormat );
953953
}
954954
else
955955
{
956-
memoryProvider->addAttributes( eventLayer->pendingFields().toList() );
956+
memoryProvider->addAttributes( eventLayer->fields().toList() );
957957
}
958958

959959
//iterate over eventLayer and write new features to output file or layer

src/analysis/vector/qgsoverlayanalyzer.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,8 @@ bool QgsOverlayAnalyzer::intersection( QgsVectorLayer* layerA, QgsVectorLayer* l
4545

4646
QGis::WkbType outputType = dpA->geometryType();
4747
const QgsCoordinateReferenceSystem crs = layerA->crs();
48-
QgsFields fieldsA = layerA->pendingFields();
49-
QgsFields fieldsB = layerB->pendingFields();
48+
QgsFields fieldsA = layerA->fields();
49+
QgsFields fieldsB = layerB->fields();
5050
combineFieldLists( fieldsA, fieldsB );
5151

5252
QgsVectorFileWriter vWriter( shapefileName, dpA->encoding(), fieldsA, outputType, &crs );

src/analysis/vector/qgspointsample.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ int QgsPointSample::createRandomPoints( QProgressDialog* pd )
6767
mNCreatedPoints = 0;
6868

6969
QgsFeatureIterator fIt = mInputLayer->getFeatures( QgsFeatureRequest().setSubsetOfAttributes(
70-
QStringList() << mNumberOfPointsAttribute << mMinDistanceAttribute, mInputLayer->pendingFields() ) );
70+
QStringList() << mNumberOfPointsAttribute << mMinDistanceAttribute, mInputLayer->fields() ) );
7171
while ( fIt.nextFeature( fet ) )
7272
{
7373
nPoints = fet.attribute( mNumberOfPointsAttribute ).toInt();

src/analysis/vector/qgstransectsample.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ int QgsTransectSample::createSample( QProgressDialog* pd )
5555
QVariant::Type stratumIdType = QVariant::Int;
5656
if ( !mStrataIdAttribute.isEmpty() )
5757
{
58-
stratumIdType = mStrataLayer->pendingFields().field( mStrataIdAttribute ).type();
58+
stratumIdType = mStrataLayer->fields().field( mStrataIdAttribute ).type();
5959
}
6060

6161
//create vector file writers for output
@@ -118,7 +118,7 @@ int QgsTransectSample::createSample( QProgressDialog* pd )
118118
mt_srand( QTime::currentTime().msec() );
119119

120120
QgsFeatureRequest fr;
121-
fr.setSubsetOfAttributes( QStringList() << mStrataIdAttribute << mMinDistanceAttribute << mNPointsAttribute, mStrataLayer->pendingFields() );
121+
fr.setSubsetOfAttributes( QStringList() << mStrataIdAttribute << mMinDistanceAttribute << mNPointsAttribute, mStrataLayer->fields() );
122122
QgsFeatureIterator strataIt = mStrataLayer->getFeatures( fr );
123123

124124
QgsFeature fet;
@@ -333,7 +333,7 @@ QgsGeometry* QgsTransectSample::findBaselineGeometry( QVariant strataId )
333333
return 0;
334334
}
335335

336-
QgsFeatureIterator baseLineIt = mBaselineLayer->getFeatures( QgsFeatureRequest().setSubsetOfAttributes( QStringList( mBaselineStrataId ), mBaselineLayer->pendingFields() ) );
336+
QgsFeatureIterator baseLineIt = mBaselineLayer->getFeatures( QgsFeatureRequest().setSubsetOfAttributes( QStringList( mBaselineStrataId ), mBaselineLayer->fields() ) );
337337
QgsFeature fet;
338338

339339
while ( baseLineIt.nextFeature( fet ) ) //todo: cache this in case there are many baslines

src/app/qgisapp.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6275,11 +6275,11 @@ void QgisApp::editPaste( QgsMapLayer *destinationLayer )
62756275
QgsFeatureList features;
62766276
if ( mMapCanvas->mapSettings().hasCrsTransformEnabled() )
62776277
{
6278-
features = clipboard()->transformedCopyOf( pasteVectorLayer->crs(), pasteVectorLayer->pendingFields() );
6278+
features = clipboard()->transformedCopyOf( pasteVectorLayer->crs(), pasteVectorLayer->fields() );
62796279
}
62806280
else
62816281
{
6282-
features = clipboard()->copyOf( pasteVectorLayer->pendingFields() );
6282+
features = clipboard()->copyOf( pasteVectorLayer->fields() );
62836283
}
62846284
int nTotalFeatures = features.count();
62856285

@@ -6295,7 +6295,7 @@ void QgisApp::editPaste( QgsMapLayer *destinationLayer )
62956295
remap.insert( idx, dst );
62966296
}
62976297

6298-
int dstAttrCount = pasteVectorLayer->pendingFields().count();
6298+
int dstAttrCount = pasteVectorLayer->fields().count();
62996299

63006300
QgsFeatureList::iterator featureIt = features.begin();
63016301
while ( featureIt != features.end() )

src/app/qgsattributetabledialog.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ void QgsAttributeTableDialog::columnBoxInit()
307307
mFilterButton->addAction( mActionFilterColumnsMenu );
308308
mFilterButton->addAction( mActionAdvancedFilter );
309309

310-
QList<QgsField> fields = mLayer->pendingFields().toList();
310+
QList<QgsField> fields = mLayer->fields().toList();
311311

312312
foreach ( const QgsField field, fields )
313313
{
@@ -364,7 +364,7 @@ void QgsAttributeTableDialog::runFieldCalculation( QgsVectorLayer* layer, QStrin
364364

365365
int rownum = 1;
366366

367-
const QgsField &fld = layer->pendingFields()[ fieldindex ];
367+
const QgsField &fld = layer->fields()[ fieldindex ];
368368

369369
//go through all the features and change the new attributes
370370
QgsFeatureIterator fit = layer->getFeatures( request );
@@ -762,7 +762,7 @@ void QgsAttributeTableDialog::setFilterExpression( QString filterString )
762762
return;
763763
}
764764

765-
if ( ! filterExpression.prepare( mLayer->pendingFields() ) )
765+
if ( ! filterExpression.prepare( mLayer->fields() ) )
766766
{
767767
QgisApp::instance()->messageBar()->pushMessage( tr( "Evaluation error" ), filterExpression.evalErrorString(), QgsMessageBar::WARNING, QgisApp::instance()->messageTimeout() );
768768
}
@@ -773,7 +773,7 @@ void QgsAttributeTableDialog::setFilterExpression( QString filterString )
773773

774774
filterExpression.setGeomCalculator( myDa );
775775
QgsFeatureRequest request( mMainView->masterModel()->request() );
776-
request.setSubsetOfAttributes( filterExpression.referencedColumns(), mLayer->pendingFields() );
776+
request.setSubsetOfAttributes( filterExpression.referencedColumns(), mLayer->fields() );
777777
if ( !fetchGeom )
778778
{
779779
request.setFlags( QgsFeatureRequest::NoGeometry );

src/app/qgsattributetypedialog.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ QgsAttributeTypeDialog::QgsAttributeTypeDialog( QgsVectorLayer *vl, int fieldIdx
4343
, mFieldIdx( fieldIdx )
4444
{
4545
setupUi( this );
46-
setWindowTitle( tr( "Edit Widget Properties - %1 (%2)" ).arg( vl->pendingFields()[fieldIdx].name() ).arg( vl->name() ) );
46+
setWindowTitle( tr( "Edit Widget Properties - %1 (%2)" ).arg( vl->fields()[fieldIdx].name() ).arg( vl->name() ) );
4747

4848
connect( selectionListWidget, SIGNAL( currentRowChanged( int ) ), this, SLOT( setStackPage( int ) ) );
4949

@@ -65,8 +65,8 @@ QgsAttributeTypeDialog::QgsAttributeTypeDialog( QgsVectorLayer *vl, int fieldIdx
6565
selectionListWidget->setMaximumWidth( selectionListWidget->sizeHintForColumn( 0 )
6666
+ 2 );
6767

68-
if ( vl->pendingFields().fieldOrigin( fieldIdx ) == QgsFields::OriginJoin ||
69-
vl->pendingFields().fieldOrigin( fieldIdx ) == QgsFields::OriginExpression )
68+
if ( vl->fields().fieldOrigin( fieldIdx ) == QgsFields::OriginJoin ||
69+
vl->fields().fieldOrigin( fieldIdx ) == QgsFields::OriginExpression )
7070
{
7171
isFieldEditableCheckBox->setEnabled( false );
7272
}

src/app/qgsclipboard.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ void QgsClipboard::replaceWithCopyOf( QgsVectorLayer *src )
5252
return;
5353

5454
// Replace the QGis clipboard.
55-
mFeatureFields = src->pendingFields();
55+
mFeatureFields = src->fields();
5656
mFeatureClipboard = src->selectedFeatures();
5757
mCRS = src->crs();
5858

src/app/qgsdelattrdialog.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ QgsDelAttrDialog::QgsDelAttrDialog( const QgsVectorLayer* vl )
3131
{
3232
bool canDeleteAttributes = vl->dataProvider()->capabilities() & QgsVectorDataProvider::DeleteAttributes;
3333
listBox2->clear();
34-
const QgsFields& layerAttributes = vl->pendingFields();
34+
const QgsFields& layerAttributes = vl->fields();
3535
for ( int idx = 0; idx < layerAttributes.count(); ++idx )
3636
{
3737
QListWidgetItem* item = new QListWidgetItem( layerAttributes[idx].name(), listBox2 );
38-
switch ( vl->pendingFields().fieldOrigin( idx ) )
38+
switch ( vl->fields().fieldOrigin( idx ) )
3939
{
4040
case QgsFields::OriginExpression:
4141
item->setIcon( QgsApplication::getThemeIcon( "/mIconExpression.svg" ) );

0 commit comments

Comments
 (0)