[QGIS Commit] r8398 - in trunk/qgis: python/core src/app src/core/raster src/ui

svn_qgis at osgeo.org svn_qgis at osgeo.org
Mon May 5 23:21:12 EDT 2008


Author: ersts
Date: 2008-05-05 23:21:12 -0400 (Mon, 05 May 2008)
New Revision: 8398

Modified:
   trunk/qgis/python/core/qgsrasterlayer.sip
   trunk/qgis/src/app/qgsrasterlayerproperties.cpp
   trunk/qgis/src/app/qgsrasterlayerproperties.h
   trunk/qgis/src/core/raster/qgsrasterlayer.cpp
   trunk/qgis/src/core/raster/qgsrasterlayer.h
   trunk/qgis/src/ui/qgsrasterlayerpropertiesbase.ui
Log:
-Fixed problem restoring min max values from project file
-Closes ticket #945
-Added ability choose in the GUI to load estimated or actual min max values from the band
-Cleaned and reorganized raster properties gui a little
-Added a set default constrast enhancement option in gui that is persistent between sessions
-Closes ticket #1055 and #778

Modified: trunk/qgis/python/core/qgsrasterlayer.sip
===================================================================
--- trunk/qgis/python/core/qgsrasterlayer.sip	2008-05-04 07:38:41 UTC (rev 8397)
+++ trunk/qgis/python/core/qgsrasterlayer.sip	2008-05-06 03:21:12 UTC (rev 8398)
@@ -260,6 +260,12 @@
 
     void setMaximumValue(QString theBand, double theValue, bool theGenerateLookupTableFlag=true);
 
+    /** \brief Wrapper for GDALComputeRasterMinMax with the estimate option */
+    void computeMinimumMaximumEstimates(int theBand, double* theMinMax);
+
+    /** \brief Wrapper for GDALComputeRasterMinMax with the estimate option */
+    void computeMinimumMaximumEstimates(QString theBand, double* theMinMax);
+
     QgsContrastEnhancement* getContrastEnhancement(unsigned int theBand);
 
     //

Modified: trunk/qgis/src/app/qgsrasterlayerproperties.cpp
===================================================================
--- trunk/qgis/src/app/qgsrasterlayerproperties.cpp	2008-05-04 07:38:41 UTC (rev 8397)
+++ trunk/qgis/src/app/qgsrasterlayerproperties.cpp	2008-05-06 03:21:12 UTC (rev 8398)
@@ -42,8 +42,8 @@
 #include <QPolygonF>
 #include <QColorDialog>
 #include <QList>
+#include <QSettings>
 
-
 #include <iostream>
 
 const char * const ident = 
@@ -298,6 +298,7 @@
   pbnDefaultValues->setIcon(QIcon(QPixmap(myThemePath + "/mActionCopySelected.png")));
   pbnImportTransparentPixelValues->setIcon(QIcon(QPixmap(myThemePath + "/mActionFileOpen.png")));
   pbnExportTransparentPixelValues->setIcon(QIcon(QPixmap(myThemePath + "/mActionFileSave.png")));
+  pbtnMakeContrastEnhancementAlgorithmDefault->setIcon(QIcon(QPixmap(myThemePath + "/mActionFileSave.png")));
 
   // Only do pyramids if dealing directly with GDAL.
   if (mRasterLayerIsGdal)
@@ -613,11 +614,6 @@
     cboxInvertColorMap->setChecked(false);
   }
 
-  //set the transparency slider
-  sliderTransparency->setValue(255 - mRasterLayer->getTransparency());
-  //update the transparency percentage label
-  sliderTransparency_valueChanged(255 - mRasterLayer->getTransparency());
-
   //set the combos to the correct values
   cboRed->setCurrentText(mRasterLayer->getRedBandName());
   cboGreen->setCurrentText(mRasterLayer->getGreenBandName());
@@ -712,13 +708,45 @@
   {
     cboxContrastEnhancementAlgorithm->setCurrentText(tr("No Scaling"));
   }
+  
+  //Display the current default contrast enhancement algorithm
+  QSettings myQSettings;
+  QString myDefaultAlgorithm = myQSettings.value("/Raster/defaultContrastEnhancementAlgorithm", "NO_STRETCH").toString();
+  if(myDefaultAlgorithm == "NO_STRETCH")
+  {
+    labelDefaultContrastEnhancementAlgorithm->setText(tr("No Scaling"));
+  }
+  if(myDefaultAlgorithm == "STRETCH_TO_MINMAX")
+  {
+    labelDefaultContrastEnhancementAlgorithm->setText(tr("Stretch To MinMax"));
+  }
+  else if(myDefaultAlgorithm == "STRETCH_AND_CLIP_TO_MINMAX")
+  {
+    labelDefaultContrastEnhancementAlgorithm->setText(tr("Stretch And Clip To MinMax"));
+  }
+  else if(myDefaultAlgorithm == "CLIP_TO_MINMAX")
+  {
+    labelDefaultContrastEnhancementAlgorithm->setText(tr("Clip To MinMax"));
+  }
+  else
+  {
+    labelDefaultContrastEnhancementAlgorithm->setText(tr("No Scaling"));
+  }
 
+
+
 #ifdef QGISDEBUG
       QgsDebugMsg("QgsRasterLayerProperties::sync populate transparency tab");
 #endif
   /*
    * Transparent Pixel Tab
    */
+  
+  //set the transparency slider
+  sliderTransparency->setValue(255 - mRasterLayer->getTransparency());
+  //update the transparency percentage label
+  sliderTransparency_valueChanged(255 - mRasterLayer->getTransparency());
+   
   int myIndex = cboxTransparencyLayer->findText(mRasterLayer->getTransparentLayerName());
   if(-1 != myIndex)
   {
@@ -2697,26 +2725,91 @@
     if(rbtnThreeBand->isChecked())
     {
       rbtnThreeBandMinMax->setChecked(true);
-      myRasterBandStats = mRasterLayer->getRasterBandStats(mRasterLayer->getRasterBandNumber(cboRed->currentText()));
-      leRedMin->setText(QString::number(myRasterBandStats.minVal));
-      leRedMax->setText(QString::number(myRasterBandStats.maxVal));
-      myRasterBandStats = mRasterLayer->getRasterBandStats(mRasterLayer->getRasterBandNumber(cboGreen->currentText()));
-      leGreenMin->setText(QString::number(myRasterBandStats.minVal));
-      leGreenMax->setText(QString::number(myRasterBandStats.maxVal));
-      myRasterBandStats = mRasterLayer->getRasterBandStats(mRasterLayer->getRasterBandNumber(cboBlue->currentText()));
-      leBlueMin->setText(QString::number(myRasterBandStats.minVal));
-      leBlueMax->setText(QString::number(myRasterBandStats.maxVal));
+      
+      if(rbtnActualMinMax->isChecked())
+      {
+        myRasterBandStats = mRasterLayer->getRasterBandStats(mRasterLayer->getRasterBandNumber(cboRed->currentText()));
+        leRedMin->setText(QString::number(myRasterBandStats.minVal));
+        leRedMax->setText(QString::number(myRasterBandStats.maxVal));
+        myRasterBandStats = mRasterLayer->getRasterBandStats(mRasterLayer->getRasterBandNumber(cboGreen->currentText()));
+        leGreenMin->setText(QString::number(myRasterBandStats.minVal));
+        leGreenMax->setText(QString::number(myRasterBandStats.maxVal));
+        myRasterBandStats = mRasterLayer->getRasterBandStats(mRasterLayer->getRasterBandNumber(cboBlue->currentText()));
+        leBlueMin->setText(QString::number(myRasterBandStats.minVal));
+        leBlueMax->setText(QString::number(myRasterBandStats.maxVal));
+      }
+      else
+      {
+        rbtnEstimateMinMax->setChecked(true);
+        double myMinimumMaximum[2];
+        mRasterLayer->computeMinimumMaximumEstimates(mRasterLayer->getRasterBandNumber(cboRed->currentText()), myMinimumMaximum);
+        leRedMin->setText(QString::number(myMinimumMaximum[0]));
+        leRedMax->setText(QString::number(myMinimumMaximum[1]));
+        mRasterLayer->computeMinimumMaximumEstimates(mRasterLayer->getRasterBandNumber(cboGreen->currentText()), myMinimumMaximum);
+        leGreenMin->setText(QString::number(myMinimumMaximum[0]));
+        leGreenMax->setText(QString::number(myMinimumMaximum[1]));
+        mRasterLayer->computeMinimumMaximumEstimates(mRasterLayer->getRasterBandNumber(cboBlue->currentText()), myMinimumMaximum);
+        leBlueMin->setText(QString::number(myMinimumMaximum[0]));
+        leBlueMax->setText(QString::number(myMinimumMaximum[1]));
+      }
+
     }
     else
     {
       rbtnSingleBandMinMax->setChecked(true);
-      myRasterBandStats = mRasterLayer->getRasterBandStats(mRasterLayer->getRasterBandNumber(cboGray->currentText()));
-      leGrayMin->setText(QString::number(myRasterBandStats.minVal));
-      leGrayMax->setText(QString::number(myRasterBandStats.maxVal));
+      if(rbtnActualMinMax->isChecked())
+      {
+        myRasterBandStats = mRasterLayer->getRasterBandStats(mRasterLayer->getRasterBandNumber(cboGray->currentText()));
+        leGrayMin->setText(QString::number(myRasterBandStats.minVal));
+        leGrayMax->setText(QString::number(myRasterBandStats.maxVal));
+      }
+      else
+      {
+        rbtnEstimateMinMax->setChecked(true);
+        double myMinimumMaximum[2];
+        mRasterLayer->computeMinimumMaximumEstimates(mRasterLayer->getRasterBandNumber(cboGray->currentText()), myMinimumMaximum);
+        leGrayMin->setText(QString::number(myMinimumMaximum[0]));
+        leGrayMax->setText(QString::number(myMinimumMaximum[1]));
+      }
     }
   }
 }
 
