QGIS API Documentation  3.16.0-Hannover (43b64b13f3)
qgsrendererpropertiesdialog.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsrendererpropertiesdialog.h
3 
4  ---------------------
5  begin : December 2009
6  copyright : (C) 2009 by Martin Dobias
7  email : wonder dot sk at gmail dot com
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 QGSRENDERERPROPERTIESDIALOG_H
18 #define QGSRENDERERPROPERTIESDIALOG_H
19 
20 #include <QDialog>
21 #include "qgis_sip.h"
22 
23 #include "ui_qgsrendererpropsdialogbase.h"
24 
25 #include "qgsfeaturerequest.h"
26 #include "qgis_gui.h"
27 
28 class QKeyEvent;
29 
30 class QgsVectorLayer;
31 class QgsStyle;
32 class QgsSymbol;
33 class QgsPaintEffect;
34 class QgsRendererWidget;
35 class QgsMapCanvas;
37 class QgsMessageBar;
38 
43 class GUI_EXPORT QgsRendererPropertiesDialog : public QDialog, private Ui::QgsRendererPropsDialogBase
44 {
45  Q_OBJECT
46 
47  public:
48 
57  QgsRendererPropertiesDialog( QgsVectorLayer *layer, QgsStyle *style, bool embedded = false, QWidget *parent SIP_TRANSFERTHIS = nullptr );
58  ~QgsRendererPropertiesDialog() override;
59 
66  void setMapCanvas( QgsMapCanvas *canvas );
67 
72  void setContext( const QgsSymbolWidgetContext &context );
73 
79  void setDockMode( bool dockMode );
80 
81  signals:
82 
89 
94  void widgetChanged();
95 
102  void showPanel( QgsPanelWidget *panel );
103 
104  public slots:
106  void rendererChanged();
107 
109  void apply();
110 
112  void onOK();
113 
124  void openPanel( QgsPanelWidget *panel );
125 
126 
127  private slots:
128  void showOrderByDialog();
129 
130  void changeOrderBy( const QgsFeatureRequest::OrderBy &orderBy, bool orderByEnabled );
131 
132  void updateUIState( bool hidden );
133 
134  void syncToLayer();
135 
136  protected:
137 
146  void connectValueChanged( const QList<QWidget *> &widgets, const char *slot );
147 
148  // Reimplements dialog keyPress event so we can ignore it
149  void keyPressEvent( QKeyEvent *event ) override;
150 
151  QgsVectorLayer *mLayer = nullptr;
152  QgsStyle *mStyle = nullptr;
153 
154  QgsRendererWidget *mActiveWidget = nullptr;
155 
156  QgsPaintEffect *mPaintEffect = nullptr;
157 
158  QgsMapCanvas *mMapCanvas = nullptr;
159  QgsMessageBar *mMessageBar = nullptr;
160 
162 
163  private:
164  bool mDockMode;
165 
166  friend class QgsAppScreenShots;
167 };
168 
169 
170 #endif
QgsRendererPropertiesDialog::showPanel
void showPanel(QgsPanelWidget *panel)
Emit when you require a panel to be show in the interface.
QgsRendererPropertiesDialog::mOrderBy
QgsFeatureRequest::OrderBy mOrderBy
Definition: qgsrendererpropertiesdialog.h:161
qgsfeaturerequest.h
QgsSymbolWidgetContext
Contains settings which reflect the context in which a symbol (or renderer) widget is shown,...
Definition: qgssymbolwidgetcontext.h:36
QgsMapCanvas
Map canvas is a class for displaying all GIS data types on a canvas.
Definition: qgsmapcanvas.h:85
QgsSymbol
Abstract base class for all rendered symbols.
Definition: qgssymbol.h:64
QgsPanelWidget
Base class for any widget that can be shown as a inline panel.
Definition: qgspanelwidget.h:30
QgsRendererPropertiesDialog::layerVariablesChanged
void layerVariablesChanged()
Emitted when expression context variables on the associated vector layers have been changed.
qgis_sip.h
QgsMessageBar
A bar for displaying non-blocking messages to the user.
Definition: qgsmessagebar.h:61
QgsRendererWidget
Base class for renderer settings widgets.
Definition: qgsrendererwidget.h:45
QgsRendererPropertiesDialog::widgetChanged
void widgetChanged()
Emitted when something on the widget has changed.
QgsFeatureRequest::OrderBy
Represents a list of OrderByClauses, with the most important first and the least important last.
Definition: qgsfeaturerequest.h:230
QgsStyle
Definition: qgsstyle.h:160
QgsVectorLayer
Represents a vector layer which manages a vector based data sets.
Definition: qgsvectorlayer.h:387
QgsPaintEffect
Base class for visual effects which can be applied to QPicture drawings.
Definition: qgspainteffect.h:54
QgsRendererPropertiesDialog
Definition: qgsrendererpropertiesdialog.h:44
SIP_TRANSFERTHIS
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53