diff --git a/src/core/editform/qgseditformconfig.cpp b/src/core/editform/qgseditformconfig.cpp index 6f97fd7be762..2c5fc7fd6265 100644 --- a/src/core/editform/qgseditformconfig.cpp +++ b/src/core/editform/qgseditformconfig.cpp @@ -235,10 +235,7 @@ bool QgsEditFormConfig::readOnly( int idx ) const { if ( idx >= 0 && idx < d->mFields.count() ) { - if ( d->mFields.fieldOrigin( idx ) == QgsFields::OriginJoin - || d->mFields.fieldOrigin( idx ) == QgsFields::OriginExpression ) - return true; - if ( d->mFields.at( idx ).isReadOnly() ) + if ( d->mFields.isFieldReadOnly( idx ) ) return true; return !d->mFieldEditables.value( d->mFields.at( idx ).name(), true ); } diff --git a/src/gui/attributeformconfig/qgsattributetypedialog.cpp b/src/gui/attributeformconfig/qgsattributetypedialog.cpp index 65b6006d134d..8f740aea666a 100644 --- a/src/gui/attributeformconfig/qgsattributetypedialog.cpp +++ b/src/gui/attributeformconfig/qgsattributetypedialog.cpp @@ -61,9 +61,7 @@ QgsAttributeTypeDialog::QgsAttributeTypeDialog( QgsVectorLayer *vl, int fieldIdx connect( mWidgetTypeComboBox, static_cast< void ( QComboBox::* )( int )>( &QComboBox::currentIndexChanged ), this, &QgsAttributeTypeDialog::onCurrentWidgetChanged ); - if ( vl->fields().fieldOrigin( fieldIdx ) == QgsFields::OriginJoin || - vl->fields().fieldOrigin( fieldIdx ) == QgsFields::OriginExpression || - vl->fields().field( fieldIdx ).isReadOnly() ) + if ( vl->fields().isFieldReadOnly( fieldIdx ) ) { isFieldEditableCheckBox->setEnabled( false ); } diff --git a/src/gui/vector/qgsattributesformproperties.cpp b/src/gui/vector/qgsattributesformproperties.cpp index 55b20d5e7526..2d6e253bbf1e 100644 --- a/src/gui/vector/qgsattributesformproperties.cpp +++ b/src/gui/vector/qgsattributesformproperties.cpp @@ -1082,9 +1082,7 @@ QgsAttributesFormProperties::FieldConfig::FieldConfig( QgsVectorLayer *layer, in mDataDefinedProperties = layer->editFormConfig().dataDefinedFieldProperties( layer->fields().at( idx ).name() ); mComment = layer->fields().at( idx ).comment(); mEditable = !layer->editFormConfig().readOnly( idx ); - mEditableEnabled = layer->fields().fieldOrigin( idx ) != QgsFields::OriginJoin - && layer->fields().fieldOrigin( idx ) != QgsFields::OriginExpression - && !layer->fields().at( idx ).isReadOnly(); + mEditableEnabled = !layer->fields().isFieldReadOnly( idx ); mLabelOnTop = layer->editFormConfig().labelOnTop( idx ); mReuseLastValues = layer->editFormConfig().reuseLastValue( idx ); mFieldConstraints = layer->fields().at( idx ).constraints();