@@ -826,15 +826,14 @@ void QgsRelationReferenceWidget::filterChanged()
826
826
QStringList texts;
827
827
Q_FOREACH ( const QString &txt, mFilterCache [ccb->property ( " Field" ).toString ()][ccb->currentText ()] )
828
828
{
829
- #if 0
830
829
QMap<QString, QString> filtersAttrs = filters;
831
830
filtersAttrs[fieldName] = QgsExpression::createFieldEqualityExpression ( fieldName, txt );
832
831
QString expression = filtersAttrs.values ().join ( QStringLiteral ( " AND " ) );
833
832
834
833
QgsAttributeList subset = attrs;
835
834
subset << mReferencedLayer ->fields ().lookupField ( fieldName );
836
835
837
- QgsFeatureIterator it( mMasterModel->layerCache() ->getFeatures( QgsFeatureRequest().setFilterExpression( expression ).setSubsetOfAttributes( subset ) ) );
836
+ QgsFeatureIterator it ( mReferencedLayer ->getFeatures ( QgsFeatureRequest ().setFilterExpression ( expression ).setSubsetOfAttributes ( subset ) ) );
838
837
839
838
bool found = false ;
840
839
while ( it.nextFeature ( f ) )
@@ -847,7 +846,6 @@ void QgsRelationReferenceWidget::filterChanged()
847
846
848
847
// item is only provided if at least 1 feature exists
849
848
if ( found )
850
- #endif
851
849
texts << txt;
852
850
}
853
851
@@ -861,25 +859,8 @@ void QgsRelationReferenceWidget::filterChanged()
861
859
}
862
860
}
863
861
}
864
- #if 0
865
- if ( !mChainFilters || ( mChainFilters && !filtered ) )
866
- {
867
- filterExpression = filters.values().join( QStringLiteral( " AND " ) );
868
-
869
- QgsFeatureRequest req = QgsFeatureRequest().setSubsetOfAttributes( attrs );
870
- if ( !filterExpression.isEmpty() )
871
- req.setFilterExpression( filterExpression );
872
-
873
- QgsFeatureIterator it( mMasterModel->layerCache()->getFeatures( req ) );
874
-
875
- while ( it.nextFeature( f ) )
876
- {
877
- featureIds << f.id();
878
- }
879
- }
880
-
881
- mFilterModel->setFilteredFeatures( featureIds );
882
- #endif
862
+ filterExpression = filters.values ().join ( QStringLiteral ( " AND " ) );
863
+ mComboBox ->setFilterExpression ( filterExpression );
883
864
}
884
865
885
866
void QgsRelationReferenceWidget::addEntry ()
0 commit comments