QGIS/python/core/auto_generated/qgsvariantutils.sip.in
Nyall Dawson 8171b76ddd Introduce QgsVariantUtils::isNull( QVariant )
This method restores the Qt 5 logic for testing for null variants,
where for core Qt types the isNull check is forwarded to the actual
data type.

E.g. on Qt 5:  QVariant( QDateTime()).isNull() is true, but
on Qt 6 it's false

This breaks a LOT of assumptions made throughout QGIS. The new
helper method avoids this breakage by ensuring we follow the Qt 5
logic also on Qt 6 builds, and also gives us the option to extend
this logic for user types (e.g QVariant( QgsGeometry() ).isNull() could
return true). (That's not included here)
2022-08-20 15:35:09 +10:00

51 lines
1.8 KiB
Plaintext

/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgsvariantutils.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/
class QgsVariantUtils
{
%Docstring(signature="appended")
Contains utility functions for working with QVariants and QVariant types.
.. versionadded:: 3.24
%End
%TypeHeaderCode
#include "qgsvariantutils.h"
%End
public:
static QString typeToDisplayString( QVariant::Type type, QVariant::Type subType = QVariant::Type::Invalid );
%Docstring
Returns a user-friendly translated string representing a QVariant ``type``.
The optional ``subType`` can be used to specify the type of variant list or map values.
%End
static bool isNull( const QVariant &variant );
%Docstring
Returns ``True`` if the specified ``variant`` should be considered a NULL value.
This method is more rigorous vs QVariant.isNull(), which will return
``False`` on newer Qt versions for tests like `QVariant( QDateTime() ).isNull()`.
.. versionadded:: 3.28
%End
};
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgsvariantutils.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/