Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Use icons on fields properties, disable "editable" where inappropriate
- Loading branch information
Showing
with
21 additions
and
0 deletions.
-
+7
−0
src/app/qgsattributetypedialog.cpp
-
+14
−0
src/app/qgsfieldsproperties.cpp
|
@@ -62,6 +62,13 @@ QgsAttributeTypeDialog::QgsAttributeTypeDialog( QgsVectorLayer *vl , int fieldId |
|
|
+ 2 ); |
|
|
selectionListWidget->setMaximumWidth( selectionListWidget->sizeHintForColumn( 0 ) |
|
|
+ 2 ); |
|
|
|
|
|
if ( vl->pendingFields().fieldOrigin( fieldIdx ) == QgsFields::OriginJoin || |
|
|
vl->pendingFields().fieldOrigin( fieldIdx ) == QgsFields::OriginExpression ) |
|
|
{ |
|
|
isFieldEditableCheckBox->setEnabled( false ); |
|
|
} |
|
|
|
|
|
QSettings settings; |
|
|
restoreGeometry( settings.value( "/Windows/QgsAttributeTypeDialog/geometry" ).toByteArray() ); |
|
|
} |
|
|
|
@@ -212,6 +212,20 @@ void QgsFieldsProperties::setRow( int row, int idx, const QgsField& field ) |
|
|
dataItem->setData( Qt::DisplayRole, idx ); |
|
|
DesignerTreeItemData itemData( DesignerTreeItemData::Field, field.name() ); |
|
|
dataItem->setData( DesignerTreeRole, itemData.asQVariant() ); |
|
|
switch ( mLayer->pendingFields().fieldOrigin( idx ) ) |
|
|
{ |
|
|
case QgsFields::OriginExpression: |
|
|
dataItem->setIcon( QgsApplication::getThemeIcon( "/mIconExpression.svg" ) ); |
|
|
break; |
|
|
|
|
|
case QgsFields::OriginJoin: |
|
|
dataItem->setIcon( QgsApplication::getThemeIcon( "/propertyicons/join.png" ) ); |
|
|
break; |
|
|
|
|
|
default: |
|
|
dataItem->setIcon( QgsApplication::getThemeIcon( "/propertyicons/attributes.png" ) ); |
|
|
break; |
|
|
} |
|
|
mFieldsList->setItem( row, attrIdCol, dataItem ); |
|
|
mIndexedWidgets.insert( idx, mFieldsList->item( row, 0 ) ); |
|
|
mFieldsList->setItem( row, attrNameCol, new QTableWidgetItem( field.name() ) ); |
|
|