mirror of
https://github.com/qgis/QGIS.git
synced 2025-10-08 00:05:09 -04:00
code layout
This commit is contained in:
parent
b97543d9cc
commit
9488f06025
@ -48,6 +48,9 @@ Returns the current feature
|
||||
|
||||
signals:
|
||||
void featureChanged( const QgsFeature &feature );
|
||||
%Docstring
|
||||
Emitted when the current feature changes
|
||||
%End
|
||||
|
||||
|
||||
};
|
||||
|
@ -250,6 +250,9 @@ Update the request to match the current feature to be reloaded
|
||||
%End
|
||||
|
||||
void setExtraIdentifierValueUnguarded( const QVariant &identifierValue );
|
||||
%Docstring
|
||||
This will set the identifier value to be set in the model even if it doesn't exist currently in the data
|
||||
%End
|
||||
|
||||
|
||||
|
||||
|
@ -40,7 +40,7 @@ QgsFeatureFilterModel::QgsFeatureFilterModel( QObject *parent )
|
||||
{
|
||||
setFetchGeometry( false );
|
||||
setFetchLimit( QgsSettings().value( QStringLiteral( "maxEntriesRelationWidget" ), 100, QgsSettings::Gui ).toInt() );
|
||||
setExtraIdentifierValueUnguarded( QVariantList() );
|
||||
setExtraIdentifierValueUnguarded( nullIentifier() );
|
||||
}
|
||||
|
||||
QString QgsFeatureFilterModel::identifierField() const
|
||||
|
@ -25,7 +25,7 @@ QgsFeaturePickerModel::QgsFeaturePickerModel( QObject *parent )
|
||||
: QgsFeaturePickerModelBase( parent )
|
||||
{
|
||||
setFetchGeometry( true );
|
||||
setExtraIdentifierValueUnguarded( FID_NULL );
|
||||
setExtraIdentifierValueUnguarded( nullIentifier() );
|
||||
|
||||
connect( this, &QgsFeaturePickerModelBase::extraIdentifierValueIndexChanged, this, [ = ]() {emit featureChanged( feature() );} );
|
||||
}
|
||||
|
@ -55,6 +55,7 @@ class CORE_EXPORT QgsFeaturePickerModel : public QgsFeaturePickerModelBase
|
||||
QgsFeature feature() const;
|
||||
|
||||
signals:
|
||||
//! Emitted when the current feature changes
|
||||
void featureChanged( const QgsFeature &feature );
|
||||
|
||||
|
||||
|
@ -274,6 +274,7 @@ class CORE_EXPORT QgsFeaturePickerModelBase : public QAbstractItemModel SIP_ABST
|
||||
//! Update the request to match the current feature to be reloaded
|
||||
virtual void requestToReloadCurrentFeature( QgsFeatureRequest &request ) = 0;
|
||||
|
||||
//! This will set the identifier value to be set in the model even if it doesn't exist currently in the data
|
||||
void setExtraIdentifierValueUnguarded( const QVariant &identifierValue );
|
||||
|
||||
#ifndef SIP_RUN
|
||||
@ -284,10 +285,11 @@ class CORE_EXPORT QgsFeaturePickerModelBase : public QAbstractItemModel SIP_ABST
|
||||
*/
|
||||
virtual QSet<QString> requestedAttributes() const {return {};}
|
||||
|
||||
//! Creates the value gatherer
|
||||
virtual QgsFeatureExpressionValuesGatherer *createValuesGatherer( const QgsFeatureRequest &request ) const = 0;
|
||||
|
||||
//! Creates an entry with just the identifier so the feature can be retrieved in a next iteration
|
||||
virtual QgsFeatureExpressionValuesGatherer::Entry createEntry( const QVariant &identifer ) const = 0;
|
||||
virtual QgsFeatureExpressionValuesGatherer::Entry createEntry( const QVariant &identifier ) const = 0;
|
||||
|
||||
//! Returns the identifier of the given entry
|
||||
virtual QVariant entryIdentifier( const QgsFeatureExpressionValuesGatherer::Entry &entry ) const = 0;
|
||||
|
@ -102,7 +102,7 @@ class TestQgsRelationEditWidget(unittest.TestCase):
|
||||
spy = QSignalSpy(w.featureChanged)
|
||||
spy.wait()
|
||||
w.findChild(QComboBox).lineEdit().clear()
|
||||
QTest.keyClicks(w.findChild(QComboBox).lineEdit(), "test99");
|
||||
QTest.keyClicks(w.findChild(QComboBox).lineEdit(), "test99")
|
||||
spy.wait()
|
||||
self.assertEqual(w.feature().id(), 99)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user