QGIS API Documentation  2.99.0-Master (69af2f5)
qgsscalerangewidget.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsscalerangewidget.h
3  --------------------------------------
4  Date : 25.04.2014
5  Copyright : (C) 2014 Denis Rouzaud
6  Email : [email protected]
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15 
16 #ifndef QGSSCALERANGEWIDGET_H
17 #define QGSSCALERANGEWIDGET_H
18 
19 #include <QGridLayout>
20 #include "qgis.h"
21 #include <QLabel>
22 #include "qgis_gui.h"
23 
24 class QgsMapCanvas;
25 class QgsScaleWidget;
26 
32 class GUI_EXPORT QgsScaleRangeWidget : public QWidget
33 {
34  Q_OBJECT
35  Q_PROPERTY( double minimumScale READ minimumScale WRITE setMinimumScale )
36  Q_PROPERTY( double maximumScale READ maximumScale WRITE setMaximumScale )
37 
38  public:
39 
43  explicit QgsScaleRangeWidget( QWidget *parent SIP_TRANSFERTHIS = 0 );
44 
49  void setMapCanvas( QgsMapCanvas *canvas );
50 
57  double minimumScale() const;
58 
65  double maximumScale() const;
66 
70  void reloadProjectScales();
71 
72  public slots:
73 
81  void setMinimumScale( double scale );
82 
90  void setMaximumScale( double scale );
91 
99  void setScaleRange( double min, double max );
100 
101  signals:
102 
109  void rangeChanged( double min, double max );
110 
111  private slots:
112 
113  void emitRangeChanged();
114 
115  private:
117  QgsMapCanvas *mCanvas = nullptr;
118 
119  // ui
120  QGridLayout *mLayout = nullptr;
121  QLabel *mMaximumScaleIconLabel = nullptr;
122  QLabel *mMinimumScaleIconLabel = nullptr;
123  QgsScaleWidget *mMaximumScaleWidget = nullptr;
124  QgsScaleWidget *mMinimumScaleWidget = nullptr;
125 };
126 
127 #endif // QGSSCALERANGEWIDGET_H
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:34
A combobox which lets the user select map scale from predefined list and highlights nearest to curren...
Map canvas is a class for displaying all GIS data types on a canvas.
Definition: qgsmapcanvas.h:73
double ANALYSIS_EXPORT min(double x, double y)
Returns the minimum of two doubles or the first argument if both are equal.
Definition: MathUtils.cc:452
double ANALYSIS_EXPORT max(double x, double y)
Returns the maximum of two doubles or the first argument if both are equal.
Definition: MathUtils.cc:437
A widget allowing entry of a range of map scales, e.g.