QGIS API Documentation  3.20.0-Odense (decaadbb31)
Public Slots | Signals | Public Member Functions | Static Public Member Functions | Protected Member Functions | Properties | List of all members
QgsScaleComboBox Class Reference

A combobox which lets the user select map scale from predefined list and highlights nearest to current scale value. More...

#include <qgsscalecombobox.h>

Inheritance diagram for QgsScaleComboBox:
Inheritance graph
[legend]

Public Slots

void setMinScale (double scale)
 Set the minimum allowed scale. More...
 
void setNull ()
 Sets the combo box to the null value. More...
 
void setScale (double scale)
 Set the selected scale from a double. More...
 
void updateScales (const QStringList &scales=QStringList())
 Sets the list of predefined scales to show in the combobox. More...
 

Signals

void scaleChanged (double scale)
 Emitted when user has finished editing/selecting a new scale. More...
 

Public Member Functions

 QgsScaleComboBox (QWidget *parent=nullptr)
 Constructor for QgsScaleComboBox. More...
 
bool allowNull () const
 Returns true if the combobox can be set to a NULL value. More...
 
bool isNull () const
 Returns true if the combo box is currently set to a "null" value. More...
 
double minScale () const
 Returns the minimum scale, or 0 if no minimum scale set. More...
 
double scale () const
 Returns the selected scale as a double. More...
 
QString scaleString () const
 Returns the selected scale as a string, e.g. More...
 
void setAllowNull (bool allowNull)
 Sets whether the scale combobox can be set to a NULL value. More...
 
bool setScaleString (const QString &string)
 Set the selected scale from a string, e.g. More...
 

Static Public Member Functions

static double toDouble (const QString &string, bool *ok=nullptr)
 Helper function to convert a scale string to double. More...
 
static QString toString (double scale)
 Helper function to convert a scale double to scale string. More...
 

Protected Member Functions

void showPopup () override
 

Properties

double minScale
 
double scale
 

Detailed Description

A combobox which lets the user select map scale from predefined list and highlights nearest to current scale value.

Definition at line 30 of file qgsscalecombobox.h.

Constructor & Destructor Documentation

◆ QgsScaleComboBox()

QgsScaleComboBox::QgsScaleComboBox ( QWidget *  parent = nullptr)

Constructor for QgsScaleComboBox.

Definition at line 27 of file qgsscalecombobox.cpp.

Member Function Documentation

◆ allowNull()

bool QgsScaleComboBox::allowNull ( ) const

Returns true if the combobox can be set to a NULL value.

See also
setAllowNull()
isNull()
setNull()
Since
QGIS 3.8

Definition at line 270 of file qgsscalecombobox.cpp.

◆ isNull()

bool QgsScaleComboBox::isNull ( ) const

Returns true if the combo box is currently set to a "null" value.

See also
setAllowNull()
setNull()
Since
QGIS 3.8

Definition at line 163 of file qgsscalecombobox.cpp.

◆ minScale()

double QgsScaleComboBox::minScale ( ) const
inline

Returns the minimum scale, or 0 if no minimum scale set.

The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map. Any scale lower than the minimum scale will automatically be converted to the minimum scale. Except for 0 which is always allowed.

Definition at line 77 of file qgsscalecombobox.h.

◆ scale()

double QgsScaleComboBox::scale ( ) const

Returns the selected scale as a double.

The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.

See also
setScale()

Definition at line 158 of file qgsscalecombobox.cpp.

◆ scaleChanged

void QgsScaleComboBox::scaleChanged ( double  scale)
signal

Emitted when user has finished editing/selecting a new scale.

The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.

◆ scaleString()

QString QgsScaleComboBox::scaleString ( ) const

Returns the selected scale as a string, e.g.

"1:150".

See also
setScaleString()

Definition at line 115 of file qgsscalecombobox.cpp.

◆ setAllowNull()

void QgsScaleComboBox::setAllowNull ( bool  allowNull)

Sets whether the scale combobox can be set to a NULL value.

See also
allowNull()
isNull()
setNull()
Since
QGIS 3.8

Definition at line 263 of file qgsscalecombobox.cpp.

◆ setMinScale

void QgsScaleComboBox::setMinScale ( double  scale)
slot

Set the minimum allowed scale.

Set to 0 to disable the minimum scale. The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map. Any scale lower than the minimum scale will automatically be converted to the minimum scale. Except for 0 which is always allowed.

Definition at line 275 of file qgsscalecombobox.cpp.

◆ setNull

void QgsScaleComboBox::setNull ( )
slot

Sets the combo box to the null value.

This only has an effect if allowNull() is true.

See also
allowNull()
isNull()
Since
QGIS 3.8

Definition at line 284 of file qgsscalecombobox.cpp.

◆ setScale

void QgsScaleComboBox::setScale ( double  scale)
slot

Set the selected scale from a double.

The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.

See also
scale()

Definition at line 168 of file qgsscalecombobox.cpp.

◆ setScaleString()

bool QgsScaleComboBox::setScaleString ( const QString &  string)

Set the selected scale from a string, e.g.

"1:150".

See also
scaleString()

Definition at line 120 of file qgsscalecombobox.cpp.

◆ showPopup()

void QgsScaleComboBox::showPopup ( )
overrideprotected

Definition at line 83 of file qgsscalecombobox.cpp.

◆ toDouble()

double QgsScaleComboBox::toDouble ( const QString &  string,
bool *  ok = nullptr 
)
static

Helper function to convert a scale string to double.

The returned value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map. If specified, ok will be set to true if the string was successfully interpreted as a scale.

See also
toString()

Definition at line 223 of file qgsscalecombobox.cpp.

◆ toString()

QString QgsScaleComboBox::toString ( double  scale)
static

Helper function to convert a scale double to scale string.

The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.

The returned string will be rounded (e.g. 1:1000, not 1:1000.345).

See also
toDouble()

Definition at line 203 of file qgsscalecombobox.cpp.

◆ updateScales

void QgsScaleComboBox::updateScales ( const QStringList &  scales = QStringList())
slot

Sets the list of predefined scales to show in the combobox.

List elements are expected to be valid scale strings, such as "1:1000000".

Definition at line 40 of file qgsscalecombobox.cpp.

Property Documentation

◆ minScale

double QgsScaleComboBox::minScale
readwrite

Definition at line 1 of file qgsscalecombobox.h.

◆ scale

double QgsScaleComboBox::scale
readwrite

Definition at line 1 of file qgsscalecombobox.h.


The documentation for this class was generated from the following files: