QGIS API Documentation  3.16.0-Hannover (43b64b13f3)
qgslayoutpropertieswidget.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgslayoutpropertieswidget.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 
17 #ifndef QGSLAYOUTPROPERTIESWIDGET_H
18 #define QGSLAYOUTPROPERTIESWIDGET_H
19 
20 // We don't want to expose this in the public API
21 #define SIP_NO_FILE
22 
23 #include "qgis_gui.h"
24 #include "ui_qgslayoutwidgetbase.h"
25 #include "qgspanelwidget.h"
26 
27 class QgsLayout;
29 
37 class GUI_EXPORT QgsLayoutPropertiesWidget: public QgsPanelWidget, private Ui::QgsLayoutWidgetBase
38 {
39  Q_OBJECT
40  public:
42  QgsLayoutPropertiesWidget( QWidget *parent, QgsLayout *layout );
43 
45  void setMasterLayout( QgsMasterLayoutInterface *masterLayout );
46 
47  public slots:
48 
50  void updateGui();
51 
52  private slots:
53 
54  void gridResolutionChanged( double d );
55  void gridResolutionUnitsChanged( QgsUnitTypes::LayoutUnit unit );
56  void gridOffsetXChanged( double d );
57  void gridOffsetYChanged( double d );
58  void gridOffsetUnitsChanged( QgsUnitTypes::LayoutUnit unit );
59  void snapToleranceChanged( int tolerance );
60  void resizeMarginsChanged();
61  void resizeToContents();
62  void referenceMapChanged( QgsLayoutItem *item );
63  void dpiChanged( int value );
64  void worldFileToggled();
65  void rasterizeToggled();
66  void forceVectorToggled();
67  void variablesChanged();
68  void updateVariables();
69 
70  private:
71 
72  QgsLayout *mLayout = nullptr;
73 
74  void updateSnappingElements();
75  void blockSignals( bool block );
76  bool mBlockVariableUpdates = false;
77 
78 };
79 
80 #endif // QGSLAYOUTPROPERTIESWIDGET_H
QgsLayoutPropertiesWidget
Widget for configuring the properties of a layout.
Definition: qgslayoutpropertieswidget.h:38
QgsUnitTypes::LayoutUnit
LayoutUnit
Layout measurement units.
Definition: qgsunittypes.h:181
QgsPanelWidget
Base class for any widget that can be shown as a inline panel.
Definition: qgspanelwidget.h:30
QgsLayoutItem
Base class for graphical items within a QgsLayout.
Definition: qgslayoutitem.h:113
QgsLayout
Base class for layouts, which can contain items such as maps, labels, scalebars, etc.
Definition: qgslayout.h:50
QgsMasterLayoutInterface
Interface for master layout type objects, such as print layouts and reports.
Definition: qgsmasterlayoutinterface.h:43
qgspanelwidget.h