71
71
#include < qwt_plot_marker.h>
72
72
#include < qwt_plot_picker.h>
73
73
#include < qwt_picker_machine.h>
74
+ #include < qwt_plot_zoomer.h>
74
75
75
76
QgsRasterLayerProperties::QgsRasterLayerProperties ( QgsMapLayer* lyr, QgsMapCanvas* theCanvas, QWidget *parent, Qt::WFlags fl )
76
77
: QDialog( parent, fl ),
@@ -299,6 +300,7 @@ QgsRasterLayerProperties::QgsRasterLayerProperties( QgsMapLayer* lyr, QgsMapCanv
299
300
300
301
// histogram
301
302
mHistoPicker = NULL ;
303
+ mHistoZoomer = NULL ;
302
304
mHistoMarkerMin = NULL ;
303
305
mHistoMarkerMax = NULL ;
304
306
if ( tabPageHistogram->isEnabled () )
@@ -1392,10 +1394,21 @@ void QgsRasterLayerProperties::refreshHistogram()
1392
1394
connect ( mHistoPicker , SIGNAL ( selected ( const QwtDoublePoint & ) ), this , SLOT ( histoPickerSelected ( const QwtDoublePoint & ) ) );
1393
1395
}
1394
1396
1397
+ // plot zoomer
1398
+ if ( ! mHistoZoomer )
1399
+ {
1400
+ mHistoZoomer = new QwtPlotZoomer ( mpPlot->canvas () );
1401
+ mHistoZoomer ->setSelectionFlags ( QwtPicker::RectSelection | QwtPicker::DragSelection );
1402
+ mHistoZoomer ->setTrackerMode ( QwtPicker::AlwaysOff );
1403
+ mHistoZoomer ->setEnabled ( true );
1404
+ }
1405
+
1395
1406
disconnect ( mRasterLayer , SIGNAL ( progressUpdate ( int ) ), mHistogramProgress , SLOT ( setValue ( int ) ) );
1396
1407
// mHistogramProgress->hide();
1397
1408
stackedWidget2->setCurrentIndex ( 0 );
1398
- mpPlot->canvas ()->setCursor ( Qt::ArrowCursor );
1409
+ // mpPlot->canvas()->setCursor( Qt::ArrowCursor );
1410
+ // icon from http://findicons.com/icon/169577/14_zoom?id=171427
1411
+ mpPlot->canvas ()->setCursor ( QCursor ( QgisApp::getThemePixmap ( " /mIconZoom.png" ) ) );
1399
1412
on_cboHistoBand_currentIndexChanged ( -1 );
1400
1413
QApplication::restoreOverrideCursor ();
1401
1414
}
@@ -1777,6 +1790,8 @@ void QgsRasterLayerProperties::on_cboHistoBand_currentIndexChanged( int index )
1777
1790
mHistoPicker ->setEnabled ( false );
1778
1791
mHistoPicker ->setRubberBandPen ( QPen ( mHistoColors .at ( index + 1 ) ) );
1779
1792
}
1793
+ if ( mHistoZoomer != NULL )
1794
+ mHistoZoomer ->setEnabled ( true );
1780
1795
btnHistoMin->setEnabled ( true );
1781
1796
btnHistoMax->setEnabled ( true );
1782
1797
@@ -1989,6 +2004,8 @@ void QgsRasterLayerProperties::on_btnHistoMin_toggled()
1989
2004
btnHistoMax->setChecked ( false );
1990
2005
QApplication::setOverrideCursor ( Qt::PointingHandCursor );
1991
2006
}
2007
+ if ( mHistoZoomer != NULL )
2008
+ mHistoZoomer ->setEnabled ( ! btnHistoMax->isChecked () );
1992
2009
mHistoPicker ->setEnabled ( btnHistoMin->isChecked () );
1993
2010
}
1994
2011
}
@@ -2004,6 +2021,8 @@ void QgsRasterLayerProperties::on_btnHistoMax_toggled()
2004
2021
btnHistoMin->setChecked ( false );
2005
2022
QApplication::setOverrideCursor ( Qt::PointingHandCursor );
2006
2023
}
2024
+ if ( mHistoZoomer != NULL )
2025
+ mHistoZoomer ->setEnabled ( ! btnHistoMax->isChecked () );
2007
2026
mHistoPicker ->setEnabled ( btnHistoMax->isChecked () );
2008
2027
}
2009
2028
}
0 commit comments