QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
QgsAttributeEditorElement Class Referenceabstract

This is an abstract base class for any elements of a drag and drop form. More...

#include <qgsattributeeditorelement.h>

Inheritance diagram for QgsAttributeEditorElement:
Inheritance graph
[legend]

Classes

struct  LabelStyle
 The TabStyle struct defines color and font overrides for form fields, tabs and groups labels. More...
 

Public Types

enum  AttributeEditorType {
  AeTypeContainer , AeTypeField , AeTypeRelation , AeTypeInvalid ,
  AeTypeQmlElement , AeTypeHtmlElement , AeTypeAction
}
 

Public Member Functions

 QgsAttributeEditorElement (AttributeEditorType type, const QString &name, QgsAttributeEditorElement *parent=nullptr)
 Constructor. More...
 
virtual ~QgsAttributeEditorElement ()=default
 
virtual QgsAttributeEditorElement * clone (QgsAttributeEditorElement *parent) const =0
 Returns a clone of this element. More...
 
LabelStyle labelStyle () const
 Returns the label style. More...
 
QString name () const
 Returns the name of this element. More...
 
QgsAttributeEditorElement * parent () const
 Gets the parent of this element. More...
 
void setLabelStyle (const LabelStyle &labelStyle)
 Sets the labelStyle. More...
 
void setShowLabel (bool showLabel)
 Controls if this element should be labeled with a title (field, relation or groupname). More...
 
bool showLabel () const
 Controls if this element should be labeled with a title (field, relation or groupname). More...
 
QDomElement toDomElement (QDomDocument &doc) const
 Gets the XML Dom element to save this element. More...
 
AttributeEditorType type () const
 The type of this element. More...
 

Static Public Member Functions

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. More...
 

Protected Attributes

LabelStyle mLabelStyle
 
QString mName
 
QgsAttributeEditorElement * mParent = nullptr
 
bool mShowLabel
 
AttributeEditorType mType
 

Detailed Description

This is an abstract base class for any elements of a drag and drop form.

This can either be a container which will be represented on the screen as a tab widget or a collapsible group box. Or it can be a field which will then be represented based on the QgsEditorWidget type and configuration. Or it can be a relation and embed the form of several children of another layer.

Definition at line 37 of file qgsattributeeditorelement.h.

Member Enumeration Documentation

◆ AttributeEditorType

Enumerator
AeTypeContainer 

A container.

AeTypeField 

A field.

AeTypeRelation 

A relation.

AeTypeInvalid 

Invalid.

AeTypeQmlElement 

A QML element.

AeTypeHtmlElement 

A HTML element.

AeTypeAction 

A layer action element (since QGIS 3.22)

Definition at line 103 of file qgsattributeeditorelement.h.

Constructor & Destructor Documentation

◆ QgsAttributeEditorElement()

QgsAttributeEditorElement::QgsAttributeEditorElement ( AttributeEditorType  type,
const QString &  name,
QgsAttributeEditorElement *  parent = nullptr 
)
inline

Constructor.

Parameters
typeThe type of the new element.
name
parent

Definition at line 121 of file qgsattributeeditorelement.h.

◆ ~QgsAttributeEditorElement()

virtual QgsAttributeEditorElement::~QgsAttributeEditorElement ( )
virtualdefault

Member Function Documentation

◆ clone()

virtual QgsAttributeEditorElement * QgsAttributeEditorElement::clone ( QgsAttributeEditorElement *  parent) const
pure virtual

Returns a clone of this element.

To be implemented by subclasses.

Since
QGIS 3.0

Implemented in QgsAttributeEditorAction, QgsAttributeEditorContainer, QgsAttributeEditorField, QgsAttributeEditorHtmlElement, QgsAttributeEditorQmlElement, and QgsAttributeEditorRelation.

◆ create()

QgsAttributeEditorElement * QgsAttributeEditorElement::create ( const QDomElement &  element,
const QString &  layerId,
const QgsFields &  fields,
const QgsReadWriteContext &  context,
QgsAttributeEditorElement *  parent = nullptr 
)
static

Constructs the editor element from the given element.

Since
QGIS 3.18

Definition at line 58 of file qgsattributeeditorelement.cpp.

◆ labelStyle()

QgsAttributeEditorElement::LabelStyle QgsAttributeEditorElement::labelStyle ( ) const

Returns the label style.

See also
setLabelStyle()
Since
QGIS 3.26

Definition at line 48 of file qgsattributeeditorelement.cpp.

◆ name()

QString QgsAttributeEditorElement::name ( ) const
inline

Returns the name of this element.

Returns
The name for this element

Definition at line 142 of file qgsattributeeditorelement.h.

◆ parent()

QgsAttributeEditorElement * QgsAttributeEditorElement::parent ( ) const
inline

Gets the parent of this element.

Since
QGIS 3.0

Definition at line 156 of file qgsattributeeditorelement.h.

◆ setLabelStyle()

void QgsAttributeEditorElement::setLabelStyle ( const LabelStyle &  labelStyle)

Sets the labelStyle.

See also
labelStyle()
Since
QGIS 3.26

Definition at line 53 of file qgsattributeeditorelement.cpp.

◆ setShowLabel()

void QgsAttributeEditorElement::setShowLabel ( bool  showLabel)

Controls if this element should be labeled with a title (field, relation or groupname).

Since
QGIS 2.18

Definition at line 43 of file qgsattributeeditorelement.cpp.

◆ showLabel()

bool QgsAttributeEditorElement::showLabel ( ) const

Controls if this element should be labeled with a title (field, relation or groupname).

Since
QGIS 2.18

Definition at line 38 of file qgsattributeeditorelement.cpp.

◆ toDomElement()

QDomElement QgsAttributeEditorElement::toDomElement ( QDomDocument &  doc) const

Gets the XML Dom element to save this element.

Parameters
docThe QDomDocument which is used to create new XML elements
Returns
A DOM element to serialize this element

Definition at line 28 of file qgsattributeeditorelement.cpp.

◆ type()

AttributeEditorType QgsAttributeEditorElement::type ( ) const
inline

The type of this element.

Returns
The type

Definition at line 149 of file qgsattributeeditorelement.h.

Member Data Documentation

◆ mLabelStyle

LabelStyle QgsAttributeEditorElement::mLabelStyle
protected

Definition at line 208 of file qgsattributeeditorelement.h.

◆ mName

QString QgsAttributeEditorElement::mName
protected

Definition at line 205 of file qgsattributeeditorelement.h.

◆ mParent

QgsAttributeEditorElement* QgsAttributeEditorElement::mParent = nullptr
protected

Definition at line 206 of file qgsattributeeditorelement.h.

◆ mShowLabel

bool QgsAttributeEditorElement::mShowLabel
protected

Definition at line 207 of file qgsattributeeditorelement.h.

◆ mType

AttributeEditorType QgsAttributeEditorElement::mType
protected

Definition at line 204 of file qgsattributeeditorelement.h.


The documentation for this class was generated from the following files: