@@ -193,7 +193,7 @@ QgsFieldsProperties::QgsFieldsProperties( QgsVectorLayer *layer, QWidget* parent
193
193
mToggleEditingButton ->setIcon ( QgsApplication::getThemeIcon ( " /mActionToggleEditing.png" ) );
194
194
mCalculateFieldButton ->setIcon ( QgsApplication::getThemeIcon ( " /mActionCalculateField.png" ) );
195
195
196
- connect ( mToggleEditingButton , SIGNAL ( clicked () ), this , SLOT ( toggleEditing () ) );
196
+ connect ( mToggleEditingButton , SIGNAL ( clicked () ), this , SIGNAL ( toggleEditing () ) );
197
197
connect ( mLayer , SIGNAL ( editingStarted () ), this , SLOT ( editingToggled () ) );
198
198
connect ( mLayer , SIGNAL ( editingStopped () ), this , SLOT ( editingToggled () ) );
199
199
connect ( mLayer , SIGNAL ( attributeAdded ( int ) ), this , SLOT ( attributeAdded ( int ) ) );
@@ -242,11 +242,6 @@ void QgsFieldsProperties::onAttributeSelectionChanged()
242
242
mAddItemButton ->setEnabled ( isAddPossible );
243
243
}
244
244
245
- void QgsFieldsProperties::toggleEditing ()
246
- {
247
- emit toggleEditing ( mLayer );
248
- }
249
-
250
245
QTreeWidgetItem *QgsFieldsProperties::loadAttributeEditorTreeItem ( QgsAttributeEditorElement* const widgetDef, QTreeWidgetItem* parent )
251
246
{
252
247
QTreeWidgetItem* newWidget = 0 ;
@@ -303,7 +298,7 @@ void QgsFieldsProperties::loadAttributeEditorTree()
303
298
304
299
void QgsFieldsProperties::loadRows ()
305
300
{
306
- disconnect ( mAttributesList , SIGNAL ( cellChanged ( int , int ) ), this , SLOT ( on_mAttributesList_cellChanged ( int , int ) ) );
301
+ disconnect ( mAttributesList , SIGNAL ( cellChanged ( int , int ) ), this , SLOT ( attributesListCellChanged ( int , int ) ) );
307
302
const QgsFieldMap &fields = mLayer ->pendingFields ();
308
303
309
304
mAttributesList ->clear ();
@@ -334,7 +329,7 @@ void QgsFieldsProperties::loadRows()
334
329
setRow ( row, it.key (), it.value () );
335
330
336
331
mAttributesList ->resizeColumnsToContents ();
337
- connect ( mAttributesList , SIGNAL ( cellChanged ( int , int ) ), this , SLOT ( on_mAttributesList_cellChanged ( int , int ) ) );
332
+ connect ( mAttributesList , SIGNAL ( cellChanged ( int , int ) ), this , SLOT ( attributesListCellChanged ( int , int ) ) );
338
333
}
339
334
340
335
void QgsFieldsProperties::setRow ( int row, int idx, const QgsField &field )
@@ -474,7 +469,7 @@ void QgsFieldsProperties::on_mMoveUpItem_clicked()
474
469
}
475
470
}
476
471
477
- void QgsFieldsProperties::attributeTypeDialog ( )
472
+ void QgsFieldsProperties::attributeTypeDialog ()
478
473
{
479
474
QPushButton *pb = qobject_cast<QPushButton *>( sender () );
480
475
if ( !pb )
@@ -657,9 +652,12 @@ void QgsFieldsProperties::on_mDeleteAttributeButton_clicked()
657
652
658
653
void QgsFieldsProperties::updateButtons ()
659
654
{
655
+ int cap = mLayer ->dataProvider ()->capabilities ();
656
+
657
+ mToggleEditingButton ->setEnabled (( cap & QgsVectorDataProvider::ChangeAttributeValues ) && !mLayer ->isReadOnly () );
658
+
660
659
if ( mLayer ->isEditable () )
661
660
{
662
- int cap = mLayer ->dataProvider ()->capabilities ();
663
661
mAddAttributeButton ->setEnabled ( cap & QgsVectorDataProvider::AddAttributes );
664
662
mDeleteAttributeButton ->setEnabled ( cap & QgsVectorDataProvider::DeleteAttributes );
665
663
mCalculateFieldButton ->setEnabled ( cap & ( QgsVectorDataProvider::ChangeAttributeValues | QgsVectorDataProvider::AddAttributes ) );
@@ -670,13 +668,12 @@ void QgsFieldsProperties::updateButtons()
670
668
mAddAttributeButton ->setEnabled ( false );
671
669
mDeleteAttributeButton ->setEnabled ( false );
672
670
mToggleEditingButton ->setChecked ( false );
673
- mToggleEditingButton ->setEnabled ( false );
674
671
mCalculateFieldButton ->setEnabled ( false );
675
672
}
676
673
}
677
674
678
675
679
- void QgsFieldsProperties::on_mAttributesList_cellChanged ( int row, int column )
676
+ void QgsFieldsProperties::attributesListCellChanged ( int row, int column )
680
677
{
681
678
if ( column == attrAliasCol && mLayer ) // only consider attribute aliases in this function
682
679
{
0 commit comments