mirror of
https://github.com/qgis/QGIS.git
synced 2025-10-06 00:07:29 -04:00
Manually bring remaining merge policy changes from PR #60710; fix doc strings
This commit is contained in:
parent
f9188d772f
commit
c844ba28b0
@ -47,6 +47,7 @@ QgsAttributesFormData::FieldConfig::FieldConfig( QgsVectorLayer *layer, int idx
|
||||
mEditorWidgetConfig = setup.config();
|
||||
mSplitPolicy = layer->fields().at( idx ).splitPolicy();
|
||||
mDuplicatePolicy = layer->fields().at( idx ).duplicatePolicy();
|
||||
mMergePolicy = layer->fields().at( idx ).mergePolicy();
|
||||
}
|
||||
|
||||
QgsAttributesFormData::FieldConfig::operator QVariant()
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include <QPushButton>
|
||||
|
||||
/**
|
||||
* \brief Class to describe editor data contained within a QgsAttributesFormModel.
|
||||
* \brief Describes editor data contained in a QgsAttributesFormModel.
|
||||
*
|
||||
* \warning Not part of stable API and may change in future QGIS releases.
|
||||
* \ingroup gui
|
||||
@ -78,6 +78,7 @@ class GUI_EXPORT QgsAttributesFormData
|
||||
QString mComment;
|
||||
Qgis::FieldDomainSplitPolicy mSplitPolicy = Qgis::FieldDomainSplitPolicy::Duplicate;
|
||||
Qgis::FieldDuplicatePolicy mDuplicatePolicy = Qgis::FieldDuplicatePolicy::Duplicate;
|
||||
Qgis::FieldDomainMergePolicy mMergePolicy = Qgis::FieldDomainMergePolicy::DefaultValue;
|
||||
|
||||
operator QVariant();
|
||||
};
|
||||
@ -114,7 +115,7 @@ class GUI_EXPORT QgsAttributesFormData
|
||||
};
|
||||
|
||||
/**
|
||||
* \brief Main class to store and transfer editor data contained within a QgsAttributesFormModel.
|
||||
* \brief Main class to store and transfer editor data contained in a QgsAttributesFormModel.
|
||||
*
|
||||
* \ingroup gui
|
||||
* \note Prior to QGIS 3.44 this was available as QgsAttributesFormProperties::DnDTreeItemData
|
||||
@ -365,7 +366,7 @@ class GUI_EXPORT QgsAttributesFormData
|
||||
|
||||
|
||||
/**
|
||||
* \brief Class to hold parent-child relations as well as item data contained within a QgsAttributesFormModel.
|
||||
* \brief Holds parent-child relations as well as item data contained in a QgsAttributesFormModel.
|
||||
*
|
||||
* \warning Not part of stable API and may change in future QGIS releases.
|
||||
* \ingroup gui
|
||||
@ -618,7 +619,7 @@ class GUI_EXPORT QgsAttributesFormModel : public QAbstractItemModel
|
||||
|
||||
|
||||
/**
|
||||
* \brief Class for available widgets when configuring attributes forms.
|
||||
* \brief Manages available widgets when configuring attributes forms.
|
||||
*
|
||||
* \warning Not part of stable API and may change in future QGIS releases.
|
||||
* \ingroup gui
|
||||
@ -693,7 +694,7 @@ class GUI_EXPORT QgsAttributesAvailableWidgetsModel : public QgsAttributesFormMo
|
||||
|
||||
|
||||
/**
|
||||
* \brief Class for form layouts when configuring attributes forms via drag and drop designer.
|
||||
* \brief Manages form layouts when configuring attributes forms via drag and drop designer.
|
||||
*
|
||||
* \warning Not part of stable API and may change in future QGIS releases.
|
||||
* \ingroup gui
|
||||
|
@ -1608,6 +1608,11 @@ void QgsAttributesFormProperties::copyWidgetConfiguration()
|
||||
duplicatePolicyElement.setAttribute( QStringLiteral( "policy" ), qgsEnumValueToKey( field.duplicatePolicy() ) );
|
||||
documentElement.appendChild( duplicatePolicyElement );
|
||||
|
||||
// Merge policy
|
||||
QDomElement mergePolicyElement = doc.createElement( QStringLiteral( "mergePolicy" ) );
|
||||
mergePolicyElement.setAttribute( QStringLiteral( "policy" ), qgsEnumValueToKey( field.mergePolicy() ) );
|
||||
documentElement.appendChild( mergePolicyElement );
|
||||
|
||||
// Default expressions
|
||||
QDomElement defaultElem = doc.createElement( QStringLiteral( "default" ) );
|
||||
defaultElem.setAttribute( QStringLiteral( "expression" ), field.defaultValueDefinition().expression() );
|
||||
@ -1704,6 +1709,14 @@ void QgsAttributesFormProperties::pasteWidgetConfiguration()
|
||||
// // Get base config from target item and ovewrite settings when possible
|
||||
// FieldConfig config = item->data( 0, FieldConfigRole ).value<FieldConfig>();
|
||||
|
||||
// Merge policy
|
||||
const QDomElement mergePolicyElement = docElem.firstChildElement( QStringLiteral( "mergePolicy" ) );
|
||||
if ( !mergePolicyElement.isNull() )
|
||||
{
|
||||
const Qgis::FieldDomainMergePolicy policy = qgsEnumKeyToValue( mergePolicyElement.attribute( QStringLiteral( "policy" ) ), Qgis::FieldDomainMergePolicy::DefaultValue );
|
||||
config.mMergePolicy = policy;
|
||||
}
|
||||
|
||||
// Default expressions
|
||||
const QDomElement defaultElement = docElem.firstChildElement( QStringLiteral( "default" ) );
|
||||
if ( !defaultElement.isNull() )
|
||||
|
@ -50,7 +50,7 @@ class QgsAttributeWidgetEdit;
|
||||
class QgsAttributesFormBaseView;
|
||||
|
||||
/**
|
||||
* \brief Class to create a panel to configure attributes forms.
|
||||
* \brief Creates panels to configure attributes forms.
|
||||
*
|
||||
* \warning Not part of stable API and may change in future QGIS releases.
|
||||
* \ingroup gui
|
||||
|
Loading…
x
Reference in New Issue
Block a user