Skip to content

Commit dcc72d2

Browse files
committed
[Fix #7892] Fields properties: Fix sorting by id (numeric)
1 parent 4363198 commit dcc72d2

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/app/qgsfieldsproperties.cpp

+4-3
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ QgsFieldsProperties::QgsFieldsProperties( QgsVectorLayer *layer, QWidget* parent
200200
connect( mAttributesTree, SIGNAL( itemSelectionChanged() ), this, SLOT( onAttributeSelectionChanged() ) );
201201
connect( mAttributesList, SIGNAL( itemSelectionChanged() ), this, SLOT( onAttributeSelectionChanged() ) );
202202

203+
mAttributesList->sortByColumn( 0, Qt::AscendingOrder );
203204
mAttributesTree->setHeaderLabels( QStringList() << tr( "Label" ) );
204205

205206
leEditForm->setText( layer->editForm() );
@@ -315,7 +316,7 @@ void QgsFieldsProperties::loadRows()
315316

316317
void QgsFieldsProperties::setRow( int row, int idx, const QgsField &field )
317318
{
318-
mAttributesList->setItem( row, attrIdCol, new QTableWidgetItem( QString::number( idx ) ) );
319+
mAttributesList->setItem( row, attrIdCol, new QTableWidgetItem( idx ) );
319320
mIndexedWidgets.insert( idx, mAttributesList->item( row, 0 ) );
320321
mAttributesList->setItem( row, attrNameCol, new QTableWidgetItem( field.name() ) );
321322
mAttributesList->setItem( row, attrTypeCol, new QTableWidgetItem( field.typeName() ) );
@@ -553,7 +554,7 @@ void QgsFieldsProperties::attributeAdded( int idx )
553554

554555
for ( int i = idx; i < mIndexedWidgets.count(); i++ )
555556
{
556-
mIndexedWidgets[i]->setText( QString::number( i ) );
557+
mIndexedWidgets[i]->setData( Qt::DisplayRole, i );
557558
}
558559

559560
mAttributesList->setCurrentCell( row, idx );
@@ -567,7 +568,7 @@ void QgsFieldsProperties::attributeDeleted( int idx )
567568
mIndexedWidgets.removeAt( idx );
568569
for ( int i = idx; i < mIndexedWidgets.count(); i++ )
569570
{
570-
mIndexedWidgets[i]->setText( QString::number( i ) );
571+
mIndexedWidgets[i]->setData( Qt::DisplayRole, i );
571572
}
572573
}
573574

0 commit comments

Comments
 (0)