diff --git a/src/tqdbusdata.cpp b/src/tqdbusdata.cpp index 629df57..7dc8c63 100644 --- a/src/tqdbusdata.cpp +++ b/src/tqdbusdata.cpp @@ -731,6 +731,14 @@ TQT_DBusVariant TQT_DBusData::toVariant(bool* ok) const return *((TQT_DBusVariant*)d->value.pointer); } +TQT_DBusData TQT_DBusData::getAsVariantData() +{ + TQT_DBusVariant variant; + variant.value = *this; + variant.signature = variant.value.buildDBusSignature(); + return TQT_DBusData::fromVariant(variant); +} + TQT_DBusData TQT_DBusData::fromByteKeyMap(const TQT_DBusDataMap& map) { TQT_DBusData data; diff --git a/src/tqdbusdata.h b/src/tqdbusdata.h index ae64706..20c2c82 100644 --- a/src/tqdbusdata.h +++ b/src/tqdbusdata.h @@ -851,6 +851,13 @@ public: */ TQT_DBusVariant toVariant(bool* ok = 0) const; + /** + * @brief Creates a variant from @p this object and returns it as a TQT_DBusData object + * + * @return a data object of type #Variant containing @p this object + */ + TQT_DBusData getAsVariantData(); + /** * @brief Creates a data object for the given @p map *