QGIS API Documentation  3.20.0-Odense (decaadbb31)
qgslayoutmarkerwidget.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgslayoutmarkerwidget.h
3  --------------------------
4  begin : April 2020
5  copyright : (C) 2020 by Nyall Dawson
6  email : nyall dot dawson at gmail dot com
7  ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 
18 #ifndef QGSLAYOUTMARKERWIDGET_H
19 #define QGSLAYOUTMARKERWIDGET_H
20 
21 // We don't want to expose this in the public API
22 #define SIP_NO_FILE
23 
24 #include "qgis_gui.h"
25 #include "ui_qgslayoutmarkerwidgetbase.h"
26 #include "qgslayoutitemwidget.h"
27 #include "qgslayoutitemmarker.h"
28 
36 class GUI_EXPORT QgsLayoutMarkerWidget: public QgsLayoutItemBaseWidget, private Ui::QgsLayoutMarkerWidgetBase
37 {
38  Q_OBJECT
39  public:
41  explicit QgsLayoutMarkerWidget( QgsLayoutItemMarker *marker );
42  void setMasterLayout( QgsMasterLayoutInterface *masterLayout ) override;
43 
44  protected:
45 
46  bool setNewItem( QgsLayoutItem *item ) override;
47 
48 
49  private:
50  QPointer< QgsLayoutItemMarker > mMarker;
51  QgsLayoutItemPropertiesWidget *mItemPropertiesWidget = nullptr;
52 
54  void blockAllSignals( bool block );
55 
56  private slots:
57 
58  void symbolChanged();
59  void rotationFromMapCheckBoxChanged( int state );
60  void mapChanged( QgsLayoutItem *item );
61  void northOffsetSpinBoxChanged( double d );
62  void northTypeComboBoxChanged( int index );
63 
65  void setGuiElementValues();
66 
67 };
68 
69 #endif // QGSLAYOUTMARKERWIDGET_H
A base class for property widgets for layout items.
virtual bool setNewItem(QgsLayoutItem *item)
Attempts to update the widget to show the properties for the specified item.
virtual void setMasterLayout(QgsMasterLayoutInterface *masterLayout)
Sets the master layout associated with the item.
A layout item for showing marker symbols.
A widget for controlling the common properties of layout items (e.g.
Base class for graphical items within a QgsLayout.
A widget for configuring layout shape items.
Interface for master layout type objects, such as print layouts and reports.