16#ifndef QGSATTRIBUTESFORMMODEL_H
17#define QGSATTRIBUTESFORMMODEL_H
28#include <QAbstractItemModel>
30#include <QSortFilterProxyModel>
134 operator QVariant() {
return QVariant::fromValue<AttributeFormItemData>( *
this ); }
192 bool showLabel()
const;
195 void setShowLabel(
bool showLabel );
331 QColor backgroundColor()
const;
338 void setBackgroundColor(
const QColor &backgroundColor );
353 int mColumnCount = 1;
355 bool mShowLabel =
true;
356 int mHorizontalStretch = 0;
357 int mVerticalStretch = 0;
364 QColor mBackgroundColor;
365 bool mCollapsed =
false;
451 QVariant data(
int role )
const;
456 bool setData(
int role,
const QVariant &value );
461 void addChild( std::unique_ptr< QgsAttributesFormItem > &&child );
466 void insertChild(
int position, std::unique_ptr< QgsAttributesFormItem > &&item );
471 void deleteChildAtIndex(
int index );
476 void deleteChildren();
486 QString
id()
const {
return mId; }
491 QString
name()
const {
return mName; }
503 QIcon
icon()
const {
return mIcon; }
529 QString mName = QString();
530 QString mDisplayName = QString();
533 QString mId = QString();
537 std::vector< std::unique_ptr< QgsAttributesFormItem > > mChildren;
582 QModelIndex
index(
int row,
int column,
const QModelIndex &
parent = QModelIndex() )
const override;
583 QModelIndex
parent(
const QModelIndex &
index )
const override;
585 int rowCount(
const QModelIndex &
parent = QModelIndex() )
const override;
588 bool setData(
const QModelIndex &
index,
const QVariant &value,
int role = Qt::EditRole )
override;
661 bool indexLessThan(
const QModelIndex &a,
const QModelIndex &b )
const;
709 Qt::ItemFlags
flags(
const QModelIndex &
index )
const override;
710 QVariant
headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole )
const override;
712 QVariant
data(
const QModelIndex &
index,
int role = Qt::DisplayRole )
const override;
716 QMimeData *
mimeData(
const QModelIndexList &indexes )
const override;
761 void populateActionItems(
const QList<QgsAction> actions );
786 Qt::ItemFlags
flags(
const QModelIndex &
index )
const override;
787 QVariant
headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole )
const override;
789 QVariant
data(
const QModelIndex &
index,
int role = Qt::DisplayRole )
const override;
799 QMimeData *
mimeData(
const QModelIndexList &indexes )
const override;
800 bool dropMimeData(
const QMimeData *
data, Qt::DropAction action,
int row,
int column,
const QModelIndex &
parent )
override;
801 bool removeRows(
int row,
int count,
const QModelIndex &
parent = QModelIndex() )
override;
811 QList< QgsAddAttributeFormContainerDialog::ContainerPair >
listOfContainers()
const;
873 QModelIndexList curateIndexesForMimeData(
const QModelIndexList &indexes )
const;
917 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.