mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-25 00:58:06 -05:00
52 lines
1.6 KiB
Plaintext
52 lines
1.6 KiB
Plaintext
|
|
/** A combobox which lets the user select map scale from predefined list
|
|
* and highlights nearest to current scale value
|
|
*/
|
|
class QgsScaleWidget : QWidget
|
|
{
|
|
%TypeHeaderCode
|
|
#include <qgsscalewidget.h>
|
|
%End
|
|
|
|
public:
|
|
QgsScaleWidget( QWidget* parent /TransferThis/ = 0 );
|
|
~QgsScaleWidget();
|
|
|
|
//! shows a button to set the scale to the current scale of the map canvas next to the combobox
|
|
//! @note the map canvas must be defined to show the button
|
|
void setShowCurrentScaleButton( bool showCurrentScaleButton );
|
|
bool showCurrentScaleButton();
|
|
|
|
//! set the map canvas associated to the current button
|
|
void setMapCanvas( QgsMapCanvas* canvas );
|
|
|
|
//! Function to read the selected scale as text
|
|
QString scaleString();
|
|
//! Function to set the selected scale from text
|
|
bool setScaleString( QString scaleTxt );
|
|
//! Function to read the selected scale as double
|
|
double scale();
|
|
//! Function to set the selected scale from double
|
|
void setScale( double scale );
|
|
|
|
//! Helper function to convert a double to scale string
|
|
// Performs rounding, so an exact representation is not to
|
|
// be expected.
|
|
static QString toString( double scale );
|
|
//! Helper function to convert a scale string to double
|
|
static double toDouble( QString scaleString, bool *ok = 0 );
|
|
|
|
public slots:
|
|
void updateScales( const QStringList &scales = QStringList() );
|
|
|
|
//! assign the current scale from the map canvas
|
|
void setScaleFromCanvas();
|
|
|
|
signals:
|
|
//! Signal is emitted when *user* has finished editing/selecting a new scale.
|
|
void scaleChanged();
|
|
|
|
|
|
};
|
|
|