QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsattributeactionpropertiesdialog.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsattributeactionpropertiesdialog.h - QgsAttributeActionPropertiesDialog
3
4 ---------------------
5 begin : 18.4.2016
6 copyright : (C) 2016 by mku
7 email : [your-email-here]
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#ifndef QGSATTRIBUTEACTIONPROPERTIESDIALOG_H
17#define QGSATTRIBUTEACTIONPROPERTIESDIALOG_H
18
19// We don't want to expose this in the public API
20#define SIP_NO_FILE
21
22#include "ui_qgsattributeactionpropertiesdialogbase.h"
24
25#include "qgshelp.h"
26#include "qgis_gui.h"
27
28#include <QDialog>
29
34class GUI_EXPORT QgsAttributeActionPropertiesDialog: public QDialog, private Ui::QgsAttributeActionPropertiesDialogBase, public QgsExpressionContextGenerator
35{
36 Q_OBJECT
37
38 public:
39
43 QgsAttributeActionPropertiesDialog( Qgis::AttributeActionType type, const QString &description, const QString &shortTitle, const QString &iconPath, const QString &actionText, bool capture, const QSet<QString> &actionScopes, const QString &notificationMessage, bool isEnabledOnlyWhenEditable, QgsVectorLayer *layer, QWidget *parent = nullptr );
44
45 QgsAttributeActionPropertiesDialog( QgsVectorLayer *layer, QWidget *parent = nullptr );
46
47 Qgis::AttributeActionType type() const;
48
49 QString description() const;
50
51 QString shortTitle() const;
52
53 QString iconPath() const;
54
55 QString actionText() const;
56
57 QSet<QString> actionScopes() const;
58
59 QString notificationMessage() const;
60
61 bool isEnabledOnlyWhenEditable() const;
62
63 bool capture() const;
64
66
67 private slots:
68 void browse();
69 void insertExpressionOrField();
70 void chooseIcon();
71 void updateButtons();
72 void showHelp();
73
74 private:
75 void populateActionTypes();
76 void init( const QSet<QString> &actionScopes );
77
78 QgsVectorLayer *mLayer = nullptr;
79 QList<QCheckBox *> mActionScopeCheckBoxes;
80};
81
82#endif // QGSATTRIBUTEACTIONPROPERTIESDIALOG_H
AttributeActionType
Attribute action types.
Definition: qgis.h:3876
Abstract interface for generating an expression context.
virtual QgsExpressionContext createExpressionContext() const =0
This method needs to be reimplemented in all classes which implement this interface and return an exp...
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
Represents a vector layer which manages a vector based data sets.