void TestQgsFields::isEmpty() { QgsFields fields; QVERIFY( fields.isEmpty() ); QgsField field( "testfield" ); fields.append( field ); QVERIFY( !fields.isEmpty() ); }
QgsFeatureList QgsClipboard::copyOf( const QgsFields &fields ) { QgsDebugMsg( "returning clipboard." ); if ( !mUseSystemClipboard ) return mFeatureClipboard; QClipboard *cb = QApplication::clipboard(); #ifndef Q_OS_WIN QString text = cb->text( QClipboard::Selection ); #else QString text = cb->text( QClipboard::Clipboard ); #endif QStringList values = text.split( "\n" ); if ( values.isEmpty() || text.isEmpty() ) return mFeatureClipboard; QgsFeatureList features; foreach ( QString row, values ) { // Assume that it's just WKT for now. QgsGeometry* geometry = QgsGeometry::fromWkt( row ); if ( !geometry ) continue; QgsFeature* feature = new QgsFeature(); if ( !fields.isEmpty() ) feature->setFields( &fields, true ); feature->setGeometry( geometry ); features.append( QgsFeature( *feature ) ); }
QgsFeatureList QgsClipboard::stringToFeatureList( const QString &string, const QgsFields &fields ) const { //first try using OGR to read string QgsFeatureList features = QgsOgrUtils::stringToFeatureList( string, fields, QTextCodec::codecForName( "System" ) ); if ( !features.isEmpty() ) return features; // otherwise try to read in as WKT QStringList values = string.split( '\n' ); if ( values.isEmpty() || string.isEmpty() ) return features; Q_FOREACH ( const QString &row, values ) { // Assume that it's just WKT for now. QgsGeometry geometry = QgsGeometry::fromWkt( row ); if ( geometry.isNull() ) continue; QgsFeature feature; if ( !fields.isEmpty() ) feature.setFields( fields, true ); feature.setGeometry( geometry ); features.append( feature ); }
void QgsVectorFieldSymbolLayer::startRender( QgsSymbolRenderContext& context ) { if ( mLineSymbol ) { mLineSymbol->startRender( context.renderContext(), context.fields() ); } QgsFields fields = context.fields(); if ( !fields.isEmpty() ) { mXIndex = fields.lookupField( mXAttribute ); mYIndex = fields.lookupField( mYAttribute ); } else { mXIndex = -1; mYIndex = -1; } }