[GRASS] fixed interactive cat input selection for polygons

This commit is contained in:
Radim Blazek 2015-09-26 16:09:19 +02:00
parent 9df1a08d46
commit ddecc6f5d8
2 changed files with 3 additions and 4 deletions

View File

@ -975,6 +975,7 @@ QStringList QgsGrassModuleInput::currentLayerCodes()
{
Q_FOREACH ( QString type, currentGeometryTypeNames() )
{
type.replace( "area", "polygon" );
list << QString( "%1_%2" ).arg( currentLayer()->number() ).arg( type );
}
}
@ -1015,7 +1016,8 @@ void QgsGrassModuleInput::onChanged( const QString & text )
foreach ( QgsGrassVectorLayer *layer, mVector->layers() )
{
QgsDebugMsg( QString( "layer->number() = %1 layer.type() = %2 mGeometryTypeMask = %3" ).arg( layer->number() ).arg( layer->type() ).arg( mGeometryTypeMask ) );
if ( layer->type() & mGeometryTypeMask )
// TODO: does it make sense to add layer 0, i.e. no layer?
if ( layer->number() > 0 && layer->type() & mGeometryTypeMask )
{
mLayers.append( layer );
}

View File

@ -1197,7 +1197,6 @@ QgsGrassModuleSelection::QgsGrassModuleSelection(
QDomNode promptNode = gnode.namedItem( "gisprompt" );
QDomElement promptElem = promptNode.toElement();
QString element = promptElem.attribute( "element" );
mLayerId = qdesc.attribute( "layerid" );
@ -1213,11 +1212,9 @@ QgsGrassModuleSelection::QgsGrassModuleSelection(
QHBoxLayout *l = new QHBoxLayout( this );
mLineEdit = new QLineEdit( this );
//mLineEdit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
l->addWidget( mLineEdit );
mModeComboBox = new QComboBox( this );
//mComboBox->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Preferred);
mModeComboBox->setSizeAdjustPolicy( QComboBox::AdjustToContents );
mModeComboBox->addItem( tr( "Manual entry" ), Manual );
connect( mModeComboBox, SIGNAL( currentIndexChanged( int ) ), SLOT( onModeChanged() ) );