@@ -186,7 +186,7 @@ QgsRasterLayerProperties::QgsRasterLayerProperties( QgsMapLayer* lyr, QgsMapCanv
186186 tabBar->setCurrentIndex ( settings.value ( " /Windows/RasterLayerProperties/row" ).toInt () );
187187
188188 setWindowTitle ( tr ( " Layer Properties - %1" ).arg ( lyr->name () ) );
189- int myHistogramTab = 6 ;
189+ int myHistogramTab = 5 ;
190190 if ( tabBar->currentIndex () == myHistogramTab )
191191 {
192192 refreshHistogram ();
@@ -324,11 +324,8 @@ void QgsRasterLayerProperties::populateTransparencyTable()
324324 {
325325 return ;
326326 }
327+
327328 const QgsRasterTransparency* rasterTransparency = renderer->rasterTransparency ();
328- if ( !rasterTransparency )
329- {
330- return ;
331- }
332329
333330 // Clear existing color transparency list
334331 // 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()
349346
350347
351348 // populate three band transparency list
352- QList<QgsRasterTransparency::TransparentThreeValuePixel> myTransparentThreeValuePixelList = rasterTransparency->transparentThreeValuePixelList ();
353- for ( int myListRunner = 0 ; myListRunner < myTransparentThreeValuePixelList.count (); myListRunner++ )
349+ if ( rasterTransparency )
354350 {
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+ }
365365 }
366366 }
367367 else if ( mRasterLayer ->bandCount () == 1 )
@@ -388,15 +388,18 @@ void QgsRasterLayerProperties::populateTransparencyTable()
388388 tableTransparency->setHorizontalHeaderItem ( 1 , new QTableWidgetItem ( tr ( " Percent Transparent" ) ) );
389389
390390 // populate gray transparency list
391- QList<QgsRasterTransparency::TransparentSingleValuePixel> myTransparentSingleValuePixelList = rasterTransparency->transparentSingleValuePixelList ();
392- for ( int myListRunner = 0 ; myListRunner < myTransparentSingleValuePixelList.count (); myListRunner++ )
391+ if ( rasterTransparency )
393392 {
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 ) );
397399
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+ }
400403 }
401404 }
402405
@@ -1112,7 +1115,7 @@ void QgsRasterLayerProperties::on_pbnExportTransparentPixelValues_clicked()
11121115
11131116void QgsRasterLayerProperties::on_tabBar_currentChanged ( int theTab )
11141117{
1115- int myHistogramTab = 6 ;
1118+ int myHistogramTab = 5 ;
11161119 if ( theTab == myHistogramTab )
11171120 {
11181121 refreshHistogram ();
0 commit comments