SOME_INT64_PROPERTY,
SOME_UINT64_PROPERTY,
SOME_FLOAT_PROPERTY,
- SOME_DOUBLE_PROPERTY
+ SOME_DOUBLE_PROPERTY,
+ SOME_STRV_PROPERTY,
};
G_DEFINE_TYPE (GIMarshallingTestsPropertiesObject, gi_marshalling_tests_properties_object, G_TYPE_OBJECT);
case SOME_DOUBLE_PROPERTY:
g_value_set_double (value, self->some_double);
break;
+ case SOME_STRV_PROPERTY:
+ g_value_set_boxed (value, self->some_strv);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
case SOME_DOUBLE_PROPERTY:
self->some_double = g_value_get_double (value);
break;
+ case SOME_STRV_PROPERTY:
+ g_strfreev (self->some_strv);
+ self->some_strv = g_strdupv (g_value_get_boxed (value));
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
g_object_class_install_property (object_class, SOME_DOUBLE_PROPERTY,
g_param_spec_double ("some-double", "some-double", "some-double", -1 * G_MAXDOUBLE, G_MAXDOUBLE, 0,
G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
+
+ g_object_class_install_property (object_class, SOME_STRV_PROPERTY,
+ g_param_spec_boxed ("some-strv", "some-strv", "some-strv", G_TYPE_STRV,
+ G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
}
GIMarshallingTestsPropertiesObject*