48 , mAttributes( rhs.mAttributes )
50 , mOwnsGeometry( false )
51 , mValid( rhs.mValid )
52 , mFields( rhs.mFields )
69 mAttributes = rhs.mAttributes;
71 mFields = rhs.mFields;
74 if ( mGeometry && mOwnsGeometry )
78 mOwnsGeometry =
false;
92 if ( mOwnsGeometry && mGeometry )
108 mAttributes.remove( field );
119 mOwnsGeometry =
false;
142 if ( mOwnsGeometry && mGeometry )
149 mOwnsGeometry =
true;
183 mAttributes.resize( fieldCount );
184 QVariant* ptr = mAttributes.data();
185 for (
int i = 0; i < fieldCount; ++i, ++ptr )
192 if ( idx < 0 || idx >= mAttributes.size() )
198 mAttributes[idx] = value;
205 if ( fieldIdx == -1 )
208 mAttributes[fieldIdx] = value;
215 if ( fieldIdx == -1 )
218 mAttributes[fieldIdx].clear();
224 if ( fieldIdx < 0 || fieldIdx >= mAttributes.count() )
226 return mAttributes[fieldIdx];
233 if ( fieldIdx == -1 )
236 return mAttributes[fieldIdx];
241 for (
int i = 0; i < mFields.
count(); ++i )
243 if ( QString::compare( mFields.
at( i ).
name(), fieldName, Qt::CaseInsensitive ) == 0 )