QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
Classes | Public Types | Public Member Functions | List of all members
QgsFields Class Reference

Container of fields for a vector layer. More...

#include <qgsfield.h>

Classes

struct  Field
 

Public Types

typedef struct QgsFields::Field Field
 
enum  FieldOrigin {
  OriginUnknown, OriginProvider, OriginJoin, OriginEdit,
  OriginExpression
}
 

Public Member Functions

 QgsFields ()
 Constructor for an empty field container. More...
 
 QgsFields (const QgsFields &other)
 Copy constructor. More...
 
virtual ~QgsFields ()
 
QgsAttributeList allAttributesList () const
 Utility function to get list of attribute indexes. More...
 
bool append (const QgsField &field, FieldOrigin origin=OriginProvider, int originIndex=-1)
 Append a field. The field must have unique name, otherwise it is rejected (returns false) More...
 
bool appendExpressionField (const QgsField &field, int originIndex)
 Append an expression field. The field must have unique name, otherwise it is rejected (returns false) More...
 
const QgsFieldat (int i) const
 Get field at particular index (must be in range 0..N-1) More...
 
const_iterator begin () const noexcept
 Returns a const STL-style iterator pointing to the first item in the list. More...
 
iterator begin ()
 Returns an STL-style iterator pointing to the first item in the list. More...
 
void clear ()
 Remove all fields. More...
 
const_iterator constBegin () const noexcept
 Returns a const STL-style iterator pointing to the first item in the list. More...
 
const_iterator constEnd () const noexcept
 Returns a const STL-style iterator pointing to the imaginary item after the last item in the list. More...
 
int count () const
 Return number of items. More...
 
const_iterator end () const noexcept
 Returns a const STL-style iterator pointing to the imaginary item after the last item in the list. More...
 
iterator end ()
 Returns an STL-style iterator pointing to the imaginary item after the last item in the list. More...
 
bool exists (int i) const
 Return if a field index is valid. More...
 
void extend (const QgsFields &other)
 Extend with fields from another QgsFields container. More...
 
const QgsFieldfield (int fieldIdx) const
 Get field at particular index (must be in range 0..N-1) More...
 
const QgsFieldfield (const QString &name) const
 Get field at particular index (must be in range 0..N-1) More...
 
int fieldNameIndex (const QString &fieldName) const
 Look up field's index from name also looks up case-insensitive if there is no match otherwise. More...
 
FieldOrigin fieldOrigin (int fieldIdx) const
 Get field's origin (value from an enumeration) More...
 
int fieldOriginIndex (int fieldIdx) const
 Get field's origin index (its meaning is specific to each type of origin) More...
 
QIcon iconForField (int fieldIdx) const
 Returns an icon corresponding to a field index, based on the field's type and source. More...
 
int indexFromName (const QString &name) const
 Look up field's index from name. Returns -1 on error. More...
 
bool isEmpty () const
 Check whether the container is empty. More...
 
 operator QVariant () const
 Allows direct construction of QVariants from fields. More...
 
bool operator!= (const QgsFields &other) const
 
QgsFieldsoperator= (const QgsFields &other)
 Assignment operator. More...
 
bool operator== (const QgsFields &other) const
 
const QgsFieldoperator[] (int i) const
 Get field at particular index (must be in range 0..N-1) More...
 
QgsFieldoperator[] (int i)
 Get field at particular index (must be in range 0..N-1) More...
 
void remove (int fieldIdx)
 Remove a field with the given index. More...
 
int size () const
 Return number of items. More...
 
QList< QgsFieldtoList () const
 Utility function to return a list of QgsField instances. More...
 

Detailed Description

Container of fields for a vector layer.

In addition to storing a list of QgsField instances, it also:

Definition at line 252 of file qgsfield.h.

Member Typedef Documentation

◆ Field

Member Enumeration Documentation

◆ FieldOrigin

Enumerator
OriginUnknown 

it has not been specified where the field comes from

OriginProvider 

