[QGIS Commit] r14425 - in trunk/qgis/src: app plugins/georeferencer
ui
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Thu Oct 21 08:38:18 EDT 2010
Author: timlinux
Date: 2010-10-21 05:38:18 -0700 (Thu, 21 Oct 2010)
New Revision: 14425
Modified:
trunk/qgis/src/app/CMakeLists.txt
trunk/qgis/src/app/qgsrasterlayerproperties.cpp
trunk/qgis/src/app/qgsrasterlayerproperties.h
trunk/qgis/src/plugins/georeferencer/CMakeLists.txt
trunk/qgis/src/ui/qgsrasterlayerpropertiesbase.ui
Log:
Fix crash in raster props when histogram tab is last used and props dialog is opened.
Modified: trunk/qgis/src/app/CMakeLists.txt
===================================================================
--- trunk/qgis/src/app/CMakeLists.txt 2010-10-21 08:29:22 UTC (rev 14424)
+++ trunk/qgis/src/app/CMakeLists.txt 2010-10-21 12:38:18 UTC (rev 14425)
@@ -323,6 +323,7 @@
${CMAKE_CURRENT_SOURCE_DIR} composer legend attributetable
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}/../ui
+ ${QWT_INCLUDE_DIR}
${QT_QTUITOOLS_INCLUDE_DIR}
../core
../core/gps ../core/gps/qextserialport
Modified: trunk/qgis/src/app/qgsrasterlayerproperties.cpp
===================================================================
--- trunk/qgis/src/app/qgsrasterlayerproperties.cpp 2010-10-21 08:29:22 UTC (rev 14424)
+++ trunk/qgis/src/app/qgsrasterlayerproperties.cpp 2010-10-21 12:38:18 UTC (rev 14425)
@@ -66,8 +66,7 @@
: QDialog( parent, fl ),
// Constant that signals property not used.
TRSTRING_NOT_SET( tr( "Not Set" ) ),
- mRasterLayer( qobject_cast<QgsRasterLayer *>( lyr ) ),
- mpPlot( 0 )
+ mRasterLayer( qobject_cast<QgsRasterLayer *>( lyr ) )
{
ignoreSpinBoxEvent = false; //Short circuit signal loop between min max field and stdDev spin box
mGrayMinimumMaximumEstimated = true;
@@ -276,9 +275,11 @@
listWidget->setCurrentRow( settings.value( "/Windows/RasterLayerProperties/row" ).toInt() );
setWindowTitle( tr( "Layer Properties - %1" ).arg( lyr->name() ) );
- mpHistogramLayout = new QVBoxLayout( mChartWidget );
- mpHistogramLayout->setContentsMargins( 0, 0, 0, 0 );
- mChartWidget->setLayout( mpHistogramLayout );
+ int myHistogramTab = 6;
+ if ( tabBar->currentIndex() == myHistogramTab )
+ {
+ refreshHistogram();
+ }
} // QgsRasterLayerProperties ctor
@@ -1855,18 +1856,13 @@
void QgsRasterLayerProperties::refreshHistogram()
{
- if ( mpPlot != 0 )
- {
- delete mpPlot;
- }
+ mpPlot->clear();
mHistogramProgress->show();
connect( mRasterLayer, SIGNAL( progressUpdate( int ) ), mHistogramProgress, SLOT( setValue( int ) ) );
QApplication::setOverrideCursor( Qt::WaitCursor );
QgsDebugMsg( "entered." );
- mpPlot = new QwtPlot( mChartWidget );
//ensure all children get removed
mpPlot->setAutoDelete( true );
- mpHistogramLayout->addWidget( mpPlot );
mpPlot->setTitle( QObject::tr( "Raster Histogram") );
mpPlot->insertLegend( new QwtLegend(), QwtPlot::BottomLegend );
// Set axis titles
Modified: trunk/qgis/src/app/qgsrasterlayerproperties.h
===================================================================
--- trunk/qgis/src/app/qgsrasterlayerproperties.h 2010-10-21 08:29:22 UTC (rev 14424)
+++ trunk/qgis/src/app/qgsrasterlayerproperties.h 2010-10-21 12:38:18 UTC (rev 14425)
@@ -26,12 +26,10 @@
#include "qgscolorrampshader.h"
#include "qgscontexthelp.h"
-class QVBoxLayout;
class QgsMapLayer;
class QgsMapCanvas;
class QgsRasterLayer;
class QgsPixelSelectorTool;
-class QwtPlot;
/**Property sheet for a raster map layer
*@author Tim Sutton
@@ -221,8 +219,6 @@
QgsMapCanvas* mMapCanvas;
QgsPixelSelectorTool* mPixelSelectorTool;
- QwtPlot * mpPlot;
- QVBoxLayout *mpHistogramLayout;
};
/**
Modified: trunk/qgis/src/plugins/georeferencer/CMakeLists.txt
===================================================================
--- trunk/qgis/src/plugins/georeferencer/CMakeLists.txt 2010-10-21 08:29:22 UTC (rev 14424)
+++ trunk/qgis/src/plugins/georeferencer/CMakeLists.txt 2010-10-21 12:38:18 UTC (rev 14425)
@@ -76,6 +76,7 @@
${GDAL_INCLUDE_DIR}
${GEOS_INCLUDE_DIR}
${QT_QTXML_INCLUDE_DIR}
+ ${QWT_INCLUDE_DIR}
)
TARGET_LINK_LIBRARIES(georefplugin
Modified: trunk/qgis/src/ui/qgsrasterlayerpropertiesbase.ui
===================================================================
--- trunk/qgis/src/ui/qgsrasterlayerpropertiesbase.ui 2010-10-21 08:29:22 UTC (rev 14424)
+++ trunk/qgis/src/ui/qgsrasterlayerpropertiesbase.ui 2010-10-21 12:38:18 UTC (rev 14425)
@@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>755</width>
- <height>618</height>
+ <height>605</height>
</rect>
</property>
<property name="windowTitle">
@@ -66,7 +66,7 @@
<item row="0" column="1" colspan="4">
<widget class="QStackedWidget" name="tabBar">
<property name="currentIndex">
- <number>0</number>
+ <number>6</number>
</property>
<widget class="QWidget" name="tabPageSymbology">
<layout class="QGridLayout">
@@ -1765,6 +1765,7 @@
<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;"></p>
<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;"></p>
<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;"></p>
+<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;"></p>
<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; font-family:'Sans Serif'; font-size:9pt;"></p></td></tr></table></body></html></string>
</property>
</widget>
@@ -1834,30 +1835,17 @@
</widget>
<widget class="QWidget" name="tabPageHistogram">
<layout class="QGridLayout" name="gridLayout_4">
- <item row="0" column="0" colspan="3">
- <widget class="QWidget" name="mChartWidget" native="true">
- <property name="sizePolicy">
- <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="maximumSize">
- <size>
- <width>16777215</width>
- <height>16777215</height>
- </size>
- </property>
- </widget>
+ <item row="0" column="0" colspan="2">
+ <widget class="QwtPlot" name="mpPlot"/>
</item>
- <item row="1" column="1">
+ <item row="1" column="0">
<widget class="QProgressBar" name="mHistogramProgress">
<property name="value">
<number>0</number>
</property>
</widget>
</item>
- <item row="1" column="2">
+ <item row="1" column="1">
<widget class="QToolButton" name="mSaveAsImageButton">
<property name="text">
<string>Save as image...</string>
@@ -2046,6 +2034,13 @@
</layout>
</widget>
<layoutdefault spacing="6" margin="11"/>
+ <customwidgets>
+ <customwidget>
+ <class>QwtPlot</class>
+ <extends>QFrame</extends>
+ <header>qwt_plot.h</header>
+ </customwidget>
+ </customwidgets>
<tabstops>
<tabstop>tabBar</tabstop>
<tabstop>cboRed</tabstop>
More information about the QGIS-commit
mailing list