diff --git a/src/libqof/qof/qofinstance.c b/src/libqof/qof/qofinstance.c index 5cfbecd941..e0f5dfe549 100644 --- a/src/libqof/qof/qofinstance.c +++ b/src/libqof/qof/qofinstance.c @@ -946,6 +946,31 @@ gboolean qof_instance_refers_to_object(const QofInstance* inst, const QofInstanc } } +/* g_object_set/get wrappers */ +void +qof_instance_get (const QofInstance *inst, const gchar *first_prop, ...) +{ + va_list ap; + g_return_if_fail (QOF_IS_INSTANCE (inst)); + + va_start (ap, first_prop); + g_object_get_valist (G_OBJECT (inst), first_prop, ap); + va_end (ap); +} + +void +qof_instance_set (QofInstance *inst, const gchar *first_prop, ...) +{ + va_list ap; + g_return_if_fail (QOF_IS_INSTANCE (inst)); + + qof_instance_set_dirty (inst); + va_start (ap, first_prop); + g_object_set_valist (G_OBJECT (inst), first_prop, ap); + va_end (ap); +} + + /* =================================================================== */ /* Entity edit and commit utilities */ /* =================================================================== */ diff --git a/src/libqof/qof/qofinstance.h b/src/libqof/qof/qofinstance.h index 89b71723d6..ca485c3b90 100644 --- a/src/libqof/qof/qofinstance.h +++ b/src/libqof/qof/qofinstance.h @@ -167,7 +167,16 @@ gboolean qof_instance_get_dirty (QofInstance *); gboolean qof_instance_get_infant(const QofInstance *inst); +/** + * \brief Wrapper for g_object_get + */ +void qof_instance_get (const QofInstance *inst, const gchar *first_param, ...); +/** + * \brief Wrapper for g_object_set + * Group setting multiple parameters in a single begin/commit/rollback + */ +void qof_instance_set (QofInstance *inst, const gchar *first_param, ...); /** get the instance tag number used for kvp management in sql backends. */