16#ifndef QGSATTRIBUTESFORMMODEL_H
17#define QGSATTRIBUTESFORMMODEL_H
28#include <QAbstractItemModel>
30#include <QSortFilterProxyModel>
133 operator QVariant() {
return QVariant::fromValue<AttributeFormItemData>( *
this ); }
191 bool showLabel()
const;
194 void setShowLabel(
bool showLabel );
330 QColor backgroundColor()
const;
337 void setBackgroundColor(
const QColor &backgroundColor );
352 int mColumnCount = 1;
354 bool mShowLabel =
true;
355 int mHorizontalStretch = 0;
356 int mVerticalStretch = 0;
363 QColor mBackgroundColor;
364 bool mCollapsed =
false;
450 QVariant data(
int role )
const;
455 bool setData(
int role,
const QVariant &value );
460 void addChild( std::unique_ptr< QgsAttributesFormItem > &&child );
465 void insertChild(
int position, std::unique_ptr< QgsAttributesFormItem > &&item );
470 void deleteChildAtIndex(
int index );
475 void deleteChildren();
485 QString
id()
const {
return mId; }
490 QString
name()
const {
return mName; }
502 QIcon
icon()
const {
return mIcon; }
528 QString mName = QString();
529 QString mDisplayName = QString();
532 QString mId = QString();
536 std::vector< std::unique_ptr< QgsAttributesFormItem > > mChildren;
580 QModelIndex
index(
int row,
int column,
const QModelIndex &
parent = QModelIndex() )
const override;
581 QModelIndex
parent(
const QModelIndex &
index )
const override;
583 int rowCount(
const QModelIndex &
parent = QModelIndex() )
const override;
586 bool setData(
const QModelIndex &
index,
const QVariant &value,
int role = Qt::EditRole )
override;
658 bool indexLessThan(
const QModelIndex &a,
const QModelIndex &b )
const;
705 Qt::ItemFlags
flags(
const QModelIndex &
index )
const override;
706 QVariant
headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole )
const override;
708 QVariant
data(
const QModelIndex &
index,
int role = Qt::DisplayRole )
const override;
712 QMimeData *
mimeData(
const QModelIndexList &indexes )
const override;
756 void populateActionItems(
const QList<QgsAction> actions );
780 Qt::ItemFlags
flags(
const QModelIndex &
index )
const override;
781 QVariant
headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole )
const override;
783 QVariant
data(
const QModelIndex &
index,
int role = Qt::DisplayRole )
const override;
793 QMimeData *
mimeData(
const QModelIndexList &indexes )
const override;
794 bool dropMimeData(
const QMimeData *
data, Qt::DropAction action,
int row,
int column,
const QModelIndex &
parent )
override;
795 bool removeRows(
int row,
int count,
const QModelIndex &
parent = QModelIndex() )
override;
805 QList< QgsAddAttributeFormContainerDialog::ContainerPair >
listOfContainers()
const;
867 QModelIndexList curateIndexesForMimeData(
const QModelIndexList &indexes )
const;
910 bool filterAcceptsRow(
int sourceRow,
const QModelIndex &sourceParent )
const override;
AttributeEditorContainerType
Attribute editor container types.
AttributeFormReuseLastValuePolicy
Attribute form policy for reusing last entered values.
@ NotAllowed
Reuse of last values not allowed.
FieldDomainMergePolicy
Merge policy for field domains.
@ DefaultValue
Use default field value.
FieldDomainSplitPolicy
Split policy for field domains.
@ Duplicate
Duplicate original value.
FieldDuplicatePolicy
Duplicate policy for fields.
@ Duplicate
Duplicate original value.
An abstract base class for any elements of a drag and drop form.
Stores information about constraints which may be present on a field.
An expression with an additional enabled flag.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
A grouped map of multiple QgsProperty objects, each referenced by an integer key value.
Represents a vector layer which manages a vector based dataset.
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
The TabStyle struct defines color and font overrides for form fields, tabs and groups labels.