QGIS API Documentation  3.23.0-Master (dd0cd13a00)
qgslabelengineconfigdialog.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgslabelengineconfigdialog.h
3  ---------------------
4  begin : May 2010
5  copyright : (C) 2010 by Marco Hugentobler
6  email : marco dot hugentobler at sourcepole dot ch
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 QGSLABELENGINECONFIGDIALOG_H
16 #define QGSLABELENGINECONFIGDIALOG_H
17 
18 // We don't want to expose this in the public API
19 #define SIP_NO_FILE
20 
21 #include <QDialog>
22 
23 #include "ui_qgslabelengineconfigdialog.h"
25 #include "qgis_gui.h"
26 
27 class QgsMapCanvas;
28 class QgsMessageBar;
29 
37 class GUI_EXPORT QgsLabelEngineConfigWidget : public QgsPanelWidget, private Ui::QgsLabelEngineConfigWidgetBase
38 {
39  Q_OBJECT
40  public:
42  QgsLabelEngineConfigWidget( QgsMapCanvas *canvas, QWidget *parent = nullptr );
43 
44  QMenu *menuButtonMenu() override;
45  QString menuButtonTooltip() const override;
46 
47  public slots:
49  void apply();
51  void setDefaults();
53  void showHelp();
54 
55  private:
56  QgsMapCanvas *mCanvas = nullptr;
57  QgsMessageBar *mMessageBar = nullptr;
58  QMenu *mWidgetMenu = nullptr;
59 
61 };
62 
70 class GUI_EXPORT QgsLabelEngineConfigDialog : public QDialog
71 {
72  Q_OBJECT
73 
74  public:
76  QgsLabelEngineConfigDialog( QgsMapCanvas *canvas, QWidget *parent = nullptr );
77 
78  void accept() override;
79  private:
80  QgsLabelEngineConfigWidget *mWidget = nullptr;
81 
82 };
83 
84 #endif // QGSLABELENGINECONFIGDIALOG_H
Dialog for configuring the labeling engine.
Widget for configuring the labeling engine.
PlacementEngineVersion
Placement engine version.
@ PlacementEngineVersion2
Version 2 (default for new projects since QGIS 3.12)
Map canvas is a class for displaying all GIS data types on a canvas.
Definition: qgsmapcanvas.h:89
A bar for displaying non-blocking messages to the user.
Definition: qgsmessagebar.h:61
Base class for any widget that can be shown as a inline panel.
virtual QMenu * menuButtonMenu()
Returns the menu to use for the menu button for this panel, or nullptr if no menu button is required.
virtual QString menuButtonTooltip() const
Returns the (translated) tooltip text to use for the menu button for this panel.