QGIS API Documentation 3.99.0-Master (26c88405ac0)
Loading...
Searching...
No Matches
qgslayoutrendercontext.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslayoutrendercontext.h
3 -------------------
4 begin : July 2017
5 copyright : (C) 2017 by Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************/
8/***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16#ifndef QGSLAYOUTRENDERCONTEXT_H
17#define QGSLAYOUTRENDERCONTEXT_H
18
19#include "qgis.h"
20#include "qgis_core.h"
24
25#include <QColor>
26#include <QVector>
27#include <QtGlobal>
28
29class QgsLayout;
31
37class CORE_EXPORT QgsLayoutRenderContext : public QObject
38{
39
40 Q_OBJECT
41
42 public:
43
48
56
64 void setFlag( Qgis::LayoutRenderFlag flag, bool on = true );
65
73
80 bool testFlag( Qgis::LayoutRenderFlag flag ) const;
81
86
94
102
108 void setDpi( double dpi );
109
114 double dpi() const;
115
121 void setSelectionColor( const QColor &color ) { mSelectionColor = color; }
122
128 QColor selectionColor() const { return mSelectionColor; }
129
134 SIP_SKIP const QgsLayoutMeasurementConverter &measurementConverter() const { return mMeasurementConverter; }
135
140 QgsLayoutMeasurementConverter &measurementConverter() { return mMeasurementConverter; }
141
147 bool isPreviewRender() const { return mIsPreviewRender; }
148
153 bool gridVisible() const;
154
159 void setGridVisible( bool visible );
160
165 bool boundingBoxesVisible() const;
166
171 void setBoundingBoxesVisible( bool visible );
172
179 void setPagesVisible( bool visible );
180
187 bool pagesVisible() const { return mPagesVisible; }
188
199 Q_DECL_DEPRECATED void setCurrentExportLayer( int layer = -1 ) SIP_DEPRECATED { mCurrentExportLayer = layer; }
200
211 Q_DECL_DEPRECATED int currentExportLayer() const SIP_DEPRECATED { return mCurrentExportLayer; }
212
220 {
221 return mTextRenderFormat;
222 }
223
231 {
232 mTextRenderFormat = format;
233 }
234
252 void setSimplifyMethod( const QgsVectorSimplifyMethod &method ) { mSimplifyMethod = method; }
253
266 const QgsVectorSimplifyMethod &simplifyMethod() const { return mSimplifyMethod; }
267
275 const QgsMaskRenderSettings &maskSettings() const SIP_SKIP { return mMaskRenderSettings; }
276
284 QgsMaskRenderSettings &maskSettings() { return mMaskRenderSettings; }
285
293 void setMaskSettings( const QgsMaskRenderSettings &settings );
294
304 QStringList exportThemes() const;
305
315 void setExportThemes( const QStringList &themes );
316
323 void setPredefinedScales( const QVector<qreal> &scales );
324
330 QVector<qreal> predefinedScales() const { return mPredefinedScales; }
331
340 QgsFeatureFilterProvider *featureFilterProvider() const;
341
350 void setFeatureFilterProvider( QgsFeatureFilterProvider *featureFilterProvider );
351
352 signals:
353
359
364
371
372 private:
373
374 void matchRasterizedRenderingPolicyToFlags();
375
378
379 QgsLayout *mLayout = nullptr;
380
381 int mCurrentExportLayer = -1;
382
383 QColor mSelectionColor = Qt::yellow;
384
385 QgsLayoutMeasurementConverter mMeasurementConverter;
386
387 bool mIsPreviewRender = true;
388 bool mGridVisible = false;
389 bool mBoundingBoxesVisible = true;
390 bool mPagesVisible = true;
391
393
394 QStringList mExportThemes;
395
396 QgsVectorSimplifyMethod mSimplifyMethod;
397
398 QVector<qreal> mPredefinedScales;
399
400 QgsFeatureFilterProvider *mFeatureFilterProvider = nullptr;
401
402 QgsMaskRenderSettings mMaskRenderSettings;
403
404 friend class QgsLayoutExporter;
405 friend class TestQgsLayout;
407 friend class TestQgsLayoutMap;
408 friend class TestQgsLayoutLabel;
409
410};
411
412
413#endif //QGSLAYOUTRENDERCONTEXT_H
414
415
416
RasterizedRenderingPolicy
Policies controlling when rasterisation of content during renders is permitted.
Definition qgis.h:2703
@ PreferVector
Prefer vector-based rendering, when the result will still be visually near-identical to a raster-base...
Definition qgis.h:2705
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
Definition qgis.h:2774
QFlags< LayoutRenderFlag > LayoutRenderFlags
Flags for controlling how a layout is rendered.
Definition qgis.h:5261
TextRenderFormat
Options for rendering text.
Definition qgis.h:2826
@ AlwaysOutlines
Always render text using path objects (AKA outlines/curves). This setting guarantees the best quality...
Definition qgis.h:2827
LayoutRenderFlag
Flags for controlling how a layout is rendered.
Definition qgis.h:5237
Abstract interface for use by classes that filter the features or attributes of a layer.
Provides a method of converting QgsLayoutMeasurements from one unit to another.
void setDpi(double dpi)
Sets the dpi for outputting the layout.
void setSimplifyMethod(const QgsVectorSimplifyMethod &method)
Sets the simplification setting to use when rendering vector layers.
void setSelectionColor(const QColor &color)
Sets color that is used for drawing of selected vector features.
void dpiChanged()
Emitted when the context's DPI is changed.
void setTextRenderFormat(Qgis::TextRenderFormat format)
Sets the text render format, which dictates how text is rendered (e.g.
void predefinedScalesChanged()
Emitted when the list of predefined scales changes.
bool pagesVisible() const
Returns whether the page items are be visible in the layout.
Qgis::LayoutRenderFlags flags() const
Returns the current combination of flags used for rendering the layout.
Qgis::TextRenderFormat textRenderFormat() const
Returns the text render format, which dictates how text is rendered (e.g.
bool isPreviewRender() const
Returns true if the render current being conducted is a preview render, i.e.
QgsMaskRenderSettings & maskSettings()
Returns a reference to the mask render settings, which control how masks are drawn and behave during ...
QVector< qreal > predefinedScales() const
Returns the current list of predefined scales for use with the layout.
void flagsChanged(Qgis::LayoutRenderFlags flags)
Emitted whenever the context's flags change.
friend class LayoutContextPreviewSettingRestorer
void setRasterizedRenderingPolicy(Qgis::RasterizedRenderingPolicy policy)
Sets the policy controlling when rasterization of content during renders is permitted.
QgsLayoutMeasurementConverter & measurementConverter()
Returns the layout measurement converter to be used in the layout.
const QgsVectorSimplifyMethod & simplifyMethod() const
Returns the simplification settings to use when rendering vector layers.
QgsLayoutRenderContext(QgsLayout *layout)
Constructor for QgsLayoutRenderContext.
double dpi() const
Returns the dpi for outputting the layout.
QColor selectionColor() const
Gets color that is used for drawing of selected vector features.
Qgis::RasterizedRenderingPolicy rasterizedRenderingPolicy() const
Returns the policy controlling when rasterization of content during renders is permitted.
Qgis::RenderContextFlags renderContextFlags() const
Returns the combination of render context flags matched to the layout context's settings.
Q_DECL_DEPRECATED void setCurrentExportLayer(int layer=-1)
Sets the current item layer to draw while exporting.
void setFlags(Qgis::LayoutRenderFlags flags)
Sets the combination of flags that will be used for rendering the layout.
const QgsLayoutMeasurementConverter & measurementConverter() const
Returns the layout measurement converter to be used in the layout.
bool testFlag(Qgis::LayoutRenderFlag flag) const
Check whether a particular rendering flag is enabled for the layout.
const QgsMaskRenderSettings & maskSettings() const
Returns a reference to the mask render settings, which control how masks are drawn and behave during ...
void setFlag(Qgis::LayoutRenderFlag flag, bool on=true)
Enables or disables a particular rendering flag for the layout.
Q_DECL_DEPRECATED int currentExportLayer() const
Returns the current item layer to draw while exporting.
Base class for layouts, which can contain items such as maps, labels, scalebars, etc.
Definition qgslayout.h:50
Contains settings regarding how masks are calculated and handled during a map render.
Contains settings for simplifying geometries fetched from a vector layer.
#define SIP_DEPRECATED
Definition qgis_sip.h:114
#define SIP_TRANSFERTHIS
Definition qgis_sip.h:53
#define SIP_SKIP
Definition qgis_sip.h:134