@@ -344,61 +344,74 @@ void QgsAttributeTypeDialog::setIndex( int index, int editTypeInt )
344
344
// setPageForIndex( index );
345
345
setPageForEditType ( editType );
346
346
347
- if ( editType == QgsVectorLayer::ValueMap )
347
+ switch ( editType )
348
348
{
349
-
350
- tableWidget->clearContents ();
351
- for ( int i = tableWidget->rowCount () - 1 ; i > 0 ; i-- )
349
+ case QgsVectorLayer::ValueMap:
352
350
{
353
- tableWidget->removeRow ( i );
354
- }
355
351
356
- // if some value map already present use it
357
- QMap<QString, QVariant> map;
358
- if ( !mValueMap .empty () )
359
- {
360
- map = mValueMap ;
361
- }
362
- else
363
- {
364
- map = mLayer ->valueMap ( index );
365
- }
352
+ tableWidget->clearContents ();
353
+ for ( int i = tableWidget->rowCount () - 1 ; i > 0 ; i-- )
354
+ {
355
+ tableWidget->removeRow ( i );
356
+ }
366
357
367
- int row = 0 ;
368
- for ( QMap<QString, QVariant>::iterator mit = map.begin (); mit != map.end (); mit++, row++ )
369
- {
370
- tableWidget->insertRow ( row );
371
- if ( mit.value ().isNull () )
358
+ // if some value map already present use it
359
+ QMap<QString, QVariant> map;
360
+ if ( !mValueMap .empty () )
372
361
{
373
- tableWidget-> setItem ( row, 0 , new QTableWidgetItem ( mit. key () ) ) ;
362
+ map = mValueMap ;
374
363
}
375
364
else
376
365
{
377
- tableWidget->setItem ( row, 0 , new QTableWidgetItem ( mit.value ().toString () ) );
378
- tableWidget->setItem ( row, 1 , new QTableWidgetItem ( mit.key () ) );
366
+ map = mLayer ->valueMap ( index );
367
+ }
368
+
369
+ int row = 0 ;
370
+ for ( QMap<QString, QVariant>::iterator mit = map.begin (); mit != map.end (); mit++, row++ )
371
+ {
372
+ tableWidget->insertRow ( row );
373
+ if ( mit.value ().isNull () )
374
+ {
375
+ tableWidget->setItem ( row, 0 , new QTableWidgetItem ( mit.key () ) );
376
+ }
377
+ else
378
+ {
379
+ tableWidget->setItem ( row, 0 , new QTableWidgetItem ( mit.value ().toString () ) );
380
+ tableWidget->setItem ( row, 1 , new QTableWidgetItem ( mit.key () ) );
381
+ }
379
382
}
380
- }
381
383
382
- }
383
- else if ( editType == QgsVectorLayer::EditRange ||
384
- editType == QgsVectorLayer::SliderRange )
385
- {
386
- if ( mLayer ->pendingFields ()[mIndex ].type () != QVariant::Int )
387
- {
388
- minimumSpinBox->setValue ( mLayer ->range ( index ).mMin .toInt () );
389
- maximumSpinBox->setValue ( mLayer ->range ( index ).mMax .toInt () );
390
- stepSpinBox->setValue ( mLayer ->range ( index ).mStep .toInt () );
391
384
}
392
- else if ( mLayer ->pendingFields ()[mIndex ].type () == QVariant::Double )
385
+ break ;
386
+
387
+ case QgsVectorLayer::EditRange:
388
+ case QgsVectorLayer::SliderRange:
393
389
{
394
- minimumDoubleSpinBox->setValue ( mLayer ->range ( index ).mMin .toDouble () );
395
- maximumDoubleSpinBox->setValue ( mLayer ->range ( index ).mMax .toDouble () );
396
- stepDoubleSpinBox->setValue ( mLayer ->range ( index ).mStep .toDouble () );
390
+ if ( mLayer ->pendingFields ()[mIndex ].type () != QVariant::Int )
391
+ {
392
+ minimumSpinBox->setValue ( mLayer ->range ( index ).mMin .toInt () );
393
+ maximumSpinBox->setValue ( mLayer ->range ( index ).mMax .toInt () );
394
+ stepSpinBox->setValue ( mLayer ->range ( index ).mStep .toInt () );
395
+ }
396
+ else if ( mLayer ->pendingFields ()[mIndex ].type () == QVariant::Double )
397
+ {
398
+ minimumDoubleSpinBox->setValue ( mLayer ->range ( index ).mMin .toDouble () );
399
+ maximumDoubleSpinBox->setValue ( mLayer ->range ( index ).mMax .toDouble () );
400
+ stepDoubleSpinBox->setValue ( mLayer ->range ( index ).mStep .toDouble () );
401
+ }
402
+ if ( editType == QgsVectorLayer::EditRange )
403
+ editableRadioButton->setChecked ( true );
404
+ else // slider range
405
+ sliderRadioButton->setChecked ( true );
397
406
}
398
- if ( editType == QgsVectorLayer::EditRange )
399
- editableRadioButton->setChecked ( true );
400
- else // slider range
401
- sliderRadioButton->setChecked ( true );
407
+ break ;
408
+
409
+ case QgsVectorLayer::UniqueValuesEditable:
410
+ editableUniqueValues->setChecked ( editType == QgsVectorLayer::UniqueValuesEditable );
411
+ break ;
412
+
413
+ default :
414
+ break ;
402
415
}
403
416
}
404
417
0 commit comments