QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
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
66 void setMapCanvas( QgsMapCanvas *canvas );
67
72 void setContext( const QgsSymbolWidgetContext &context );
73
79 void setDockMode( bool dockMode );
80
81 signals:
82
89
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 = false;
165
166 friend class QgsAppScreenShots;
167};
168
169
170#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:90
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:93
Represents a vector layer which manages a vector based data sets.
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53