QGIS API Documentation  3.18.1-Zürich (202f1bf7e5)
qgsguiutils.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsguiutils.h - Constants used throughout the QGIS GUI.
3  ------------
4  Date : 11-Jan-2006
5  Copyright : (C) 2006 by Tom Elwertowski
6  Email : telwertowski at users dot sourceforge dot net
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 #ifndef QGSGUIUTILS_H
16 #define QGSGUIUTILS_H
17 
18 #include <QPair>
19 #include <QWidget>
20 #include <QStringList>
21 #include "qgis_gui.h"
22 #include "qgis.h"
23 
24 #define SIP_NO_FILE
25 
26 class QFont;
27 
34 namespace QgsGuiUtils
35 {
36 
54  static const Qt::WindowFlags ModalDialogFlags = Qt::WindowFlags();
55 
61  constexpr double CANVAS_MAGNIFICATION_MIN = 0.1;
62 
68  // Must be a factor of 2, so zooming in to max from 100% then zooming back out will result in 100% mag
69  constexpr double CANVAS_MAGNIFICATION_MAX = 16.0;
70 
94  bool GUI_EXPORT openFilesRememberingFilter( QString const &filterName,
95  QString const &filters, QStringList &selectedFiles, QString &enc, QString &title,
96  bool cancelAll = false );
97 
107  QPair<QString, QString> GUI_EXPORT getSaveAsImageName( QWidget *parent, const QString &message, const QString &defaultFilename = QString() );
108 
117  QString GUI_EXPORT createFileFilter_( QString const &longName, QString const &glob );
118 
125  QString GUI_EXPORT createFileFilter_( QString const &format );
126 
138  QFont GUI_EXPORT getFont( bool &ok, const QFont &initial, const QString &title = QString() );
139 
147  bool GUI_EXPORT restoreGeometry( QWidget *widget, const QString &keyName = QString() );
148 
155  void GUI_EXPORT saveGeometry( QWidget *widget, const QString &keyName = QString() );
156 
164  QString createWidgetKey( QWidget *widget, const QString &keyName = QString() );
165 
175  int GUI_EXPORT scaleIconSize( int standardSize );
176 
183  QSize GUI_EXPORT iconSize( bool dockableToolbar = false );
184 
191  QSize GUI_EXPORT panelIconSize( QSize size );
192 
202  QString GUI_EXPORT displayValueWithMaximumDecimals( const Qgis::DataType dataType, const double value, bool displayTrailingZeroes = false );
203 
208  int GUI_EXPORT significantDigits( const Qgis::DataType rasterDataType );
209 
210 }
211 
222 {
223  public:
224 
229  QgsTemporaryCursorOverride( const QCursor &cursor );
230 
232 
236  void release();
237 
238  private:
239 
240  bool mHasOverride = true;
241 
242 };
243 
254 {
255  public:
256 
262 
264 
268  void restore();
269 
270  private:
271 
272  std::vector< QCursor > mCursors;
273 
274 };
275 
276 #endif // QGSGUIUTILS_H
DataType
Raster data types.
Definition: qgis.h:102
Temporarily sets a cursor override for the QApplication for the lifetime of the object.
Definition: qgsguiutils.h:222
Temporarily removes all cursor overrides for the QApplication for the lifetime of the object.
Definition: qgsguiutils.h:254
The QgsGuiUtils namespace contains constants and helper functions used throughout the QGIS GUI.
Definition: qgsguiutils.cpp:31
constexpr double CANVAS_MAGNIFICATION_MIN
Minimum magnification level allowed in map canvases.
Definition: qgsguiutils.h:61
bool restoreGeometry(QWidget *widget, const QString &keyName)
Restore the wigget geometry from settings.
QSize iconSize(bool dockableToolbar)
Returns the user-preferred size of a window's toolbar icons.
QString createWidgetKey(QWidget *widget, const QString &keyName)
Creates a key for the given widget that can be used to store related data in settings.
QPair< QString, QString > GUI_EXPORT getSaveAsImageName(QWidget *parent, const QString &message, const QString &defaultFilename)
A helper function to get an image name from the user.
Definition: qgsguiutils.cpp:91
int scaleIconSize(int standardSize)
Scales an icon size to compensate for display pixel density, making the icon size hi-dpi friendly,...
int significantDigits(const Qgis::DataType rasterDataType)
Returns the maximum number of significant digits a for the given rasterDataType.
void saveGeometry(QWidget *widget, const QString &keyName)
Save the wigget geometry into settings.
QFont getFont(bool &ok, const QFont &initial, const QString &title)
Show font selection dialog.
bool GUI_EXPORT openFilesRememberingFilter(QString const &filterName, QString const &filters, QStringList &selectedFiles, QString &enc, QString &title, bool cancelAll)
Open files, preferring to have the default file selector be the last one used, if any; also,...
Definition: qgsguiutils.cpp:33
QString createFileFilter_(QString const &longName, QString const &glob)
Convenience function for readily creating file filters.
QSize panelIconSize(QSize size)
Returns dockable panel toolbar icon width based on the provided window toolbar width.
constexpr double CANVAS_MAGNIFICATION_MAX
Maximum magnification level allowed in map canvases.
Definition: qgsguiutils.h:69
QString displayValueWithMaximumDecimals(const Qgis::DataType dataType, const double value, bool displayTrailingZeroes)
Returns a localized string representation of the value with the appropriate number of decimals suppor...