[QGIS Commit] r11828 - trunk/qgis/src/app
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Thu Oct 22 08:24:36 EDT 2009
Author: wonder
Date: 2009-10-22 08:24:36 -0400 (Thu, 22 Oct 2009)
New Revision: 11828
Modified:
trunk/qgis/src/app/qgsfieldcalculator.cpp
trunk/qgis/src/app/qgsvectorlayerproperties.cpp
Log:
Allow field calculator also for layers where adding new fields is not possible (user will have to use one of the existing fields)
Modified: trunk/qgis/src/app/qgsfieldcalculator.cpp
===================================================================
--- trunk/qgis/src/app/qgsfieldcalculator.cpp 2009-10-22 11:34:42 UTC (rev 11827)
+++ trunk/qgis/src/app/qgsfieldcalculator.cpp 2009-10-22 12:24:36 UTC (rev 11828)
@@ -35,6 +35,14 @@
//disable ok button until there is text for output field and expression
mButtonBox->button( QDialogButtonBox::Ok )->setEnabled( false );
+
+ // disable creation of new fields if not supported by data provider
+ if ( !( vl->dataProvider()->capabilities() & QgsVectorDataProvider::AddAttributes ) )
+ {
+ mUpdateExistingFieldCheckBox->setEnabled( false ); // must stay checked
+ mNewFieldGroupBox->setEnabled( false );
+ mNewFieldGroupBox->setTitle( mNewFieldGroupBox->title() + tr( " (not supported by provider)" ) );
+ }
}
QgsFieldCalculator::~QgsFieldCalculator()
Modified: trunk/qgis/src/app/qgsvectorlayerproperties.cpp
===================================================================
--- trunk/qgis/src/app/qgsvectorlayerproperties.cpp 2009-10-22 11:34:42 UTC (rev 11827)
+++ trunk/qgis/src/app/qgsvectorlayerproperties.cpp 2009-10-22 12:24:36 UTC (rev 11828)
@@ -355,7 +355,7 @@
int cap = layer->dataProvider()->capabilities();
mAddAttributeButton->setEnabled( cap & QgsVectorDataProvider::AddAttributes );
mDeleteAttributeButton->setEnabled( cap & QgsVectorDataProvider::DeleteAttributes );
- mCalculateFieldButton->setEnabled(( cap & QgsVectorDataProvider::AddAttributes ) && ( cap & QgsVectorDataProvider::ChangeAttributeValues ) );
+ mCalculateFieldButton->setEnabled( cap & QgsVectorDataProvider::ChangeAttributeValues );
mToggleEditingButton->setChecked( true );
}
else
More information about the QGIS-commit
mailing list