+void QgsRasterLayerProperties::on_pbtnMakeContrastEnhancementAlgorithmDefault_clicked()
+{
+  //Like some of the other functionality in the raster properties GUI this deviated a little from the 
+  //best practice of GUI design as this pressing cancel will not undo setting the default 
+  //contrast enhancement algorithm
+  if(cboxContrastEnhancementAlgorithm->currentText() != tr("User Defined"))
+  {
+    QSettings myQSettings;
+    if(cboxContrastEnhancementAlgorithm->currentText() == tr("No Stretch"))
+    {
+      myQSettings.setValue("/Raster/defaultContrastEnhancementAlgorithm", "NO_STRETCH");
+      labelDefaultContrastEnhancementAlgorithm->setText(cboxContrastEnhancementAlgorithm->currentText());
+    }
+    else if(cboxContrastEnhancementAlgorithm->currentText() == tr("Stretch To MinMax"))
+    {
+      myQSettings.setValue("/Raster/defaultContrastEnhancementAlgorithm", "STRETCH_TO_MINMAX");
+      labelDefaultContrastEnhancementAlgorithm->setText(cboxContrastEnhancementAlgorithm->currentText());
+    }
+    else if(cboxContrastEnhancementAlgorithm->currentText() == tr("Stretch And Clip To MinMax"))
+    {
+      myQSettings.setValue("/Raster/defaultContrastEnhancementAlgorithm", "STRETCH_AND_CLIP_TO_MINMAX");
+      labelDefaultContrastEnhancementAlgorithm->setText(cboxContrastEnhancementAlgorithm->currentText());
+    }
+    else if(cboxContrastEnhancementAlgorithm->currentText() == tr("Clip To MinMax"))
+    {
+      myQSettings.setValue("/Raster/defaultContrastEnhancementAlgorithm", "CLIP_TO_MINMAX");
+      labelDefaultContrastEnhancementAlgorithm->setText(cboxContrastEnhancementAlgorithm->currentText());
+    }
+    else
+    {
+      //do nothing
+    }
+  }
+}
+
 QLinearGradient QgsRasterLayerProperties::redGradient()
 {
   //define a gradient

Modified: trunk/qgis/src/app/qgsrasterlayerproperties.h
===================================================================
--- trunk/qgis/src/app/qgsrasterlayerproperties.h	2008-05-04 07:38:41 UTC (rev 8397)
+++ trunk/qgis/src/app/qgsrasterlayerproperties.h	2008-05-06 03:21:12 UTC (rev 8398)
@@ -108,7 +108,9 @@
 	    /**Callback for double clicks on the colormap entry widget*/
 	    void handleColormapTreeWidgetDoubleClick(QTreeWidgetItem* item, int column);
       /**This slot loads the minimum and maximum values from the raster band and updates the gui*/
-      void on_pbtnLoadMinMax_clicked(); 
+      void on_pbtnLoadMinMax_clicked();
+      /**This slot save the current contrast enhancement algorithm as the default algorithm */
+      void on_pbtnMakeContrastEnhancementAlgorithmDefault_clicked();
 	
 
     signals:

Modified: trunk/qgis/src/core/raster/qgsrasterlayer.cpp
===================================================================
--- trunk/qgis/src/core/raster/qgsrasterlayer.cpp	2008-05-04 07:38:41 UTC (rev 8397)
+++ trunk/qgis/src/core/raster/qgsrasterlayer.cpp	2008-05-06 03:21:12 UTC (rev 8398)
@@ -60,7 +60,7 @@
 #include <QPixmap>
 #include <QRegExp>
 #include <QSlider>
-
+#include <QSettings>
 // workaround for MSVC compiler which already has defined macro max
 // that interferes with calling std::numeric_limits<int>::max
 #ifdef _MSC_VER
@@ -592,7 +592,9 @@
   }
   
   //defaults - Needs to be set after the Contrast list has been build
-  setContrastEnhancementAlgorithm(QgsContrastEnhancement::STRETCH_TO_MINMAX);
+  //Try to read the default contrast enhancement from the config file
+  QSettings myQSettings;
+  setContrastEnhancementAlgorithm(myQSettings.value("/Raster/defaultContrastEnhancementAlgorithm", "NO_STRETCH").toString());
   
   //decide what type of layer this is...
   //note that multiband images can have one or more 'undefindd' bands,
@@ -4320,6 +4322,16 @@
   myElement = snode.toElement();
   setStdDevsToPlot(myElement.text().toDouble());
   
+  snode = mnl.namedItem("mUserDefinedRGBMinMaxFlag");
+  myElement = snode.toElement();
+  myQVariant = (QVariant) myElement.attribute("boolean");
+  setUserDefinedRGBMinMax(myQVariant.toBool());
+  
+  snode = mnl.namedItem("mUserDefinedGrayMinMaxFlag");
+  myElement = snode.toElement();
+  myQVariant = (QVariant) myElement.attribute("boolean");
+  setUserDefinedGrayMinMax(myQVariant.toBool());
+  
   snode = mnl.namedItem("mContrastEnhancementAlgorithm");
   myElement = snode.toElement();
   setContrastEnhancementAlgorithm(myElement.text(), false);
@@ -4659,6 +4671,34 @@
 
   rasterPropertiesElement.appendChild( mStandardDeviationsElement );
   
+  // <mUserDefinedRGBMinMaxFlag>
+  QDomElement userDefinedRGBMinMaxFlag = document.createElement( "mUserDefinedRGBMinMaxFlag" );
+
+  if ( getUserDefinedRGBMinMax() )
+  {
+    userDefinedRGBMinMaxFlag.setAttribute( "boolean", "true" );
+  }
+  else
+  {
+    userDefinedRGBMinMaxFlag.setAttribute( "boolean", "false" );
+  }
+
+  rasterPropertiesElement.appendChild( userDefinedRGBMinMaxFlag );
+  
+  // <mUserDefinedGrayMinMaxFlag>
+  QDomElement userDefinedGrayMinMaxFlag = document.createElement( "mUserDefinedGrayMinMaxFlag" );
+
+  if ( getUserDefinedGrayMinMax() )
+  {
+    userDefinedGrayMinMaxFlag.setAttribute( "boolean", "true" );
+  }
+  else
+  {
+    userDefinedGrayMinMaxFlag.setAttribute( "boolean", "false" );
+  }
+
+  rasterPropertiesElement.appendChild( userDefinedGrayMinMaxFlag );
+  
   // <contrastEnhancementAlgorithm>
   QDomElement contrastEnhancementAlgorithmElement = document.createElement( "mContrastEnhancementAlgorithm" );
   QDomText    contrastEnhancementAlgorithmText    = document.createTextNode( getContrastEnhancementAlgorithmAsQString() );
@@ -5391,4 +5431,8 @@
   {
     setContrastEnhancementAlgorithm(QgsContrastEnhancement::USER_DEFINED, theGenerateLookupTableFlag);
   }
+  else
+  {
+    setContrastEnhancementAlgorithm(QgsContrastEnhancement::NO_STRETCH, theGenerateLookupTableFlag);
+  }
 }

Modified: trunk/qgis/src/core/raster/qgsrasterlayer.h
===================================================================
--- trunk/qgis/src/core/raster/qgsrasterlayer.h	2008-05-04 07:38:41 UTC (rev 8397)
+++ trunk/qgis/src/core/raster/qgsrasterlayer.h	2008-05-06 03:21:12 UTC (rev 8398)
@@ -463,6 +463,7 @@
     
     // Accessor and mutator for minimum maximum values 
     //TODO: Move these out of the header file...
+    /** \brief Accessor for minimum value user for contrast enhancement */
     double getMinimumValue(unsigned int theBand) 
     { 
       if(0 < theBand && theBand <= getBandCount()) 
@@ -473,11 +474,13 @@
       return 0.0;
     }
     
+    /** \brief Accessor for minimum value user for contrast enhancement */
     double getMinimumValue(QString theBand)
     { 
       return getMinimumValue(getRasterBandNumber(theBand));
     }
     
+    /** \brief Mutator for setting the minimum value for contrast enhancement */
     void setMinimumValue(unsigned int theBand, double theValue, bool theGenerateLookupTableFlag=true)
     { 
       if(0 < theBand && theBand <= getBandCount())
@@ -486,6 +489,7 @@
       } 
     }
     
+    /** \brief Mutator for setting the minimum value for contrast enhancement */
     void setMinimumValue(QString theBand, double theValue, bool theGenerateLookupTableFlag=true)
     { 
       if(theBand != tr("Not Set"))
@@ -495,6 +499,7 @@
       
     }
     
+    /** \brief Accessor for maximum value user for contrast enhancement */
     double getMaximumValue(unsigned int theBand)
     {
       if(0 < theBand && theBand <= getBandCount())
@@ -505,6 +510,7 @@
       return 0.0;
     }
     
+    /** \brief Accessor for maximum value user for contrast enhancement */
     double getMaximumValue(QString theBand)
     { 
       if(theBand != tr("Not Set"))
@@ -515,6 +521,7 @@
       return 0.0;
     }
     
