22   qDeleteAll( mChildren );
 
   27   mChildren.append( widget );
 
   37   return mVisibilityExpression;
 
   50   return mBackgroundColor;
 
   60   QList<QgsAttributeEditorElement *> results;
 
   62   const auto constMChildren = mChildren;
 
   65     if ( elem->type() == 
type )
 
   67       results.append( elem );
 
   83   qDeleteAll( mChildren );
 
  101   const auto childElements = 
children();
 
  107   element->mIsGroupBox = mIsGroupBox;
 
  108   element->mColumnCount = mColumnCount;
 
  109   element->mVisibilityExpression = mVisibilityExpression;
 
  114 void QgsAttributeEditorContainer::saveConfiguration( QDomElement &elem, QDomDocument &doc )
 const 
  117   elem.setAttribute( QStringLiteral( 
"columnCount" ), mColumnCount );
 
  118   elem.setAttribute( QStringLiteral( 
"groupBox" ), mIsGroupBox ? 1 : 0 );
 
  119   elem.setAttribute( QStringLiteral( 
"visibilityExpressionEnabled" ), mVisibilityExpression.
enabled() ? 1 : 0 );
 
  120   elem.setAttribute( QStringLiteral( 
"visibilityExpression" ), mVisibilityExpression->expression() );
 
  121   if ( mBackgroundColor.isValid() )
 
  122     elem.setAttribute( QStringLiteral( 
"backgroundColor" ), mBackgroundColor.name( ) );
 
  123   const auto constMChildren = mChildren;
 
  126     QDomDocument doc = elem.ownerDocument();
 
  127     elem.appendChild( child->toDomElement( doc ) );
 
  131 void QgsAttributeEditorContainer::loadConfiguration( 
const QDomElement &element, 
const QString &layerId, 
const QgsReadWriteContext &context, 
const QgsFields &fields )
 
  133   mBackgroundColor = element.attribute( QStringLiteral( 
"backgroundColor" ), QString() );
 
  135   int cc = element.attribute( QStringLiteral( 
"columnCount" ) ).toInt( &ok );
 
  140   const bool isGroupBox = element.attribute( QStringLiteral( 
"groupBox" ) ).toInt( &ok );
 
  146   const bool visibilityExpressionEnabled = element.attribute( QStringLiteral( 
"visibilityExpressionEnabled" ) ).toInt( &ok );
 
  155   const QDomNodeList childNodeList = element.childNodes();
 
  157   for ( 
int i = 0; i < childNodeList.size(); i++ )
 
  159     const QDomElement childElem = childNodeList.at( i ).toElement();
 
  167 QString QgsAttributeEditorContainer::typeIdentifier()
 const 
  169   return QStringLiteral( 
"attributeEditorContainer" );
 
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.
virtual void addChildElement(QgsAttributeEditorElement *element)
Add a child element to this container.
QgsOptionalExpression visibilityExpression() const
The visibility expression is used in the attribute form to show or hide this container based on an ex...
void setColumnCount(int columnCount)
Set the number of columns in this group.
virtual bool isGroupBox() const
Returns if this container is going to be rendered as a group box.
~QgsAttributeEditorContainer() override
void setVisibilityExpression(const QgsOptionalExpression &visibilityExpression)
The visibility expression is used in the attribute form to show or hide this container based on an ex...
virtual void setIsGroupBox(bool isGroupBox)
Determines if this container is rendered as collapsible group box or tab in a tabwidget.
void clear()
Clear all children from this container.
QgsAttributeEditorElement * clone(QgsAttributeEditorElement *parent) const override
Creates a deep copy of this element.
void setName(const QString &name)
Change the name of this container.
QColor backgroundColor() const
backgroundColor
virtual QList< QgsAttributeEditorElement * > findElements(AttributeEditorType type) const
Traverses the element tree to find any element of the specified type.
int columnCount() const
Gets the number of columns in this group.
QList< QgsAttributeEditorElement * > children() const
Gets a list of the children elements of this container.
void setBackgroundColor(const QColor &backgroundColor)
Sets the background color to backgroundColor.
This is an abstract base class for any elements of a drag and drop form.
QgsAttributeEditorElement * mParent
AttributeEditorType type() const
The type of this element.
QString name() const
Returns the name of this element.
static QgsAttributeEditorElement * create(const QDomElement &element, const QString &layerId, const QgsFields &fields, const QgsReadWriteContext &context, QgsAttributeEditorElement *parent=nullptr)
Constructs the editor element from the given element.
@ AeTypeContainer
A container.
QgsAttributeEditorElement * parent() const
Gets the parent of this element.
Class for parsing and evaluation of expressions (formerly called "search strings").
Container of fields for a vector layer.
An expression with an additional enabled flag.
bool enabled() const
Check if this optional is enabled.
void setData(const T &data)
Set the payload data.
void setEnabled(bool enabled)
Set if this optional is enabled.
The class is used as a container of context for various read/write operations on other objects.