QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
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
28class QKeyEvent;
29
30class QgsVectorLayer;
31class QgsStyle;
32class QgsSymbol;
33class QgsPaintEffect;
35class QgsMapCanvas;
37class QgsMessageBar;
38
43class 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 );
59
65 void setMapCanvas( QgsMapCanvas *canvas );
66
71 void setContext( const QgsSymbolWidgetContext &context );
72
78 void setDockMode( bool dockMode );
79
80 signals:
81
88
94
101 void showPanel( QgsPanelWidget *panel );
102
103 public slots:
105 void rendererChanged();
106
108 void apply();
109
111 void onOK();
112
123 void openPanel( QgsPanelWidget *panel );
124
125
126 private slots:
127 void showOrderByDialog();
128
129 void changeOrderBy( const QgsFeatureRequest::OrderBy &orderBy, bool orderByEnabled );
130
131 void updateUIState( bool hidden );
132
133 void syncToLayer();
134
135 protected:
136
145 void connectValueChanged( const QList<QWidget *> &widgets, const char *slot );
146
147 // Reimplements dialog keyPress event so we can ignore it
148 void keyPressEvent( QKeyEvent *event ) override;
149
150 QgsVectorLayer *mLayer = nullptr;
151 QgsStyle *mStyle = nullptr;
152
153 QgsRendererWidget *mActiveWidget = nullptr;
154
155 QgsPaintEffect *mPaintEffect = nullptr;
156
157 QgsMapCanvas *mMapCanvas = nullptr;
158 QgsMessageBar *mMessageBar = nullptr;
159
161
162 private:
163
164 static void initRendererWidgetFunctions();
165
166 bool mDockMode = false;
167
168 friend class QgsAppScreenShots;
169};
170
171
172#endif
Represents a list of OrderByClauses, with the most important first and the least important last.
Map canvas is a class for displaying all GIS data types on a canvas.
Definition: qgsmapcanvas.h:93
A bar for displaying non-blocking messages to the user.
Definition: qgsmessagebar.h:61
Base class for visual effects which can be applied to QPicture drawings.
Base class for any widget that can be shown as a inline panel.
void showPanel(QgsPanelWidget *panel)
Emit when you require a panel to be show in the interface.
QgsFeatureRequest::OrderBy mOrderBy
void layerVariablesChanged()
Emitted when expression context variables on the associated vector layers have been changed.
void widgetChanged()
Emitted when something on the widget has changed.
Base class for renderer settings widgets.
Contains settings which reflect the context in which a symbol (or renderer) widget is shown,...
Abstract base class for all rendered symbols.
Definition: qgssymbol.h:94
Represents a vector layer which manages a vector based data sets.
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53