+    /** \brief Mutator for setting the maximum value for contrast enhancement */
     void setMaximumValue(unsigned int theBand, double theValue, bool theGenerateLookupTableFlag=true)
     { 
       if(0 < theBand && theBand <= getBandCount()) 
@@ -523,6 +530,7 @@
       } 
     }
     
+    /** \brief Mutator for setting the maximum value for contrast enhancement */
     void setMaximumValue(QString theBand, double theValue, bool theGenerateLookupTableFlag=true) 
     { 
       if(theBand != tr("Not Set"))
@@ -531,6 +539,22 @@
       }
     }
     
+    /** \brief Wrapper for GDALComputeRasterMinMax with the estimate option */
+    void computeMinimumMaximumEstimates(int theBand, double* theMinMax)
+    {
+      if(0 < theBand && theBand <= getBandCount())
+      {
+        GDALRasterBandH myGdalBand = GDALGetRasterBand(mGdalDataset,theBand);
+        GDALComputeRasterMinMax( myGdalBand, 1, theMinMax );
+      }
+    }
+    
+    /** \brief Wrapper for GDALComputeRasterMinMax with the estimate option */
+    void computeMinimumMaximumEstimates(QString theBand, double* theMinMax)
+    {
+      computeMinimumMaximumEstimates(getRasterBandNumber(theBand), theMinMax);
+    }
+    
     QgsContrastEnhancement* getContrastEnhancement(unsigned int theBand)
     { 
       return &mContrastEnhancementList[theBand - 1]; 

Modified: trunk/qgis/src/ui/qgsrasterlayerpropertiesbase.ui
===================================================================
--- trunk/qgis/src/ui/qgsrasterlayerpropertiesbase.ui	2008-05-04 07:38:41 UTC (rev 8397)
+++ trunk/qgis/src/ui/qgsrasterlayerpropertiesbase.ui	2008-05-06 03:21:12 UTC (rev 8398)
@@ -5,8 +5,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>651</width>
-    <height>627</height>
+    <width>609</width>
+    <height>647</height>
    </rect>
   </property>
   <property name="windowTitle" >
@@ -22,12 +22,24 @@
    <bool>true</bool>
   </property>
   <layout class="QGridLayout" >
-   <property name="margin" >
+   <property name="leftMargin" >
     <number>9</number>
    </property>
-   <property name="spacing" >
+   <property name="topMargin" >
+    <number>9</number>
+   </property>
+   <property name="rightMargin" >
+    <number>9</number>
+   </property>
+   <property name="bottomMargin" >
+    <number>9</number>
+   </property>
+   <property name="horizontalSpacing" >
     <number>6</number>
    </property>
+   <property name="verticalSpacing" >
+    <number>6</number>
+   </property>
    <item row="0" column="0" >
     <widget class="QTabWidget" name="tabBar" >
      <property name="currentIndex" >
@@ -38,287 +50,305 @@
        <string>Symbology</string>
       </attribute>
       <layout class="QGridLayout" >
-       <property name="margin" >
-        <number>9</number>
-       </property>
-       <property name="spacing" >
-        <number>6</number>
-       </property>
-       <item rowspan="2" row="3" column="1" >
-        <widget class="QGroupBox" name="grpGrayScaling" >
+       <item row="0" column="0" >
+        <widget class="QGroupBox" name="groupBox_3" >
          <property name="title" >
-          <string>Grayscale Band Scaling</string>
+          <string>Render as</string>
          </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
+          <property name="leftMargin" >
            <number>9</number>
           </property>
-          <property name="spacing" >
+          <property name="topMargin" >
+           <number>9</number>
+          </property>
+          <property name="rightMargin" >
+           <number>9</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>9</number>
+          </property>
+          <property name="horizontalSpacing" >
            <number>6</number>
           </property>
-          <item row="3" column="0" colspan="5" >
-           <widget class="QLabel" name="lblMinMaxEstimateWarning" >
-            <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>7</hsizetype>
-              <vsizetype>5</vsizetype>
-              <horstretch>0</horstretch>
-              <verstretch>0</verstretch>
-             </sizepolicy>
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
+          <item row="0" column="1" >
+           <widget class="QRadioButton" name="rbtnSingleBand" >
+            <property name="text" >
+             <string>Single Band Gray</string>
             </property>
+           </widget>
+          </item>
+          <item row="0" column="0" >
+           <widget class="QRadioButton" name="rbtnThreeBand" >
             <property name="text" >
-             <string/>
+             <string>Three Band Color</string>
             </property>
            </widget>
           </item>
-          <item row="1" column="1" >
-           <widget class="QLineEdit" name="leGrayMin" >
+         </layout>
+        </widget>
+       </item>
+       <item row="0" column="1" >
+        <widget class="QGroupBox" name="groupBox_5" >
+         <property name="title" >
+          <string>Color Map</string>
+         </property>
+         <layout class="QVBoxLayout" >
+          <property name="spacing" >
+           <number>6</number>
+          </property>
+          <property name="leftMargin" >
+           <number>9</number>
+          </property>
+          <property name="topMargin" >
+           <number>9</number>
+          </property>
+          <property name="rightMargin" >
+           <number>9</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>9</number>
+          </property>
+          <item>
+           <widget class="QComboBox" name="cboxColorMap" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="maximumSize" >
+            <property name="minimumSize" >
              <size>
-              <width>75</width>
-              <height>16777215</height>
-             </size>
-            </property>
-            <property name="baseSize" >
-             <size>
-              <width>0</width>
+              <width>150</width>
               <height>0</height>
              </size>
             </property>
-            <property name="maxLength" >
-             <number>16</number>
+           </widget>
+          </item>
+          <item>
+           <widget class="QCheckBox" name="cboxInvertColorMap" >
+            <property name="text" >
+             <string>Invert Color Map</string>
             </property>
            </widget>
           </item>
-          <item row="2" column="4" >
-           <widget class="QDoubleSpinBox" name="sboxSingleBandStdDev" >
-            <property name="maximum" >
-             <double>10.000000000000000</double>
+         </layout>
+        </widget>
+       </item>
+       <item row="1" column="0" colspan="2" >
+        <widget class="Line" name="line_2" >
+         <property name="orientation" >
+          <enum>Qt::Horizontal</enum>
+         </property>
+        </widget>
+       </item>
+       <item rowspan="2" row="2" column="0" >
+        <widget class="QGroupBox" name="grpRgbBands" >
+         <property name="title" >
+          <string>RGB Mode Band Selection</string>
+         </property>
+         <layout class="QGridLayout" >
+          <property name="leftMargin" >
+           <number>9</number>
+          </property>
+          <property name="topMargin" >
+           <number>9</number>
+          </property>
+          <property name="rightMargin" >
+           <number>9</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>9</number>
+          </property>
+          <property name="horizontalSpacing" >
+           <number>9</number>
+          </property>
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
+          <item row="2" column="0" >
+           <widget class="QLabel" name="lblBlue" >
+            <property name="text" >
+             <string>&lt;b>&lt;font color='blue'>Blue&lt;/font>&lt;/b></string>
             </property>
-            <property name="singleStep" >
-             <double>0.100000000000000</double>
+            <property name="buddy" >
+             <cstring>cboBlue</cstring>
             </property>
-            <property name="value" >
-             <double>0.000000000000000</double>
+           </widget>
+          </item>
+          <item row="1" column="0" >
+           <widget class="QLabel" name="lblGreen" >
+            <property name="text" >
+             <string>&lt;b>&lt;font color='green'>Green&lt;/font>&lt;/b></string>
             </property>
+            <property name="buddy" >
+             <cstring>cboGreen</cstring>
+            </property>
            </widget>
           </item>
-          <item row="1" column="4" >
-           <widget class="QLineEdit" name="leGrayMax" >
+          <item row="0" column="0" >
+           <widget class="QLabel" name="lblRed" >
+            <property name="text" >
+             <string>&lt;b>&lt;font color='red'>Red&lt;/font>&lt;/b></string>
+            </property>
+            <property name="buddy" >
+             <cstring>cboRed</cstring>
+            </property>
+           </widget>
+          </item>
+          <item row="2" column="1" >
+           <widget class="QComboBox" name="cboBlue" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="maximumSize" >
+            <property name="minimumSize" >
              <size>
-              <width>75</width>
-              <height>16777215</height>
+              <width>150</width>
+              <height>0</height>
              </size>
             </property>
             <property name="baseSize" >
              <size>
-              <width>0</width>
+              <width>100</width>
               <height>0</height>
              </size>
             </property>
-            <property name="maxLength" >
-             <number>16</number>
-            </property>
            </widget>
           </item>
-          <item row="1" column="3" >
-           <widget class="QLabel" name="lblGrayMax" >
+          <item row="0" column="1" >
+           <widget class="QComboBox" name="cboRed" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="text" >
-             <string>Max</string>
-            </property>
-           </widget>
-          </item>
-          <item row="1" column="2" >
-           <spacer>
-            <property name="orientation" >
-             <enum>Qt::Horizontal</enum>
-            </property>
-            <property name="sizeHint" >
+            <property name="minimumSize" >
              <size>
-              <width>21</width>
-              <height>20</height>
+              <width>150</width>
+              <height>0</height>
              </size>
             </property>
-           </spacer>
-          </item>
-          <item row="2" column="0" colspan="2" >
-           <widget class="QRadioButton" name="rbtnSingleBandStdDev" >
-            <property name="text" >
-             <string>Std Deviation</string>
-            </property>
-           </widget>
-          </item>
-          <item row="0" column="0" colspan="5" >
-           <widget class="QRadioButton" name="rbtnSingleBandMinMax" >
-            <property name="text" >
-             <string>Custom Min Max Values:</string>
-            </property>
-           </widget>
-          </item>
-          <item row="2" column="2" colspan="2" >
-           <spacer>
-            <property name="orientation" >
-             <enum>Qt::Horizontal</enum>
-            </property>
-            <property name="sizeHint" >
+            <property name="baseSize" >
              <size>
-              <width>40</width>
-              <height>20</height>
+              <width>100</width>
+              <height>0</height>
              </size>
             </property>
-           </spacer>
+           </widget>
           </item>
-          <item row="1" column="0" >
-           <widget class="QLabel" name="lblGrayMin" >
+          <item row="1" column="1" >
+           <widget class="QComboBox" name="cboGreen" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="text" >
-             <string>Min</string>
+            <property name="minimumSize" >
+             <size>
+              <width>150</width>
+              <height>0</height>
+             </size>
             </property>
+            <property name="baseSize" >
+             <size>
+              <width>0</width>
+              <height>0</height>
+             </size>
+            </property>
            </widget>
           </item>
          </layout>
         </widget>
        </item>
-       <item row="7" column="1" >
-        <layout class="QHBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
-         <property name="spacing" >
-          <number>6</number>
-         </property>
-         <item>
-          <spacer>
-           <property name="orientation" >
-            <enum>Qt::Horizontal</enum>
-           </property>
-           <property name="sizeHint" >
-            <size>
-             <width>40</width>
-             <height>20</height>
-            </size>
-           </property>
-          </spacer>
-         </item>
-         <item>
-          <widget class="QLabel" name="labelContrastEnhancement" >
-           <property name="sizePolicy" >
-            <sizepolicy>
-             <hsizetype>0</hsizetype>
-             <vsizetype>0</vsizetype>
-             <horstretch>0</horstretch>
-             <verstretch>0</verstretch>
-            </sizepolicy>
-           </property>
-           <property name="layoutDirection" >
-            <enum>Qt::LeftToRight</enum>
-           </property>
-           <property name="text" >
-            <string>Contrast Enhancement</string>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="QComboBox" name="cboxContrastEnhancementAlgorithm" >
-           <property name="sizePolicy" >
-            <sizepolicy>
-             <hsizetype>0</hsizetype>
-             <vsizetype>0</vsizetype>
-             <horstretch>0</horstretch>
-             <verstretch>0</verstretch>
-            </sizepolicy>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </item>
-       <item row="6" column="1" >
-        <layout class="QHBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
-         <property name="spacing" >
-          <number>6</number>
-         </property>
-         <item>
-          <spacer>
-           <property name="orientation" >
-            <enum>Qt::Horizontal</enum>
-           </property>
-           <property name="sizeHint" >
-            <size>
-             <width>171</width>
-             <height>20</height>
-            </size>
-           </property>
-          </spacer>
-         </item>
-         <item>
-          <widget class="QPushButton" name="pbtnLoadMinMax" >
-           <property name="text" >
-            <string>Load Min Max Values From Band(s)</string>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </item>
-       <item row="5" column="1" >
+       <item row="2" column="1" >
         <spacer>
          <property name="orientation" >
           <enum>Qt::Vertical</enum>
          </property>
          <property name="sizeHint" >
           <size>
-           <width>333</width>
-           <height>41</height>
+           <width>20</width>
+           <height>40</height>
           </size>
          </property>
         </spacer>
        </item>
-       <item rowspan="4" row="4" column="0" >
+       <item row="3" column="1" >
+        <widget class="QGroupBox" name="grpGrayBand" >
+         <property name="title" >
+          <string>Grayscale Band Selection</string>
+         </property>
+         <layout class="QGridLayout" >
+          <property name="horizontalSpacing" >
+           <number>6</number>
+          </property>
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
+          <item row="0" column="0" >
+           <widget class="QLabel" name="label" >
+            <property name="sizePolicy" >
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+              <horstretch>0</horstretch>
+              <verstretch>0</verstretch>
+             </sizepolicy>
+            </property>
+            <property name="text" >
+             <string>Gray</string>
+            </property>
+           </widget>
+          </item>
+          <item row="0" column="1" >
+           <widget class="QComboBox" name="cboGray" >
+            <property name="sizePolicy" >
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+              <horstretch>0</horstretch>
+              <verstretch>0</verstretch>
+             </sizepolicy>
+            </property>
+            <property name="minimumSize" >
+             <size>
+              <width>150</width>
+              <height>0</height>
+             </size>
+            </property>
+           </widget>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item rowspan="2" row="4" column="0" >
         <widget class="QGroupBox" name="grpRgbScaling" >
          <property name="title" >
           <string>RGB Scaling</string>
          </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
-           <number>11</number>
+          <property name="leftMargin" >
+           <number>9</number>
           </property>
-          <property name="spacing" >
+          <property name="topMargin" >
+           <number>9</number>
+          </property>
+          <property name="rightMargin" >
+           <number>9</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>9</number>
+          </property>
+          <property name="horizontalSpacing" >
            <number>6</number>
           </property>
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
           <item row="3" column="3" >
            <widget class="QLabel" name="lblBlueMax" >
             <property name="text" >
@@ -343,9 +373,7 @@
           <item row="2" column="4" >
            <widget class="QLineEdit" name="leGreenMax" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -370,9 +398,7 @@
           <item row="2" column="0" >
            <widget class="QLabel" name="lblGreenMin" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -385,9 +411,7 @@
           <item row="2" column="3" >
            <widget class="QLabel" name="lblGreenMax" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -400,9 +424,7 @@
           <item row="1" column="0" >
            <widget class="QLabel" name="lblRedMin" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -428,9 +450,7 @@
           <item row="1" column="4" >
            <widget class="QLineEdit" name="leRedMax" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -455,9 +475,7 @@
           <item row="1" column="3" >
            <widget class="QLabel" name="lblRedMax" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -483,9 +501,7 @@
           <item row="3" column="4" >
            <widget class="QLineEdit" name="leBlueMax" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -510,9 +526,7 @@
           <item row="3" column="1" >
            <widget class="QLineEdit" name="leBlueMin" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -537,9 +551,7 @@
           <item row="3" column="0" >
            <widget class="QLabel" name="lblBlueMin" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -565,9 +577,7 @@
           <item row="1" column="1" >
            <widget class="QLineEdit" name="leRedMin" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -618,9 +628,7 @@
           <item row="2" column="1" >
            <widget class="QLineEdit" name="leGreenMin" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -645,229 +653,345 @@
          </layout>
         </widget>
        </item>
-       <item row="2" column="1" >
-        <widget class="QGroupBox" name="grpGrayBand" >
+       <item row="4" column="1" >
+        <widget class="QGroupBox" name="grpGrayScaling" >
          <property name="title" >
-          <string>Grayscale Band Selection</string>
+          <string>Grayscale Band Scaling</string>
          </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
-           <number>11</number>
+          <property name="leftMargin" >
+           <number>9</number>
           </property>
-          <property name="spacing" >
+          <property name="topMargin" >
+           <number>9</number>
+          </property>
+          <property name="rightMargin" >
+           <number>9</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>9</number>
+          </property>
+          <property name="horizontalSpacing" >
            <number>6</number>
           </property>
-          <item row="0" column="0" >
-           <widget class="QLabel" name="label" >
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
+          <item row="3" column="0" colspan="5" >
+           <widget class="QLabel" name="lblMinMaxEstimateWarning" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Preferred" hsizetype="Expanding" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
             <property name="text" >
-             <string>Gray</string>
+             <string/>
             </property>
            </widget>
           </item>
-          <item row="0" column="1" >
-           <widget class="QComboBox" name="cboGray" >
+          <item row="1" column="1" >
+           <widget class="QLineEdit" name="leGrayMin" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="minimumSize" >
+            <property name="maximumSize" >
              <size>
-              <width>150</width>
+              <width>75</width>
+              <height>16777215</height>
+             </size>
+            </property>
+            <property name="baseSize" >
+             <size>
+              <width>0</width>
               <height>0</height>
              </size>
             </property>
-           </widget>
-          </item>
-         </layout>
-        </widget>
-       </item>
-       <item rowspan="2" row="2" column="0" >
-        <widget class="QGroupBox" name="grpRgbBands" >
-         <property name="title" >
-          <string>RGB Mode Band Selection</string>
-         </property>
-         <layout class="QGridLayout" >
-          <property name="margin" >
-           <number>11</number>
-          </property>
-          <property name="spacing" >
-           <number>6</number>
-          </property>
-          <item row="2" column="0" >
-           <widget class="QLabel" name="lblBlue" >
-            <property name="text" >
-             <string>&lt;b>&lt;font color='blue'>Blue&lt;/font>&lt;/b></string>
+            <property name="maxLength" >
+             <number>16</number>
             </property>
-            <property name="buddy" >
-             <cstring>cboBlue</cstring>
-            </property>
            </widget>
           </item>
-          <item row="1" column="0" >
-           <widget class="QLabel" name="lblGreen" >
-            <property name="text" >
-             <string>&lt;b>&lt;font color='green'>Green&lt;/font>&lt;/b></string>
+          <item row="2" column="4" >
+           <widget class="QDoubleSpinBox" name="sboxSingleBandStdDev" >
+            <property name="maximum" >
+             <double>10.000000000000000</double>
             </property>
-            <property name="buddy" >
-             <cstring>cboGreen</cstring>
+            <property name="singleStep" >
+             <double>0.100000000000000</double>
             </property>
-           </widget>
-          </item>
-          <item row="0" column="0" >
-           <widget class="QLabel" name="lblRed" >
-            <property name="text" >
-             <string>&lt;b>&lt;font color='red'>Red&lt;/font>&lt;/b></string>
+            <property name="value" >
+             <double>0.000000000000000</double>
             </property>
-            <property name="buddy" >
-             <cstring>cboRed</cstring>
-            </property>
            </widget>
           </item>
-          <item row="2" column="1" >
-           <widget class="QComboBox" name="cboBlue" >
+          <item row="1" column="4" >
+           <widget class="QLineEdit" name="leGrayMax" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="minimumSize" >
+            <property name="maximumSize" >
              <size>
-              <width>150</width>
-              <height>0</height>
+              <width>75</width>
+              <height>16777215</height>
              </size>
             </property>
             <property name="baseSize" >
              <size>
-              <width>100</width>
+              <width>0</width>
               <height>0</height>
              </size>
             </property>
+            <property name="maxLength" >
+             <number>16</number>
+            </property>
            </widget>
           </item>
-          <item row="0" column="1" >
-           <widget class="QComboBox" name="cboRed" >
+          <item row="1" column="3" >
+           <widget class="QLabel" name="lblGrayMax" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="minimumSize" >
+            <property name="text" >
+             <string>Max</string>
+            </property>
+           </widget>
+          </item>
+          <item row="1" column="2" >
+           <spacer>
+            <property name="orientation" >
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" >
              <size>
-              <width>150</width>
-              <height>0</height>
+              <width>21</width>
+              <height>20</height>
              </size>
             </property>
-            <property name="baseSize" >
+           </spacer>
+          </item>
+          <item row="2" column="0" colspan="2" >
+           <widget class="QRadioButton" name="rbtnSingleBandStdDev" >
+            <property name="text" >
+             <string>Std Deviation</string>
+            </property>
+           </widget>
+          </item>
+          <item row="0" column="0" colspan="5" >
+           <widget class="QRadioButton" name="rbtnSingleBandMinMax" >
+            <property name="text" >
+             <string>Custom Min Max Values:</string>
+            </property>
+           </widget>
+          </item>
+          <item row="2" column="2" colspan="2" >
+           <spacer>
+            <property name="orientation" >
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" >
              <size>
-              <width>100</width>
-              <height>0</height>
+              <width>40</width>
+              <height>20</height>
              </size>
             </property>
-           </widget>
+           </spacer>
           </item>
-          <item row="1" column="1" >
-           <widget class="QComboBox" name="cboGreen" >
+          <item row="1" column="0" >
+           <widget class="QLabel" name="lblGrayMin" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="minimumSize" >
+            <property name="text" >
+             <string>Min</string>
+            </property>
+           </widget>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item row="5" column="1" >
+        <spacer>
+         <property name="orientation" >
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" >
+          <size>
+           <width>20</width>
+           <height>40</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+       <item row="6" column="0" colspan="2" >
+        <widget class="Line" name="line" >
+         <property name="orientation" >
+          <enum>Qt::Horizontal</enum>
+         </property>
+        </widget>
+       </item>
+       <item row="7" column="0" >
+        <widget class="QGroupBox" name="groupBox_2" >
+         <property name="title" >
+          <string>Load Min Max Values From Band</string>
+         </property>
+         <layout class="QGridLayout" >
+          <item rowspan="2" row="0" column="0" >
+           <widget class="QRadioButton" name="rbtnEstimateMinMax" >
+            <property name="text" >
+             <string>Estimate (faster)</string>
+            </property>
+           </widget>
+          </item>
+          <item row="0" column="1" colspan="2" >
+           <spacer>
+            <property name="orientation" >
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" >
              <size>
-              <width>150</width>
-              <height>0</height>
+              <width>201</width>
+              <height>20</height>
              </size>
             </property>
-            <property name="baseSize" >
+           </spacer>
+          </item>
+          <item rowspan="2" row="1" column="1" >
+           <spacer>
+            <property name="orientation" >
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" >
              <size>
-              <width>0</width>
-              <height>0</height>
+              <width>111</width>
+              <height>20</height>
              </size>
             </property>
+           </spacer>
+          </item>
+          <item rowspan="2" row="1" column="2" >
+           <widget class="QPushButton" name="pbtnLoadMinMax" >
+            <property name="text" >
+             <string>Load</string>
+            </property>
            </widget>
           </item>
+          <item row="2" column="0" >
+           <widget class="QRadioButton" name="rbtnActualMinMax" >
+            <property name="text" >
+             <string>Actual (slower)</string>
+            </property>
+           </widget>
+          </item>
          </layout>
         </widget>
        </item>
-       <item row="1" column="1" >
-        <widget class="QGroupBox" name="groupBox_5" >
+       <item row="7" column="1" >
+        <widget class="QGroupBox" name="groupBox_8" >
          <property name="title" >
-          <string>Color Map</string>
+          <string>Contrast Enhancement</string>
          </property>
-         <layout class="QVBoxLayout" >
-          <property name="margin" >
-           <number>11</number>
+         <layout class="QGridLayout" >
+          <property name="horizontalSpacing" >
+           <number>-1</number>
           </property>
-          <property name="spacing" >
-           <number>6</number>
+          <property name="verticalSpacing" >
+           <number>-1</number>
           </property>
-          <item>
-           <widget class="QComboBox" name="cboxColorMap" >
+          <item row="0" column="0" >
+           <widget class="QLabel" name="labelContrastEnhancement" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
             </property>
-            <property name="minimumSize" >
-             <size>
-              <width>150</width>
-              <height>0</height>
-             </size>
+            <property name="layoutDirection" >
+             <enum>Qt::LeftToRight</enum>
             </property>
+            <property name="text" >
+             <string>Current</string>
+            </property>
            </widget>
           </item>
-          <item>
-           <widget class="QCheckBox" name="cboxInvertColorMap" >
+          <item row="0" column="1" >
+           <widget class="QComboBox" name="cboxContrastEnhancementAlgorithm" >
+            <property name="sizePolicy" >
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+              <horstretch>0</horstretch>
+              <verstretch>0</verstretch>
+             </sizepolicy>
+            </property>
+           </widget>
+          </item>
+          <item row="0" column="2" >
+           <widget class="QPushButton" name="pbtnMakeContrastEnhancementAlgorithmDefault" >
+            <property name="sizePolicy" >
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+              <horstretch>0</horstretch>
+              <verstretch>0</verstretch>
+             </sizepolicy>
+            </property>
+            <property name="toolTip" >
+             <string>Save current contrast enhancement algorithm as default. This setting will be persistent between QGIS sessions.</string>
+            </property>
+            <property name="whatsThis" >
+             <string>Saves current contrast enhancement algorithm as a default. This setting will be persistent between QGIS sessions.</string>
+            </property>
             <property name="text" >
-             <string>Invert Color Map</string>
+             <string/>
             </property>
+            <property name="icon" >
+             <iconset>../../images/themes/default/mActionFileSave.png</iconset>
+            </property>
            </widget>
           </item>
+          <item row="1" column="0" >
+           <widget class="QLabel" name="label_4" >
+            <property name="text" >
+             <string>Default</string>
+            </property>
+           </widget>
+          </item>
+          <item row="1" column="1" colspan="2" >
+           <widget class="QLabel" name="labelDefaultContrastEnhancementAlgorithm" >
+            <property name="text" >
+             <string>TextLabel</string>
+            </property>
+           </widget>
+          </item>
          </layout>
         </widget>
        </item>
-       <item row="1" column="0" >
+      </layout>
+     </widget>
+     <widget class="QWidget" name="tabPageTransparency" >
+      <attribute name="title" >
+       <string>Transparency</string>
+      </attribute>
+      <layout class="QGridLayout" >
+       <item row="0" column="0" >
         <widget class="QGroupBox" name="groupBox_4" >
          <property name="title" >
           <string>Global Transparency</string>
          </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
-           <number>11</number>
-          </property>
-          <property name="spacing" >
-           <number>6</number>
-          </property>
           <item row="0" column="0" colspan="5" >
            <widget class="QSlider" name="sliderTransparency" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -883,18 +1007,12 @@
             </property>
            </widget>
           </item>
-          <item row="1" column="3" >
-           <spacer>
-            <property name="orientation" >
-             <enum>Qt::Horizontal</enum>
+          <item row="1" column="0" >
+           <widget class="QLabel" name="textLabel3" >
+            <property name="text" >
+             <string>None</string>
             </property>
-            <property name="sizeHint" >
-             <size>
-              <width>40</width>
-              <height>20</height>
-             </size>
-            </property>
-           </spacer>
+           </widget>
           </item>
           <item row="1" column="1" >
            <spacer>
@@ -912,9 +1030,7 @@
           <item row="1" column="2" >
            <widget class="QLabel" name="lblTransparencyPercent" >
             <property name="sizePolicy" >
-             <sizepolicy>
-              <hsizetype>0</hsizetype>
-              <vsizetype>0</vsizetype>
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
               <horstretch>0</horstretch>
               <verstretch>0</verstretch>
              </sizepolicy>
@@ -924,12 +1040,18 @@
             </property>
            </widget>
           </item>
-          <item row="1" column="0" >
-           <widget class="QLabel" name="textLabel3" >
-            <property name="text" >
-             <string>None</string>
+          <item row="1" column="3" >
+           <spacer>
+            <property name="orientation" >
+             <enum>Qt::Horizontal</enum>
             </property>
-           </widget>
+            <property name="sizeHint" >
+             <size>
+              <width>40</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
           </item>
           <item row="1" column="4" >
            <widget class="QLabel" name="textLabel4" >
@@ -941,285 +1063,283 @@
          </layout>
         </widget>
        </item>
-       <item row="0" column="0" colspan="2" >
-        <widget class="QGroupBox" name="groupBox_3" >
+       <item row="0" column="1" >
+        <widget class="QGroupBox" name="groupBox_7" >
          <property name="title" >
-          <string>Render as</string>
+          <string>No Data Value</string>
          </property>
+         <layout class="QVBoxLayout" >
+          <item>
+           <widget class="QLineEdit" name="leNoDataValue" />
+          </item>
+          <item>
+           <widget class="QCheckBox" name="chkboxResetNoDataValue" >
+            <property name="text" >
+             <string>Reset No Data Value</string>
+            </property>
+           </widget>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item row="1" column="0" colspan="2" >
+        <widget class="QGroupBox" name="groupBox_6" >
+         <property name="title" >
+          <string>Custom Transparency Options</string>
+         </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
-           <number>11</number>
-          </property>
-          <property name="spacing" >
-           <number>6</number>
-          </property>
-          <item row="0" column="2" >
+          <item row="0" column="0" >
+           <widget class="QLabel" name="lblTransarent" >
+            <property name="text" >
+             <string>Transparency Band:</string>
+            </property>
+           </widget>
+          </item>
+          <item row="0" column="1" >
+           <widget class="QLabel" name="label_3" >
+            <property name="text" >
+             <string>Transparency Layer;</string>
+            </property>
+           </widget>
+          </item>
+          <item row="0" column="2" colspan="2" >
            <spacer>
             <property name="orientation" >
              <enum>Qt::Horizontal</enum>
             </property>
             <property name="sizeHint" >
              <size>
-              <width>40</width>
+              <width>261</width>
               <height>20</height>
              </size>
             </property>
            </spacer>
           </item>
-          <item row="0" column="1" >
-           <widget class="QRadioButton" name="rbtnSingleBand" >
-            <property name="text" >
-             <string>Single Band Gray</string>
+          <item row="1" column="0" >
+           <widget class="QComboBox" name="cboxTransparencyBand" >
+            <property name="enabled" >
+             <bool>false</bool>
             </property>
+            <property name="sizePolicy" >
+             <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+              <horstretch>0</horstretch>
+              <verstretch>0</verstretch>
+             </sizepolicy>
+            </property>
+            <property name="minimumSize" >
+             <size>
+              <width>150</width>
+              <height>0</height>
+             </size>
+            </property>
            </widget>
           </item>
-          <item row="0" column="0" >
-           <widget class="QRadioButton" name="rbtnThreeBand" >
+          <item row="1" column="1" >
+           <widget class="QComboBox" name="cboxTransparencyLayer" >
+            <property name="enabled" >
+             <bool>false</bool>
+            </property>
+           </widget>
+          </item>
+          <item row="1" column="2" colspan="2" >
+           <spacer>
+            <property name="orientation" >
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" >
+             <size>
+              <width>261</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+          <item row="3" column="0" colspan="3" >
+           <widget class="QLabel" name="label_2" >
             <property name="text" >
-             <string>Three Band Color</string>
+             <string>Transparent Pixel List</string>
             </property>
            </widget>
           </item>
+          <item row="4" column="0" colspan="3" >
+           <widget class="QTableWidget" name="tableTransparency" >
+            <property name="verticalScrollBarPolicy" >
+             <enum>Qt::ScrollBarAsNeeded</enum>
+            </property>
+            <property name="alternatingRowColors" >
+             <bool>true</bool>
+            </property>
+            <property name="selectionMode" >
+             <enum>QAbstractItemView::SingleSelection</enum>
+            </property>
+            <property name="selectionBehavior" >
+             <enum>QAbstractItemView::SelectRows</enum>
+            </property>
+            <property name="showGrid" >
+             <bool>false</bool>
+            </property>
+            <property name="rowCount" >
+             <number>0</number>
+            </property>
+            <property name="columnCount" >
+             <number>0</number>
+            </property>
+           </widget>
+          </item>
+          <item row="4" column="3" >
+           <layout class="QVBoxLayout" >
+            <property name="spacing" >
+             <number>6</number>
+            </property>
+            <property name="leftMargin" >
+             <number>11</number>
+            </property>
+            <property name="topMargin" >
+             <number>11</number>
+            </property>
+            <property name="rightMargin" >
+             <number>11</number>
+            </property>
+            <property name="bottomMargin" >
+             <number>11</number>
+            </property>
+            <item>
+             <widget class="QToolButton" name="pbnAddValuesManually" >
+              <property name="toolTip" >
+               <string>Add Values Manually</string>
+              </property>
+              <property name="text" >
+               <string>...</string>
+              </property>
+              <property name="icon" >
+               <iconset>../../images/themes/default/mActionNewAttribute.png</iconset>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QToolButton" name="pbnAddValuesFromDisplay" >
+              <property name="enabled" >
+               <bool>false</bool>
+              </property>
+              <property name="toolTip" >
+               <string>Add Values From Display</string>
+              </property>
+              <property name="text" >
+               <string>...</string>
+              </property>
+              <property name="icon" >
+               <iconset>../../images/themes/default/mActionContextHelp.png</iconset>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QToolButton" name="pbnRemoveSelectedRow" >
+              <property name="toolTip" >
+               <string>Remove Selected Row</string>
+              </property>
+              <property name="text" >
+               <string>...</string>
+              </property>
+              <property name="icon" >
+               <iconset>../../images/themes/default/mActionDeleteAttribute.png</iconset>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QToolButton" name="pbnDefaultValues" >
+              <property name="toolTip" >
+               <string>Default Values</string>
+              </property>
+              <property name="text" >
+               <string>...</string>
+              </property>
+              <property name="icon" >
+               <iconset>../../images/themes/default/mActionCopySelected.png</iconset>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <spacer>
+              <property name="orientation" >
+               <enum>Qt::Vertical</enum>
+              </property>
+              <property name="sizeHint" >
+               <size>
+                <width>20</width>
+                <height>181</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+            <item>
+             <widget class="QToolButton" name="pbnImportTransparentPixelValues" >
+              <property name="toolTip" >
+               <string>Import From File</string>
+              </property>
+              <property name="text" >
+               <string>...</string>
+              </property>
+              <property name="icon" >
+               <iconset>../../images/themes/default/mActionFolder.png</iconset>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QToolButton" name="pbnExportTransparentPixelValues" >
+              <property name="toolTip" >
+               <string>Export To File</string>
+              </property>
+              <property name="text" >
+               <string>...</string>
+              </property>
+              <property name="icon" >
+               <iconset>../../images/themes/default/mActionFileSave.png</iconset>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+          <item row="2" column="0" >
+           <spacer>
+            <property name="orientation" >
+             <enum>Qt::Vertical</enum>
+            </property>
+            <property name="sizeHint" >
+             <size>
+              <width>20</width>
+              <height>40</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
          </layout>
         </widget>
        </item>
       </layout>
      </widget>
-     <widget class="QWidget" name="tabPageTransparency" >
+     <widget class="QWidget" name="tabPageColormap" >
       <attribute name="title" >
-       <string>Transparent Pixels</string>
+       <string>Colormap</string>
       </attribute>
       <layout class="QGridLayout" >
-       <property name="margin" >
+       <property name="leftMargin" >
         <number>11</number>
        </property>
-       <property name="spacing" >
-        <number>6</number>
+       <property name="topMargin" >
+        <number>11</number>
        </property>
-       <item row="1" column="1" >
-        <spacer>
-         <property name="orientation" >
-          <enum>Qt::Horizontal</enum>
-         </property>
-         <property name="sizeHint" >
-          <size>
-           <width>40</width>
-           <height>20</height>
-          </size>
-         </property>
-        </spacer>
-       </item>
-       <item row="3" column="0" >
-        <widget class="QComboBox" name="cboxTransparencyBand" >
-         <property name="enabled" >
-          <bool>false</bool>
-         </property>
-         <property name="sizePolicy" >
-          <sizepolicy>
-           <hsizetype>0</hsizetype>
-           <vsizetype>0</vsizetype>
-           <horstretch>0</horstretch>
-           <verstretch>0</verstretch>
-          </sizepolicy>
-         </property>
-         <property name="minimumSize" >
-          <size>
-           <width>150</width>
-           <height>0</height>
-          </size>
-         </property>
-        </widget>
-       </item>
-       <item row="2" column="0" >
-        <widget class="QLabel" name="lblTransarent" >
-         <property name="text" >
-          <string>Transparent Band:</string>
-         </property>
-        </widget>
-       </item>
-       <item row="1" column="0" >
-        <widget class="QComboBox" name="cboxTransparencyLayer" >
-         <property name="enabled" >
-          <bool>false</bool>
-         </property>
-        </widget>
-       </item>
-       <item row="4" column="0" colspan="3" >
-        <widget class="QLabel" name="label_2" >
-         <property name="text" >
-          <string>Custom Transparency List</string>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="0" >
-        <widget class="QLabel" name="label_3" >
-         <property name="text" >
-          <string>Transparency Layer;</string>
-         </property>
-        </widget>
-       </item>
-       <item row="1" column="2" colspan="2" >
-        <widget class="QLineEdit" name="leNoDataValue" />
-       </item>
-       <item row="5" column="0" colspan="3" >
-        <widget class="QTableWidget" name="tableTransparency" >
-         <property name="verticalScrollBarPolicy" >
-          <enum>Qt::ScrollBarAsNeeded</enum>
-         </property>
-         <property name="alternatingRowColors" >
-          <bool>true</bool>
-         </property>
-         <property name="selectionMode" >
-          <enum>QAbstractItemView::SingleSelection</enum>
-         </property>
-         <property name="selectionBehavior" >
-          <enum>QAbstractItemView::SelectRows</enum>
-         </property>
-         <property name="showGrid" >
-          <bool>false</bool>
-         </property>
-         <property name="rowCount" >
-          <number>0</number>
-         </property>
-         <property name="columnCount" >
-          <number>0</number>
-         </property>
-        </widget>
-       </item>
-       <item row="5" column="3" >
-        <layout class="QVBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
-         <property name="spacing" >
-          <number>6</number>
-         </property>
-         <item>
-          <widget class="QToolButton" name="pbnAddValuesManually" >
-           <property name="toolTip" >
-            <string>Add Values Manually</string>
-           </property>
-           <property name="text" >
-            <string>...</string>
-           </property>
-           <property name="icon" >
-            <iconset>../../images/themes/default/mActionNewAttribute.png</iconset>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="QToolButton" name="pbnAddValuesFromDisplay" >
-           <property name="enabled" >
-            <bool>false</bool>
-           </property>
-           <property name="toolTip" >
-            <string>Add Values From Display</string>
-           </property>
-           <property name="text" >
-            <string>...</string>
-           </property>
-           <property name="icon" >
-            <iconset>../../images/themes/default/mActionContextHelp.png</iconset>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="QToolButton" name="pbnRemoveSelectedRow" >
-           <property name="toolTip" >
-            <string>Remove Selected Row</string>
-           </property>
-           <property name="text" >
-            <string>...</string>
-           </property>
-           <property name="icon" >
-            <iconset>../../images/themes/default/mActionDeleteAttribute.png</iconset>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="QToolButton" name="pbnDefaultValues" >
-           <property name="toolTip" >
-            <string>Default Values</string>
-           </property>
-           <property name="text" >
-            <string>...</string>
-           </property>
-           <property name="icon" >
-            <iconset>../../images/themes/default/mActionCopySelected.png</iconset>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <spacer>
-           <property name="orientation" >
-            <enum>Qt::Vertical</enum>
-           </property>
-           <property name="sizeHint" >
-            <size>
-             <width>20</width>
-             <height>181</height>
-            </size>
-           </property>
-          </spacer>
-         </item>
-         <item>
-          <widget class="QToolButton" name="pbnImportTransparentPixelValues" >
-           <property name="toolTip" >
-            <string>Import From File</string>
-           </property>
-           <property name="text" >
-            <string>...</string>
-           </property>
-           <property name="icon" >
-            <iconset>../../images/themes/default/mActionFolder.png</iconset>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="QToolButton" name="pbnExportTransparentPixelValues" >
-           <property name="toolTip" >
-            <string>Export To File</string>
-           </property>
-           <property name="text" >
-            <string>...</string>
-           </property>
-           <property name="icon" >
-            <iconset>../../images/themes/default/mActionFileSave.png</iconset>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </item>
-       <item row="0" column="2" >
-        <widget class="QLabel" name="textLabel2_4_3" >
-         <property name="text" >
-          <string>No Data Value:</string>
-         </property>
-         <property name="buddy" >
-          <cstring>sliderTransparency</cstring>
-         </property>
-        </widget>
-       </item>
-       <item row="2" column="2" >
-        <widget class="QCheckBox" name="chkboxResetNoDataValue" >
-         <property name="text" >
-          <string>Reset No Data Value</string>
-         </property>
-        </widget>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="tabPageColormap" >
-      <attribute name="title" >
-       <string>Colormap</string>
-      </attribute>
-      <layout class="QGridLayout" >
-       <property name="margin" >
+       <property name="rightMargin" >
         <number>11</number>
        </property>
-       <property name="spacing" >
+       <property name="bottomMargin" >
+        <number>11</number>
+       </property>
+       <property name="horizontalSpacing" >
         <number>6</number>
        </property>
+       <property name="verticalSpacing" >
+        <number>6</number>
+       </property>
        <item row="0" column="2" >
         <spacer>
          <property name="orientation" >
@@ -1248,12 +1368,21 @@
        </item>
        <item row="0" column="0" colspan="2" >
         <layout class="QHBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
          <property name="spacing" >
           <number>6</number>
          </property>
+         <property name="leftMargin" >
+          <number>11</number>
+         </property>
+         <property name="topMargin" >
+          <number>11</number>
+         </property>
+         <property name="rightMargin" >
+          <number>11</number>
+         </property>
+         <property name="bottomMargin" >
+          <number>11</number>
+         </property>
          <item>
           <widget class="QLabel" name="mNumberOfEntriesLabel" >
            <property name="text" >
@@ -1264,9 +1393,7 @@
          <item>
           <widget class="QSpinBox" name="sboxNumberOfEntries" >
            <property name="sizePolicy" >
-            <sizepolicy>
-             <hsizetype>0</hsizetype>
-             <vsizetype>0</vsizetype>
+            <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
              <horstretch>0</horstretch>
              <verstretch>0</verstretch>
             </sizepolicy>
@@ -1326,12 +1453,21 @@
        </item>
        <item row="0" column="3" >
         <layout class="QHBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
          <property name="spacing" >
           <number>6</number>
          </property>
+         <property name="leftMargin" >
+          <number>11</number>
+         </property>
+         <property name="topMargin" >
+          <number>11</number>
+         </property>
+         <property name="rightMargin" >
+          <number>11</number>
+         </property>
+         <property name="bottomMargin" >
+          <number>11</number>
+         </property>
          <item>
           <widget class="QLabel" name="mColorInterpolationLabel" >
            <property name="text" >
@@ -1346,12 +1482,21 @@
        </item>
        <item row="1" column="3" >
         <layout class="QHBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
          <property name="spacing" >
           <number>6</number>
          </property>
+         <property name="leftMargin" >
+          <number>11</number>
+         </property>
+         <property name="topMargin" >
+          <number>11</number>
+         </property>
+         <property name="rightMargin" >
+          <number>11</number>
+         </property>
+         <property name="bottomMargin" >
+          <number>11</number>
+         </property>
          <item>
           <widget class="QLabel" name="mClassificationModeLabel" >
            <property name="text" >
@@ -1371,24 +1516,48 @@
        <string>General</string>
       </attribute>
       <layout class="QGridLayout" >
-       <property name="margin" >
+       <property name="leftMargin" >
         <number>11</number>
        </property>
-       <property name="spacing" >
+       <property name="topMargin" >
+        <number>11</number>
+       </property>
+       <property name="rightMargin" >
+        <number>11</number>
+       </property>
+       <property name="bottomMargin" >
+        <number>11</number>
+       </property>
+       <property name="horizontalSpacing" >
         <number>6</number>
        </property>
+       <property name="verticalSpacing" >
+        <number>6</number>
+       </property>
        <item row="4" column="0" colspan="3" >
         <widget class="QGroupBox" name="grpSRS" >
          <property name="title" >
           <string>Spatial Reference System</string>
          </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
+          <property name="leftMargin" >
            <number>11</number>
           </property>
-          <property name="spacing" >
+          <property name="topMargin" >
+           <number>11</number>
+          </property>
+          <property name="rightMargin" >
+           <number>11</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>11</number>
+          </property>
+          <property name="horizontalSpacing" >
            <number>6</number>
           </property>
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
           <item row="0" column="1" >
            <widget class="QPushButton" name="pbnChangeSpatialRefSys" >
             <property name="text" >
@@ -1415,23 +1584,35 @@
           <bool>true</bool>
          </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
+          <property name="leftMargin" >
            <number>11</number>
           </property>
-          <property name="spacing" >
+          <property name="topMargin" >
+           <number>11</number>
+          </property>
+          <property name="rightMargin" >
+           <number>11</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>11</number>
+          </property>
+          <property name="horizontalSpacing" >
            <number>6</number>
           </property>
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
           <item row="0" column="3" >
            <widget class="QSpinBox" name="spinMaximumScale" >
             <property name="toolTip" >
              <string>Maximum scale at which this layer will be displayed. </string>
             </property>
+            <property name="minimum" >
+             <number>1</number>
+            </property>
             <property name="maximum" >
              <number>100000000</number>
             </property>
-            <property name="minimum" >
-             <number>1</number>
-            </property>
            </widget>
           </item>
           <item row="0" column="2" >
@@ -1449,12 +1630,12 @@
             <property name="toolTip" >
              <string>Minimum scale at which this layer will be displayed. </string>
             </property>
+            <property name="minimum" >
+             <number>1</number>
+            </property>
             <property name="maximum" >
              <number>100000000</number>
             </property>
-            <property name="minimum" >
-             <number>1</number>
-            </property>
            </widget>
           </item>
           <item row="0" column="0" >
@@ -1479,12 +1660,21 @@
        </item>
        <item row="2" column="2" >
         <layout class="QHBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
          <property name="spacing" >
           <number>6</number>
          </property>
+         <property name="leftMargin" >
+          <number>11</number>
+         </property>
+         <property name="topMargin" >
+          <number>11</number>
+         </property>
+         <property name="rightMargin" >
+          <number>11</number>
+         </property>
+         <property name="bottomMargin" >
+          <number>11</number>
+         </property>
          <item>
           <widget class="QLabel" name="lblColumns" >
            <property name="text" >
@@ -1540,12 +1730,21 @@
        </item>
        <item row="5" column="0" colspan="3" >
         <layout class="QHBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
          <property name="spacing" >
           <number>6</number>
          </property>
+         <property name="leftMargin" >
+          <number>11</number>
+         </property>
+         <property name="topMargin" >
+          <number>11</number>
+         </property>
+         <property name="rightMargin" >
+          <number>11</number>
+         </property>
+         <property name="bottomMargin" >
+          <number>11</number>
+         </property>
          <item>
           <widget class="Q3GroupBox" name="groupBox10" >
            <property name="title" >
@@ -1555,12 +1754,24 @@
             <enum>Qt::Vertical</enum>
            </property>
            <layout class="QGridLayout" >
-            <property name="margin" >
+            <property name="leftMargin" >
              <number>11</number>
             </property>
-            <property name="spacing" >
+            <property name="topMargin" >
+             <number>11</number>
+            </property>
+            <property name="rightMargin" >
+             <number>11</number>
+            </property>
+            <property name="bottomMargin" >
+             <number>11</number>
+            </property>
+            <property name="horizontalSpacing" >
              <number>6</number>
             </property>
+            <property name="verticalSpacing" >
+             <number>6</number>
+            </property>
             <item row="0" column="0" >
              <spacer>
               <property name="orientation" >
@@ -1605,12 +1816,24 @@
             <enum>Qt::Vertical</enum>
            </property>
            <layout class="QGridLayout" >
-            <property name="margin" >
+            <property name="leftMargin" >
              <number>11</number>
             </property>
-            <property name="spacing" >
+            <property name="topMargin" >
+             <number>11</number>
+            </property>
+            <property name="rightMargin" >
+             <number>11</number>
+            </property>
+            <property name="bottomMargin" >
+             <number>11</number>
+            </property>
+            <property name="horizontalSpacing" >
              <number>6</number>
             </property>
+            <property name="verticalSpacing" >
+             <number>6</number>
+            </property>
             <item row="0" column="0" >
              <spacer>
               <property name="orientation" >
@@ -1655,12 +1878,24 @@
             <enum>Qt::Vertical</enum>
            </property>
            <layout class="QGridLayout" >
-            <property name="margin" >
+            <property name="leftMargin" >
              <number>11</number>
             </property>
-            <property name="spacing" >
+            <property name="topMargin" >
+             <number>11</number>
+            </property>
+            <property name="rightMargin" >
+             <number>11</number>
+            </property>
+            <property name="bottomMargin" >
+             <number>11</number>
+            </property>
+            <property name="horizontalSpacing" >
              <number>6</number>
             </property>
+            <property name="verticalSpacing" >
+             <number>6</number>
+            </property>
             <item row="0" column="0" >
              <spacer>
               <property name="orientation" >
@@ -1705,12 +1940,24 @@
        <string>Metadata</string>
       </attribute>
       <layout class="QGridLayout" >
-       <property name="margin" >
+       <property name="leftMargin" >
         <number>11</number>
        </property>
-       <property name="spacing" >
+       <property name="topMargin" >
+        <number>11</number>
+       </property>
+       <property name="rightMargin" >
+        <number>11</number>
+       </property>
+       <property name="bottomMargin" >
+        <number>11</number>
+       </property>
+       <property name="horizontalSpacing" >
         <number>6</number>
        </property>
+       <property name="verticalSpacing" >
+        <number>6</number>
+       </property>
        <item row="0" column="0" >
         <widget class="QTextBrowser" name="txtbMetadata" />
        </item>
@@ -1721,24 +1968,37 @@
        <string>Pyramids</string>
       </attribute>
       <layout class="QGridLayout" >
-       <property name="margin" >
+       <property name="leftMargin" >
         <number>9</number>
        </property>
-       <property name="spacing" >
+       <property name="topMargin" >
+        <number>9</number>
+       </property>
+       <property name="rightMargin" >
+        <number>9</number>
+       </property>
+       <property name="bottomMargin" >
+        <number>9</number>
+       </property>
+       <property name="horizontalSpacing" >
         <number>6</number>
        </property>
+       <property name="verticalSpacing" >
+        <number>6</number>
+       </property>
        <item rowspan="2" row="0" column="0" >
         <widget class="QTextEdit" name="tePyramidDescription" >
          <property name="sizePolicy" >
-          <sizepolicy>
-           <hsizetype>7</hsizetype>
-           <vsizetype>7</vsizetype>
+          <sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
            <horstretch>5</horstretch>
            <verstretch>0</verstretch>
           </sizepolicy>
          </property>
          <property name="html" >
-          <string></string>
+          <string>&lt;html>&lt;head>&lt;meta name="qrichtext" content="1" />&lt;style type="text/css">
+p, li { white-space: pre-wrap; }
+&lt;/style>&lt;/head>&lt;body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;">
+&lt;p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">&lt;/p>&lt;/body>&lt;/html></string>
          </property>
         </widget>
        </item>
@@ -1752,9 +2012,7 @@
        <item row="1" column="1" >
         <widget class="Q3ListBox" name="lbxPyramidResolutions" >
          <property name="sizePolicy" >
-          <sizepolicy>
-           <hsizetype>5</hsizetype>
-           <vsizetype>7</vsizetype>
+          <sizepolicy vsizetype="Expanding" hsizetype="Preferred" >
            <horstretch>0</horstretch>
            <verstretch>0</verstretch>
           </sizepolicy>
@@ -1772,12 +2030,21 @@
        </item>
        <item row="2" column="0" colspan="2" >
         <layout class="QHBoxLayout" >
-         <property name="margin" >
-          <number>11</number>
-         </property>
          <property name="spacing" >
           <number>6</number>
          </property>
+         <property name="leftMargin" >
+          <number>11</number>
+         </property>
+         <property name="topMargin" >
+          <number>11</number>
+         </property>
+         <property name="rightMargin" >
+          <number>11</number>
+         </property>
+         <property name="bottomMargin" >
+          <number>11</number>
+         </property>
          <item>
           <spacer>
            <property name="orientation" >
@@ -1834,18 +2101,28 @@
        <string>Histogram</string>
       </attribute>
       <layout class="QGridLayout" >
-       <property name="margin" >
+       <property name="leftMargin" >
         <number>11</number>
        </property>
-       <property name="spacing" >
+       <property name="topMargin" >
+        <number>11</number>
+       </property>
+       <property name="rightMargin" >
+        <number>11</number>
+       </property>
+       <property name="bottomMargin" >
+        <number>11</number>
+       </property>
+       <property name="horizontalSpacing" >
         <number>6</number>
        </property>
+       <property name="verticalSpacing" >
+        <number>6</number>
+       </property>
        <item row="0" column="0" colspan="2" >
         <widget class="QLabel" name="pixHistogram" >
          <property name="sizePolicy" >
-          <sizepolicy>
-           <hsizetype>7</hsizetype>
-           <vsizetype>0</vsizetype>
+          <sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
            <horstretch>0</horstretch>
            <verstretch>0</verstretch>
           </sizepolicy>
@@ -1870,9 +2147,7 @@
        <item row="1" column="0" >
         <widget class="QGroupBox" name="grpHistCharType" >
          <property name="sizePolicy" >
-          <sizepolicy>
-           <hsizetype>7</hsizetype>
-           <vsizetype>0</vsizetype>
+          <sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
            <horstretch>0</horstretch>
            <verstretch>0</verstretch>
           </sizepolicy>
@@ -1881,12 +2156,24 @@
           <string>Chart Type</string>
          </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
+          <property name="leftMargin" >
            <number>11</number>
           </property>
-          <property name="spacing" >
+          <property name="topMargin" >
+           <number>11</number>
+          </property>
+          <property name="rightMargin" >
+           <number>11</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>11</number>
+          </property>
+          <property name="horizontalSpacing" >
            <number>6</number>
           </property>
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
           <item row="0" column="1" >
            <widget class="QRadioButton" name="radHistTypeLine" >
             <property name="text" >
@@ -1920,12 +2207,24 @@
           <string>Options</string>
          </property>
          <layout class="QGridLayout" >
-          <property name="margin" >
+          <property name="leftMargin" >
            <number>11</number>
           </property>
-          <property name="spacing" >
+          <property name="topMargin" >
+           <number>11</number>
+          </property>
+          <property name="rightMargin" >
+           <number>11</number>
+          </property>
+          <property name="bottomMargin" >
+           <number>11</number>
+          </property>
+          <property name="horizontalSpacing" >
            <number>6</number>
           </property>
+          <property name="verticalSpacing" >
+           <number>6</number>
+          </property>
           <item row="0" column="0" >
            <widget class="QLabel" name="textLabel1_2" >
             <property name="text" >
@@ -1952,12 +2251,12 @@
           </item>
           <item row="0" column="1" >
            <widget class="QSpinBox" name="spinHistBinCount" >
+            <property name="minimum" >
+             <number>8</number>
+            </property>
             <property name="maximum" >
              <number>1024</number>
             </property>
-            <property name="minimum" >
-             <number>8</number>
-            </property>
             <property name="singleStep" >
              <number>8</number>
             </property>
@@ -2007,11 +2306,6 @@
    <container>1</container>
   </customwidget>
   <customwidget>
-   <class>Q3TextEdit</class>
-   <extends>Q3Frame</extends>
-   <header>q3textedit.h</header>
-  </customwidget>
-  <customwidget>
    <class>Q3ListBox</class>
    <extends>Q3Frame</extends>
    <header>q3listbox.h</header>
@@ -2020,7 +2314,6 @@
  <tabstops>
   <tabstop>tabBar</tabstop>
   <tabstop>cboxInvertColorMap</tabstop>
-  <tabstop>sliderTransparency</tabstop>
   <tabstop>cboRed</tabstop>
   <tabstop>cboGreen</tabstop>
   <tabstop>cboBlue</tabstop>



More information about the QGIS-commit mailing list