QGIS API Documentation 3.41.0-Master (cea29feecf2)
Loading...
Searching...
No Matches
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
26class QFont;
27
34namespace QgsGuiUtils
35{
36
54 static const Qt::WindowFlags ModalDialogFlags = Qt::WindowFlags();
55
60 constexpr double CANVAS_MAGNIFICATION_MIN = 0.1;
61
66 // Must be a factor of 2, so zooming in to max from 100% then zooming back out will result in 100% mag
67 constexpr double CANVAS_MAGNIFICATION_MAX = 16.0;
68
89 bool GUI_EXPORT openFilesRememberingFilter( QString const &filterName, QString const &filters, QStringList &selectedFiles, QString &enc, QString &title, bool cancelAll = false );
90
100 QPair<QString, QString> GUI_EXPORT getSaveAsImageName( QWidget *parent, const QString &message, const QString &defaultFilename = QString() );
101
110 QString GUI_EXPORT createFileFilter_( QString const &longName, QString const &glob );
111
118 QString GUI_EXPORT createFileFilter_( QString const &format );
119
131 QFont GUI_EXPORT getFont( bool &ok, const QFont &initial, const QString &title = QString() );
132
140 bool GUI_EXPORT restoreGeometry( QWidget *widget, const QString &keyName = QString() );
141
148 void GUI_EXPORT saveGeometry( QWidget *widget, const QString &keyName = QString() );
149
157 QString createWidgetKey( QWidget *widget, const QString &keyName = QString() );
158
168 int GUI_EXPORT scaleIconSize( int standardSize );
169
176 QSize GUI_EXPORT iconSize( bool dockableToolbar = false );
177
184 QSize GUI_EXPORT panelIconSize( QSize size );
185
195 QString GUI_EXPORT displayValueWithMaximumDecimals( const Qgis::DataType dataType, const double value, bool displayTrailingZeroes = false );
196
201 int GUI_EXPORT significantDigits( const Qgis::DataType rasterDataType );
202
203} // namespace QgsGuiUtils
204
213class GUI_EXPORT QWidgetUpdateBlocker
214{
215 public:
221 QWidgetUpdateBlocker( QWidget *widget );
222
225
227
231 void release();
232
233 private:
234 QWidget *mWidget = nullptr;
235};
236
247{
248 public:
253 QgsTemporaryCursorOverride( const QCursor &cursor );
254
256
260 void release();
261
262 private:
263 bool mHasOverride = true;
264};
265
276{
277 public:
283
285
289 void restore();
290
291 private:
292 std::vector<QCursor> mCursors;
293};
294
295#endif // QGSGUIUTILS_H
Temporarily disables updates for a QWidget for the lifetime of the object.
QWidgetUpdateBlocker(const QWidgetUpdateBlocker &other)=delete
QWidgetUpdateBlocker & operator=(const QWidgetUpdateBlocker &other)=delete
DataType
Raster data types.
Definition qgis.h:351
Temporarily sets a cursor override for the QApplication for the lifetime of the object.
Temporarily removes all cursor overrides for the QApplication for the lifetime of the object.
The QgsGuiUtils namespace contains constants and helper functions used throughout the QGIS GUI.
constexpr double CANVAS_MAGNIFICATION_MIN
Minimum magnification level allowed in map canvases.
Definition qgsguiutils.h:60
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.
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,...
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:67
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...