QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsattributeeditorcontainer.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsattributeeditorcontainer.h - QgsAttributeEditorElement
3
4 ---------------------
5 begin : 12.01.2021
6 copyright : (C) 2021 by Denis Rouzaud
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 QGSATTRIBUTEEDITORCONTAINER_H
17#define QGSATTRIBUTEEDITORCONTAINER_H
18
19#include "qgis_core.h"
22
29{
30 public:
31
39 QgsAttributeEditorContainer( const QString &name, QgsAttributeEditorElement *parent, const QColor &backgroundColor = QColor() )
40 : QgsAttributeEditorElement( Qgis::AttributeEditorType::Container, name, parent )
41 , mBackgroundColor( backgroundColor )
42 {}
43
45
51 virtual void addChildElement( QgsAttributeEditorElement *element SIP_TRANSFER );
52
60
68
75 Q_DECL_DEPRECATED virtual void setIsGroupBox( bool isGroupBox ) SIP_DEPRECATED;
76
84 Q_DECL_DEPRECATED virtual bool isGroupBox() const SIP_DEPRECATED;
85
94 bool collapsed() const { return mCollapsed; };
95
103 void setCollapsed( bool collapsed ) { mCollapsed = collapsed; };
104
110 QList<QgsAttributeEditorElement *> children() const { return mChildren; }
111
119 virtual QList<QgsAttributeEditorElement *> findElements( Qgis::AttributeEditorType type ) const;
120
124 void clear();
125
129 void setName( const QString &name );
130
136 int columnCount() const;
137
143 void setColumnCount( int columnCount );
144
150
157 QgsOptionalExpression visibilityExpression() const;
158
165 void setVisibilityExpression( const QgsOptionalExpression &visibilityExpression );
166
177 QgsOptionalExpression collapsedExpression() const SIP_SKIP;
178
189 void setCollapsedExpression( const QgsOptionalExpression &collapsedExpression ) SIP_SKIP;
190
197 QColor backgroundColor() const;
198
204 void setBackgroundColor( const QColor &backgroundColor );
205
206 private:
207 void saveConfiguration( QDomElement &elem, QDomDocument &doc ) const override;
208 void loadConfiguration( const QDomElement &element, const QString &layerId, const QgsReadWriteContext &context, const QgsFields &fields ) override;
209 QString typeIdentifier() const override;
210
211 Qgis::AttributeEditorContainerType mType = Qgis::AttributeEditorContainerType::GroupBox;
212 QList<QgsAttributeEditorElement *> mChildren;
213 int mColumnCount = 1;
214 QgsOptionalExpression mVisibilityExpression;
215 QColor mBackgroundColor;
216 bool mCollapsed = false;
217 QgsOptionalExpression mCollapsedExpression;
218};
219
220
221#endif // QGSATTRIBUTEEDITORCONTAINER_H
The Qgis class provides global constants for use throughout the application.
Definition: qgis.h:54
AttributeEditorContainerType
Attribute editor container types.
Definition: qgis.h:4403
AttributeEditorType
Attribute editor types.
Definition: qgis.h:4384
This is a container for attribute editors, used to group them visually in the attribute form if it is...
QgsAttributeEditorContainer(const QString &name, QgsAttributeEditorElement *parent, const QColor &backgroundColor=QColor())
Creates a new attribute editor container.
Qgis::AttributeEditorContainerType type() const
Returns the container type.
void setType(Qgis::AttributeEditorContainerType type)
Sets the container type.
QList< QgsAttributeEditorElement * > children() const
Gets a list of the children elements of this container.
void setCollapsed(bool collapsed)
For group box containers sets if this group box is collapsed.
This is an abstract base class for any elements of a drag and drop form.
Qgis::AttributeEditorType type() const
The type of this element.
Qgis::AttributeEditorType mType
virtual QgsAttributeEditorElement * clone(QgsAttributeEditorElement *parent) const =0
Returns a clone of this element.
Container of fields for a vector layer.
Definition: qgsfields.h:45
An expression with an additional enabled flag.
The class is used as a container of context for various read/write operations on other objects.
#define SIP_DEPRECATED
Definition: qgis_sip.h:106
#define SIP_SKIP
Definition: qgis_sip.h:126
#define SIP_TRANSFER
Definition: qgis_sip.h:36
#define SIP_FACTORY
Definition: qgis_sip.h:76