From 551fd5754bb60ada5990a4b6a40b2b09494c1edd Mon Sep 17 00:00:00 2001 From: Mathieu Pellerin Date: Sat, 4 Feb 2023 09:11:30 +0700 Subject: [PATCH 1/4] Fix UUID edit widget not creating UUIDs when in read-only mode --- src/qml/FeatureForm.qml | 2 ++ src/qml/editorwidgets/UuidGenerator.qml | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/qml/FeatureForm.qml b/src/qml/FeatureForm.qml index ff491ad3c5..4d17def2b9 100644 --- a/src/qml/FeatureForm.qml +++ b/src/qml/FeatureForm.qml @@ -511,6 +511,8 @@ Page { // - not set to editable in the widget configuration // - not in edit mode (ReadOnly) // - a relation in multi edit mode + property bool isAdding: form.state === 'Add' + property bool isEditing: form.state === 'Edit' property bool isEnabled: !!AttributeEditable && form.state !== 'ReadOnly' && !( Type === 'relation' && form.model.featureModel.modelMode == FeatureModel.MultiFeatureModel ) diff --git a/src/qml/editorwidgets/UuidGenerator.qml b/src/qml/editorwidgets/UuidGenerator.qml index 9046684e6e..b21b340e04 100644 --- a/src/qml/editorwidgets/UuidGenerator.qml +++ b/src/qml/editorwidgets/UuidGenerator.qml @@ -28,12 +28,13 @@ EditorWidgetBase { color: 'gray' text: { var displayValue = value !== undefined ? value : '' - if (isLoaded && isEnabled && (value === undefined || value == '')) { + if (isLoaded && isAdding && (value == undefined || value === '')) { displayValue = StringUtils.createUuid(); valueChangeRequested(displayValue ,false); } return displayValue; } + elide: Text.ElideMiddle } Rectangle { From 9f0b11df0580897db3c106238f2e4313d0afa74a Mon Sep 17 00:00:00 2001 From: Mathieu Pellerin Date: Sat, 4 Feb 2023 08:55:14 +0700 Subject: [PATCH 2/4] Fix layer tree node extent breaks map canvas for 1-point vector layers (fixes #3871) --- src/core/layertreemodel.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/core/layertreemodel.cpp b/src/core/layertreemodel.cpp index eae817b066..90823b9be6 100644 --- a/src/core/layertreemodel.cpp +++ b/src/core/layertreemodel.cpp @@ -1208,6 +1208,28 @@ QgsRectangle FlatLayerTreeModelBase::nodeExtent( const QModelIndex &index, QgsQu } } + if ( extent.width() == 0.0 || extent.height() == 0.0 ) + { + // If all of the features are at the one point, buffer the + // rectangle a bit. If they are all at zero, do something a bit + // more crude. + if ( extent.xMinimum() == 0.0 && extent.xMaximum() == 0.0 && extent.yMinimum() == 0.0 && extent.yMaximum() == 0.0 ) + { + extent.set( -1.0, -1.0, 1.0, 1.0 ); + } + else + { + const double padFactor = 1e-8; + const double widthPad = extent.xMinimum() * padFactor; + const double heightPad = extent.yMinimum() * padFactor; + const double xmin = extent.xMinimum() - widthPad; + const double xmax = extent.xMaximum() + widthPad; + const double ymin = extent.yMinimum() - heightPad; + const double ymax = extent.yMaximum() + heightPad; + extent.set( xmin, ymin, xmax, ymax ); + } + } + if ( buffer ) { extent = extent.buffered( extent.width() * buffer ); From c1b354fd6fb92397c598eb71991dbc228d9c29a6 Mon Sep 17 00:00:00 2001 From: Mathieu Pellerin Date: Sat, 4 Feb 2023 10:08:07 +0700 Subject: [PATCH 3/4] Fix blurry show (parent) feature button, make it black to better sit alongside other widgets --- images/images.qrc | 6 +----- images/themes/qfield/hdpi/ic_view_green_48dp.png | Bin 1504 -> 0 bytes images/themes/qfield/mdpi/ic_view_green_48dp.png | Bin 1087 -> 0 bytes .../themes/qfield/nodpi/ic_view_black_24dp.svg | 4 ++++ .../themes/qfield/nodpi/ic_view_green_48dp.svg | 13 ------------- .../themes/qfield/xhdpi/ic_view_green_48dp.png | Bin 2020 -> 0 bytes .../themes/qfield/xxhdpi/ic_view_green_48dp.png | Bin 2992 -> 0 bytes .../themes/qfield/xxxhdpi/ic_view_green_48dp.png | Bin 4090 -> 0 bytes src/qml/editorwidgets/RelationReference.qml | 2 +- 9 files changed, 6 insertions(+), 19 deletions(-) delete mode 100644 images/themes/qfield/hdpi/ic_view_green_48dp.png delete mode 100644 images/themes/qfield/mdpi/ic_view_green_48dp.png create mode 100644 images/themes/qfield/nodpi/ic_view_black_24dp.svg delete mode 100644 images/themes/qfield/nodpi/ic_view_green_48dp.svg delete mode 100644 images/themes/qfield/xhdpi/ic_view_green_48dp.png delete mode 100644 images/themes/qfield/xxhdpi/ic_view_green_48dp.png delete mode 100644 images/themes/qfield/xxxhdpi/ic_view_green_48dp.png diff --git a/images/images.qrc b/images/images.qrc index 49074341ce..41a9f1db90 100644 --- a/images/images.qrc +++ b/images/images.qrc @@ -477,11 +477,7 @@ themes/qfield/nodpi/ic_reshape_tool_white_24dp.svg themes/qfield/nodpi/ic_ring_tool_white_24dp.svg themes/qfield/nodpi/ic_vertex_tool_white_24dp.svg - themes/qfield/hdpi/ic_view_green_48dp.png - themes/qfield/mdpi/ic_view_green_48dp.png - themes/qfield/xhdpi/ic_view_green_48dp.png - themes/qfield/xxhdpi/ic_view_green_48dp.png - themes/qfield/xxxhdpi/ic_view_green_48dp.png + themes/qfield/nodpi/ic_view_black_24dp.svg themes/qfield/hdpi/content-cut.png themes/qfield/mdpi/content-cut.png themes/qfield/xhdpi/content-cut.png diff --git a/images/themes/qfield/hdpi/ic_view_green_48dp.png b/images/themes/qfield/hdpi/ic_view_green_48dp.png deleted file mode 100644 index ec5fdaaadb88aecc7063e2b7461b58cd4b301b51..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1504 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 + + + diff --git a/images/themes/qfield/nodpi/ic_view_green_48dp.svg b/images/themes/qfield/nodpi/ic_view_green_48dp.svg deleted file mode 100644 index 323979b7f4..0000000000 --- a/images/themes/qfield/nodpi/ic_view_green_48dp.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - image/svg+xml - - - - - - - diff --git a/images/themes/qfield/xhdpi/ic_view_green_48dp.png b/images/themes/qfield/xhdpi/ic_view_green_48dp.png deleted file mode 100644 index 6151863a940e8d5b5631c158a5c099d68cae13cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2020 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 I)O3vaAL`_|y8r+H diff --git a/images/themes/qfield/xxxhdpi/ic_view_green_48dp.png b/images/themes/qfield/xxxhdpi/ic_view_green_48dp.png deleted file mode 100644 index f51318cf5dfa47863485277f484ae1121115e340..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4090 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 diff --git a/src/qml/editorwidgets/RelationReference.qml b/src/qml/editorwidgets/RelationReference.qml index 3bf6b0c923..ab23b1c291 100644 --- a/src/qml/editorwidgets/RelationReference.qml +++ b/src/qml/editorwidgets/RelationReference.qml @@ -57,7 +57,7 @@ EditorWidgetBase { height: 48 bgcolor: "transparent" - iconSource: Theme.getThemeIcon("ic_view_green_48dp") + iconSource: Theme.getThemeVectorIcon("ic_view_black_24dp") onClicked: { if ( relationReference.currentKeyValue !== undefined && relationReference.currentKeyValue !== '' ) { From 214eee786452976d2c3b271d10c05dc51a985547 Mon Sep 17 00:00:00 2001 From: Mathieu Pellerin Date: Sat, 4 Feb 2023 09:33:16 +0700 Subject: [PATCH 4/4] Avoid hidding attribute linked to parent feature in relation, just disable --- src/core/attributeformmodelbase.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/core/attributeformmodelbase.cpp b/src/core/attributeformmodelbase.cpp index 874ec9c8f5..868ad3c034 100644 --- a/src/core/attributeformmodelbase.cpp +++ b/src/core/attributeformmodelbase.cpp @@ -262,8 +262,11 @@ void AttributeFormModelBase::updateAttributeValue( QStandardItem *item ) QVariant attributeValue = mFeatureModel->data( mFeatureModel->index( fieldIndex ), FeatureModel::AttributeValue ); item->setData( attributeValue.isNull() ? QVariant() : attributeValue, AttributeFormModel::AttributeValue ); item->setData( mFeatureModel->data( mFeatureModel->index( fieldIndex ), FeatureModel::AttributeAllowEdit ), AttributeFormModel::AttributeAllowEdit ); - //set item visibility to false in case it's a linked attribute - item->setData( !mFeatureModel->data( mFeatureModel->index( fieldIndex ), FeatureModel::LinkedAttribute ).toBool(), AttributeFormModel::CurrentlyVisible ); + // set item editable state to false in case it's a linked attribute + if ( mFeatureModel->data( mFeatureModel->index( fieldIndex ), FeatureModel::LinkedAttribute ).toBool() ) + { + item->setData( false, AttributeFormModel::AttributeEditable ); + } } else if ( item->data( AttributeFormModel::ElementType ) == QStringLiteral( "qml" ) || item->data( AttributeFormModel::ElementType ) == QStringLiteral( "html" ) ) {