QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgssmartgroupeditordialog.h
Go to the documentation of this file.
1/***************************************************************************
2 qgssmartgroupeditordialog.h
3 ---------------------------
4 begin : July 2012
5 copyright : (C) 2012 by Arunmozhi
6 email : aruntheguy at gmail.com
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
16#ifndef QGSSMARTGROUPEDITORDIALOG_H
17#define QGSSMARTGROUPEDITORDIALOG_H
18
19#include "ui_qgssmartgroupconditionwidget.h"
20#include "qgis_sip.h"
21#include "qgis_gui.h"
22
27class GUI_EXPORT QgsSmartGroupCondition : public QWidget, private Ui::QgsSmartGroupConditionWidget
28{
29 Q_OBJECT
30
31 public:
32 QgsSmartGroupCondition( int id, QWidget *parent SIP_TRANSFERTHIS = nullptr );
33
35 QString constraint();
36
38 QString parameter();
39
41 void setConstraint( const QString &constraint );
42
44 void setParameter( const QString &param );
45
47 void hideRemoveButton( bool hide );
48
49 public slots:
50 void destruct();
51
52 signals:
53 void removed( int );
54
55 protected:
57
58};
59
60
61#include <QDialog>
62
63#include "ui_qgssmartgroupeditordialogbase.h"
64
65#include "qgsstyle.h" //for QgsSmartConditionMap
66
71class GUI_EXPORT QgsSmartGroupEditorDialog : public QDialog, private Ui::QgsSmartGroupEditorDialogBase
72{
73 Q_OBJECT
74
75 public:
76 QgsSmartGroupEditorDialog( QgsStyle *style, QWidget *parent SIP_TRANSFERTHIS = nullptr );
77
79 QString smartgroupName();
80
85 QgsSmartConditionMap conditionMap() SIP_SKIP;
86
88 QString conditionOperator();
89
94 void setConditionMap( const QgsSmartConditionMap & ) SIP_SKIP;
95
97 void setOperator( const QString & );
98
100 void setSmartgroupName( const QString & );
101
102 public slots:
103
105 void addCondition();
106
108 void removeCondition( int );
109
110 protected:
111 QgsStyle *mStyle = nullptr;
112 // layout of the mConditionsBox
113 QGridLayout *mLayout = nullptr;
114 // counter for the number of conditions
116 // map tracking the condition widget and the ids
117 QMap<int, QgsSmartGroupCondition *> mConditionMap;
118
119 private slots:
120
121 void buttonBox_accepted();
122};
123
124#endif // QGSSMARTGROUPEDITORDIALOG_H
QMap< int, QgsSmartGroupCondition * > mConditionMap
QMultiMap< QString, QString > QgsSmartConditionMap
A multimap to hold the smart group conditions as constraint and parameter pairs.
Definition: qgsstyle.h:79
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53
#define SIP_SKIP
Definition: qgis_sip.h:126