@@ -186,7 +186,7 @@ QgsRasterLayerProperties::QgsRasterLayerProperties( QgsMapLayer* lyr, QgsMapCanv
186
186
tabBar->setCurrentIndex ( settings.value ( " /Windows/RasterLayerProperties/row" ).toInt () );
187
187
188
188
setWindowTitle ( tr ( " Layer Properties - %1" ).arg ( lyr->name () ) );
189
- int myHistogramTab = 6 ;
189
+ int myHistogramTab = 5 ;
190
190
if ( tabBar->currentIndex () == myHistogramTab )
191
191
{
192
192
refreshHistogram ();
@@ -324,11 +324,8 @@ void QgsRasterLayerProperties::populateTransparencyTable()
324
324
{
325
325
return ;
326
326
}
327
+
327
328
const QgsRasterTransparency* rasterTransparency = renderer->rasterTransparency ();
328
- if ( !rasterTransparency )
329
- {
330
- return ;
331
- }
332
329
333
330
// Clear existing color transparency list
334
331
// NOTE: May want to just tableTransparency->clearContents() and fill back in after checking to be sure list and table are the same size
@@ -349,19 +346,22 @@ void QgsRasterLayerProperties::populateTransparencyTable()
349
346
350
347
351
348
// populate three band transparency list
352
- QList<QgsRasterTransparency::TransparentThreeValuePixel> myTransparentThreeValuePixelList = rasterTransparency->transparentThreeValuePixelList ();
353
- for ( int myListRunner = 0 ; myListRunner < myTransparentThreeValuePixelList.count (); myListRunner++ )
349
+ if ( rasterTransparency )
354
350
{
355
- tableTransparency->insertRow ( myListRunner );
356
- QTableWidgetItem* myRedItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentThreeValuePixelList[myListRunner].red ) );
357
- QTableWidgetItem* myGreenItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentThreeValuePixelList[myListRunner].green ) );
358
- QTableWidgetItem* myBlueItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentThreeValuePixelList[myListRunner].blue ) );
359
- QTableWidgetItem* myPercentTransparentItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentThreeValuePixelList[myListRunner].percentTransparent ) );
360
-
361
- tableTransparency->setItem ( myListRunner, 0 , myRedItem );
362
- tableTransparency->setItem ( myListRunner, 1 , myGreenItem );
363
- tableTransparency->setItem ( myListRunner, 2 , myBlueItem );
364
- tableTransparency->setItem ( myListRunner, 3 , myPercentTransparentItem );
351
+ QList<QgsRasterTransparency::TransparentThreeValuePixel> myTransparentThreeValuePixelList = rasterTransparency->transparentThreeValuePixelList ();
352
+ for ( int myListRunner = 0 ; myListRunner < myTransparentThreeValuePixelList.count (); myListRunner++ )
353
+ {
354
+ tableTransparency->insertRow ( myListRunner );
355
+ QTableWidgetItem* myRedItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentThreeValuePixelList[myListRunner].red ) );
356
+ QTableWidgetItem* myGreenItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentThreeValuePixelList[myListRunner].green ) );
357
+ QTableWidgetItem* myBlueItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentThreeValuePixelList[myListRunner].blue ) );
358
+ QTableWidgetItem* myPercentTransparentItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentThreeValuePixelList[myListRunner].percentTransparent ) );
359
+
360
+ tableTransparency->setItem ( myListRunner, 0 , myRedItem );
361
+ tableTransparency->setItem ( myListRunner, 1 , myGreenItem );
362
+ tableTransparency->setItem ( myListRunner, 2 , myBlueItem );
363
+ tableTransparency->setItem ( myListRunner, 3 , myPercentTransparentItem );
364
+ }
365
365
}
366
366
}
367
367
else if ( mRasterLayer ->bandCount () == 1 )
@@ -388,15 +388,18 @@ void QgsRasterLayerProperties::populateTransparencyTable()
388
388
tableTransparency->setHorizontalHeaderItem ( 1 , new QTableWidgetItem ( tr ( " Percent Transparent" ) ) );
389
389
390
390
// populate gray transparency list
391
- QList<QgsRasterTransparency::TransparentSingleValuePixel> myTransparentSingleValuePixelList = rasterTransparency->transparentSingleValuePixelList ();
392
- for ( int myListRunner = 0 ; myListRunner < myTransparentSingleValuePixelList.count (); myListRunner++ )
391
+ if ( rasterTransparency )
393
392
{
394
- tableTransparency->insertRow ( myListRunner );
395
- QTableWidgetItem* myGrayItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %g" , myTransparentSingleValuePixelList[myListRunner].pixelValue ) );
396
- QTableWidgetItem* myPercentTransparentItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentSingleValuePixelList[myListRunner].percentTransparent ) );
393
+ QList<QgsRasterTransparency::TransparentSingleValuePixel> myTransparentSingleValuePixelList = rasterTransparency->transparentSingleValuePixelList ();
394
+ for ( int myListRunner = 0 ; myListRunner < myTransparentSingleValuePixelList.count (); myListRunner++ )
395
+ {
396
+ tableTransparency->insertRow ( myListRunner );
397
+ QTableWidgetItem* myGrayItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %g" , myTransparentSingleValuePixelList[myListRunner].pixelValue ) );
398
+ QTableWidgetItem* myPercentTransparentItem = new QTableWidgetItem ( myNumberFormatter.sprintf ( " %.2f" , myTransparentSingleValuePixelList[myListRunner].percentTransparent ) );
397
399
398
- tableTransparency->setItem ( myListRunner, 0 , myGrayItem );
399
- tableTransparency->setItem ( myListRunner, 1 , myPercentTransparentItem );
400
+ tableTransparency->setItem ( myListRunner, 0 , myGrayItem );
401
+ tableTransparency->setItem ( myListRunner, 1 , myPercentTransparentItem );
402
+ }
400
403
}
401
404
}
402
405
@@ -471,17 +474,18 @@ void QgsRasterLayerProperties::sync()
471
474
sliderTransparency->setValue (( 1.0 - renderer->opacity () ) * 255 );
472
475
// update the transparency percentage label
473
476
sliderTransparency_valueChanged (( 1.0 - renderer->opacity () ) * 255 );
474
- }
475
477
476
- int myIndex = cboxTransparencyBand->findText ( mRasterLayer ->transparentBandName () );
477
- if ( -1 != myIndex )
478
- {
479
- cboxTransparencyBand->setCurrentIndex ( myIndex );
480
- }
481
- else
482
- {
483
- cboxTransparencyBand->setCurrentIndex ( cboxTransparencyBand->findText ( TRSTRING_NOT_SET ) );
478
+ int myIndex = renderer->alphaBand ();
479
+ if ( -1 != myIndex )
480
+ {
481
+ cboxTransparencyBand->setCurrentIndex ( myIndex );
482
+ }
483
+ else
484
+ {
485
+ cboxTransparencyBand->setCurrentIndex ( cboxTransparencyBand->findText ( TRSTRING_NOT_SET ) );
486
+ }
484
487
}
488
+
485
489
// add current NoDataValue to NoDataValue line edit
486
490
if ( mRasterLayer ->isNoDataValueValid () )
487
491
{
@@ -543,12 +547,12 @@ void QgsRasterLayerProperties::sync()
543
547
pixmapThumbnail->setPixmap ( myQPixmap );
544
548
545
549
// update the legend pixmap on this dialog
546
- pixmapLegend->setPixmap ( mRasterLayer ->legendAsPixmap () );
550
+ // pixmapLegend->setPixmap( mRasterLayer->legendAsPixmap() );
547
551
pixmapLegend->setScaledContents ( true );
548
552
pixmapLegend->repaint ();
549
553
550
554
// set the palette pixmap
551
- pixmapPalette->setPixmap ( mRasterLayer ->paletteAsPixmap ( mRasterLayer ->bandNumber ( mRasterLayer ->grayBandName () ) ) );
555
+ // pixmapPalette->setPixmap( mRasterLayer->paletteAsPixmap( mRasterLayer->bandNumber( mRasterLayer->grayBandName() ) ) );
552
556
pixmapPalette->setScaledContents ( true );
553
557
pixmapPalette->repaint ();
554
558
@@ -581,18 +585,6 @@ void QgsRasterLayerProperties::apply()
581
585
// set whether the layer histogram should be inverted
582
586
// mRasterLayer->setInvertHistogram( cboxInvertColorMap->isChecked() );
583
587
584
- // now set the color -> band mapping combos to the correct values
585
- mRasterLayer ->setTransparentBandName ( cboxTransparencyBand->currentText () );
586
-
587
- QSettings myQSettings;
588
- myQSettings.setValue ( " /Raster/defaultRedBand" , mDefaultRedBand );
589
- myQSettings.setValue ( " /Raster/defaultGreenBand" , mDefaultGreenBand );
590
- myQSettings.setValue ( " /Raster/defaultBlueBand" , mDefaultBlueBand );
591
-
592
- myQSettings.setValue ( " /Raster/defaultContrastEnhancementAlgorithm" , mDefaultContrastEnhancementAlgorithm );
593
-
594
- myQSettings.setValue ( " /Raster/defaultStandardDeviation" , mDefaultStandardDeviation );
595
-
596
588
QgsDebugMsg ( " processing transparency tab" );
597
589
/*
598
590
* Transparent Pixel Tab
@@ -1111,7 +1103,7 @@ void QgsRasterLayerProperties::on_pbnExportTransparentPixelValues_clicked()
1111
1103
1112
1104
void QgsRasterLayerProperties::on_tabBar_currentChanged ( int theTab )
1113
1105
{
1114
- int myHistogramTab = 6 ;
1106
+ int myHistogramTab = 5 ;
1115
1107
if ( theTab == myHistogramTab )
1116
1108
{
1117
1109
refreshHistogram ();
@@ -1361,6 +1353,7 @@ void QgsRasterLayerProperties::on_pbnRemoveSelectedRow_clicked()
1361
1353
1362
1354
void QgsRasterLayerProperties::pixelSelected ( const QgsPoint& canvasPoint )
1363
1355
{
1356
+ #if 0 //needs to be fixed
1364
1357
//PixelSelectorTool has registered a mouse click on the canvas, so bring the dialog back to the front
1365
1358
raise();
1366
1359
setModal( true );
@@ -1395,7 +1388,7 @@ void QgsRasterLayerProperties::pixelSelected( const QgsPoint& canvasPoint )
1395
1388
}
1396
1389
}
1397
1390
}
1398
-
1391
+ # endif // 0
1399
1392
}
1400
1393
1401
1394
void QgsRasterLayerProperties::sliderTransparency_valueChanged ( int theValue )
0 commit comments