@@ -101,23 +101,9 @@ QgsVectorLayerProperties::QgsVectorLayerProperties(
101
101
actionDialog = new QgsAttributeActionDialog ( layer->actions (), fields, actionOptionsFrame );
102
102
actionLayout->addWidget ( actionDialog );
103
103
104
- tblAttributes->setColumnCount ( 8 );
105
- tblAttributes->setRowCount ( fields.size () );
106
- tblAttributes->setHorizontalHeaderItem ( 0 , new QTableWidgetItem ( tr ( " id" ) ) );
107
- tblAttributes->setHorizontalHeaderItem ( 1 , new QTableWidgetItem ( tr ( " name" ) ) );
108
- tblAttributes->setHorizontalHeaderItem ( 2 , new QTableWidgetItem ( tr ( " type" ) ) );
109
- tblAttributes->setHorizontalHeaderItem ( 3 , new QTableWidgetItem ( tr ( " length" ) ) );
110
- tblAttributes->setHorizontalHeaderItem ( 4 , new QTableWidgetItem ( tr ( " precision" ) ) );
111
- tblAttributes->setHorizontalHeaderItem ( 5 , new QTableWidgetItem ( tr ( " comment" ) ) );
112
- tblAttributes->setHorizontalHeaderItem ( 6 , new QTableWidgetItem ( tr ( " edit widget" ) ) );
113
- tblAttributes->setHorizontalHeaderItem ( 7 , new QTableWidgetItem ( tr ( " values" ) ) );
114
-
115
- tblAttributes->setSelectionBehavior ( QAbstractItemView::SelectRows );
116
- tblAttributes->setSelectionMode ( QAbstractItemView::MultiSelection );
117
-
118
- loadRows ();
119
104
120
105
reset ();
106
+
121
107
if ( layer->dataProvider () )// enable spatial index button group if supported by provider
122
108
{
123
109
int capabilities = layer->dataProvider ()->capabilities ();
@@ -141,6 +127,22 @@ void QgsVectorLayerProperties::loadRows()
141
127
{
142
128
const QgsFieldMap &fields = layer->pendingFields ();
143
129
130
+ tblAttributes->clear ();
131
+
132
+ tblAttributes->setColumnCount ( 8 );
133
+ tblAttributes->setRowCount ( fields.size () );
134
+ tblAttributes->setHorizontalHeaderItem ( 0 , new QTableWidgetItem ( tr ( " id" ) ) );
135
+ tblAttributes->setHorizontalHeaderItem ( 1 , new QTableWidgetItem ( tr ( " name" ) ) );
136
+ tblAttributes->setHorizontalHeaderItem ( 2 , new QTableWidgetItem ( tr ( " type" ) ) );
137
+ tblAttributes->setHorizontalHeaderItem ( 3 , new QTableWidgetItem ( tr ( " length" ) ) );
138
+ tblAttributes->setHorizontalHeaderItem ( 4 , new QTableWidgetItem ( tr ( " precision" ) ) );
139
+ tblAttributes->setHorizontalHeaderItem ( 5 , new QTableWidgetItem ( tr ( " comment" ) ) );
140
+ tblAttributes->setHorizontalHeaderItem ( 6 , new QTableWidgetItem ( tr ( " edit widget" ) ) );
141
+ tblAttributes->setHorizontalHeaderItem ( 7 , new QTableWidgetItem ( tr ( " values" ) ) );
142
+
143
+ tblAttributes->setSelectionBehavior ( QAbstractItemView::SelectRows );
144
+ tblAttributes->setSelectionMode ( QAbstractItemView::MultiSelection );
145
+
144
146
int row = 0 ;
145
147
for ( QgsFieldMap::const_iterator it = fields.begin (); it != fields.end (); it++, row++ )
146
148
setRow ( row, it.key (), it.value () );
@@ -450,6 +452,7 @@ void QgsVectorLayerProperties::reset( void )
450
452
// update the transparency percentage label
451
453
sliderTransparency_valueChanged ( 255 - layer->getTransparency () );
452
454
455
+ loadRows ();
453
456
} // reset()
454
457
455
458
0 commit comments