Skip to content
Permalink
Browse files

Allow direct QVariant creation from some QGIS metatypes

  • Loading branch information
nyalldawson committed May 19, 2016
1 parent b956874 commit 0fcff9f2a0618297390cb78c30f19c12ed1558b0
@@ -774,5 +774,8 @@ class QgsGeometry
*/
static void convertPointList( const QList<QgsPointV2>& input, QList<QgsPoint>& output );

//! Allows direct construction of QVariants from geometry.
operator QVariant() const;

}; // class QgsGeometry

@@ -496,6 +496,9 @@ class QgsFeature
*/
int fieldNameIndex( const QString& fieldName ) const;

//! Allows direct construction of QVariants from features.
operator QVariant() const;

}; // class QgsFeature

typedef QSet<qint64> QgsFeatureIds;
@@ -167,6 +167,10 @@ class QgsField

return NULL;
%End

//! Allows direct construction of QVariants from fields.
operator QVariant() const;

}; // class QgsField


@@ -364,6 +368,9 @@ class QgsFields
}
%End

//! Allows direct construction of QVariants from fields.
operator QVariant() const;

/* SIP_PYOBJECT __getitem__(int key);
%MethodCode
if (a0 = sipConvertFromSequenceIndex(a0, sipCpp->count()) < 0)
@@ -132,5 +132,8 @@ class QgsInterval
*/
static QgsInterval fromString( const QString& string );

//! Allows direct construction of QVariants from intervals.
operator QVariant() const;

};

@@ -819,6 +819,12 @@ class CORE_EXPORT QgsGeometry
*/
static void convertPointList( const QgsPointSequenceV2 &input, QList<QgsPoint> &output );

//! Allows direct construction of QVariants from geometry.
operator QVariant() const
{
return QVariant::fromValue( *this );
}

private:

QgsGeometryPrivate* d; //implicitely shared data pointer
@@ -413,6 +413,12 @@ class CORE_EXPORT QgsFeature
*/
int fieldNameIndex( const QString& fieldName ) const;

//! Allows direct construction of QVariants from features.
operator QVariant() const
{
return QVariant::fromValue( *this );
}

private:

QExplicitlySharedDataPointer<QgsFeaturePrivate> d;
@@ -153,6 +153,12 @@ class CORE_EXPORT QgsField
*/
bool convertCompatible( QVariant& v ) const;

//! Allows direct construction of QVariants from fields.
operator QVariant() const
{
return QVariant::fromValue( *this );
}

private:

QSharedDataPointer<QgsFieldPrivate> d;
@@ -288,6 +294,12 @@ class CORE_EXPORT QgsFields
*/
QIcon iconForField( int fieldIdx ) const;

//! Allows direct construction of QVariants from fields.
operator QVariant() const
{
return QVariant::fromValue( *this );
}

///@cond PRIVATE

class const_iterator;
@@ -155,6 +155,12 @@ class CORE_EXPORT QgsInterval
*/
static QgsInterval fromString( const QString& string );

//! Allows direct construction of QVariants from intervals.
operator QVariant() const
{
return QVariant::fromValue( *this );
}

private:

//! Duration of interval in seconds

1 comment on commit 0fcff9f

@NathanW2

This comment has been minimized.

Copy link
Member

@NathanW2 NathanW2 commented on 0fcff9f May 19, 2016

Nifty!

Please sign in to comment.
You can’t perform that action at this time.