field comes from the underlying data provider of the vector layer (originIndex = index in provider's fields)

OriginJoin 

field comes from a joined layer (originIndex / 1000 = index of the join, originIndex % 1000 = index within the join)

OriginEdit 

field has been temporarily added in editing mode (originIndex = index in the list of added attributes)

OriginExpression 

field is calculated from an expression

Definition at line 256 of file qgsfield.h.

Constructor & Destructor Documentation

◆ QgsFields() [1/2]

QgsFields::QgsFields ( )

Constructor for an empty field container.

Definition at line 313 of file qgsfield.cpp.

◆ QgsFields() [2/2]

QgsFields::QgsFields ( const QgsFields other)

Copy constructor.

Definition at line 318 of file qgsfield.cpp.

◆ ~QgsFields()

QgsFields::~QgsFields ( )
virtual

Definition at line 329 of file qgsfield.cpp.

Member Function Documentation

◆ allAttributesList()

QgsAttributeList QgsFields::allAttributesList ( ) const

Utility function to get list of attribute indexes.

Note
added in 2.4

Definition at line 588 of file qgsfield.cpp.

◆ append()

bool QgsFields::append ( const QgsField field,
FieldOrigin  origin = OriginProvider,
int  originIndex = -1 
)

Append a field. The field must have unique name, otherwise it is rejected (returns false)

Definition at line 346 of file qgsfield.cpp.

◆ appendExpressionField()

bool QgsFields::appendExpressionField ( const QgsField field,
int  originIndex 
)

Append an expression field. The field must have unique name, otherwise it is rejected (returns false)

Definition at line 359 of file qgsfield.cpp.

◆ at()

const QgsField & QgsFields::at ( int  i) const

Get field at particular index (must be in range 0..N-1)

Definition at line 422 of file qgsfield.cpp.

◆ begin() [1/2]

QgsFields::const_iterator QgsFields::begin ( ) const
noexcept

Returns a const STL-style iterator pointing to the first item in the list.

Note
added in 2.16
not available in Python bindings

Definition at line 495 of file qgsfield.cpp.

◆ begin() [2/2]

QgsFields::iterator QgsFields::begin ( )

Returns an STL-style iterator pointing to the first item in the list.

Note
added in 2.16
not available in Python bindings

Definition at line 511 of file qgsfield.cpp.

◆ clear()

void QgsFields::clear ( )

Remove all fields.

Definition at line 334 of file qgsfield.cpp.

◆ constBegin()

QgsFields::const_iterator QgsFields::constBegin ( ) const
noexcept

Returns a const STL-style iterator pointing to the first item in the list.

Note
added in 2.16
not available in Python bindings

Definition at line 479 of file qgsfield.cpp.

◆ constEnd()

QgsFields::const_iterator QgsFields::constEnd ( ) const
noexcept

Returns a const STL-style iterator pointing to the imaginary item after the last item in the list.

Note
added in 2.16
not available in Python bindings

Definition at line 487 of file qgsfield.cpp.

◆ count()

int QgsFields::count ( ) const

Return number of items.

Definition at line 402 of file qgsfield.cpp.

◆ end() [1/2]

QgsFields::const_iterator QgsFields::end ( ) const
noexcept

Returns a const STL-style iterator pointing to the imaginary item after the last item in the list.

Note
added in 2.16
not available in Python bindings

Definition at line 503 of file qgsfield.cpp.

◆ end() [2/2]

QgsFields::iterator QgsFields::end ( )

Returns an STL-style iterator pointing to the imaginary item after the last item in the list.

Note
added in 2.16
not available in Python bindings

Definition at line 520 of file qgsfield.cpp.

◆ exists()

bool QgsFields::exists ( int  i) const

Return if a field index is valid.

Parameters
iIndex of the field which needs to be checked
Returns
True if the field exists

Definition at line 412 of file qgsfield.cpp.

◆ extend()

void QgsFields::extend ( const QgsFields other)

Extend with fields from another QgsFields container.

Definition at line 383 of file qgsfield.cpp.

◆ field() [1/2]

const QgsField & QgsFields::field ( int  fieldIdx) const

Get field at particular index (must be in range 0..N-1)

Definition at line 427 of file qgsfield.cpp.

◆ field() [2/2]

const QgsField & QgsFields::field ( const QString name) const

Get field at particular index (must be in range 0..N-1)

Definition at line 432 of file qgsfield.cpp.

◆ fieldNameIndex()

int QgsFields::fieldNameIndex ( const QString fieldName) const

Look up field's index from name also looks up case-insensitive if there is no match otherwise.

Note
added in 2.4

Definition at line 571 of file qgsfield.cpp.

◆ fieldOrigin()

QgsFields::FieldOrigin QgsFields::fieldOrigin ( int  fieldIdx) const

Get field's origin (value from an enumeration)

Definition at line 448 of file qgsfield.cpp.

◆ fieldOriginIndex()

int QgsFields::fieldOriginIndex ( int  fieldIdx) const

Get field's origin index (its meaning is specific to each type of origin)

Definition at line 456 of file qgsfield.cpp.

◆ iconForField()

QIcon QgsFields::iconForField ( int  fieldIdx) const

Returns an icon corresponding to a field index, based on the field's type and source.

Note
added in QGIS 2.14

Definition at line 529 of file qgsfield.cpp.

◆ indexFromName()

int QgsFields::indexFromName ( const QString name) const

Look up field's index from name. Returns -1 on error.

Definition at line 461 of file qgsfield.cpp.

◆ isEmpty()

bool QgsFields::isEmpty ( ) const

Check whether the container is empty.

Definition at line 397 of file qgsfield.cpp.

◆ operator QVariant()

QgsFields::operator QVariant ( ) const
inline

Allows direct construction of QVariants from fields.

Definition at line 357 of file qgsfield.h.

◆ operator!=()

bool QgsFields::operator!= ( const QgsFields other) const
inline
Note
added in 2.6

Definition at line 350 of file qgsfield.h.

◆ operator=()

QgsFields & QgsFields::operator= ( const QgsFields other)

Assignment operator.

Definition at line 323 of file qgsfield.cpp.

◆ operator==()

bool QgsFields::operator== ( const QgsFields other) const
Note
added in 2.6

Definition at line 474 of file qgsfield.cpp.

◆ operator[]() [1/2]

const QgsField & QgsFields::operator[] ( int  i) const

Get field at particular index (must be in range 0..N-1)

Definition at line 443 of file qgsfield.cpp.

◆ operator[]() [2/2]

QgsField & QgsFields::operator[] ( int  i)

Get field at particular index (must be in range 0..N-1)

Definition at line 417 of file qgsfield.cpp.

◆ remove()

void QgsFields::remove ( int  fieldIdx)

Remove a field with the given index.

Definition at line 370 of file qgsfield.cpp.

◆ size()

int QgsFields::size ( ) const

Return number of items.

Definition at line 407 of file qgsfield.cpp.

◆ toList()

QList< QgsField > QgsFields::toList ( ) const

Utility function to return a list of QgsField instances.

Definition at line 466 of file qgsfield.cpp.


The documentation for this class was generated from the following files: