* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#include <cassert>
+
#include <QFormLayout>
#include <pv/prop/property.h>
#include "binding.h"
-using boost::shared_ptr;
+using std::shared_ptr;
namespace pv {
namespace prop {
namespace binding {
-const std::vector< boost::shared_ptr<Property> >& Binding::properties()
+const std::vector< std::shared_ptr<Property> >& Binding::properties()
{
return _properties;
}
return form;
}
-QString Binding::print_gvariant(GVariant *const gvar)
+QString Binding::print_gvariant(Glib::VariantBase gvar)
{
QString s;
- if (g_variant_is_of_type(gvar, G_VARIANT_TYPE("s")))
- s = QString::fromUtf8(g_variant_get_string(gvar, NULL));
+ if (!gvar.gobj())
+ s = QString::fromStdString("(null)");
+ else if (gvar.is_of_type(Glib::VariantType("s")))
+ s = QString::fromStdString(
+ Glib::VariantBase::cast_dynamic<Glib::Variant<std::string>>(
+ gvar).get());
else
- {
- gchar *const text = g_variant_print(gvar, FALSE);
- s = QString::fromUtf8(text);
- g_free(text);
- }
+ s = QString::fromStdString(gvar.print());
return s;
}