add new method GimpConfigInterface::copy() which by default calls
2008-02-01 Michael Natterer <mitch@gimp.org> * libgimpconfig/gimpconfig-iface.[ch]: add new method GimpConfigInterface::copy() which by default calls gimp_config_sync() but is overridable for objects which are not entirely property-defined or otherwise evil. Freeze/thaw property notifications in deserialize() and reset(). * libgimpconfig/gimpconfig-utils.c (gimp_config_sync): freeze/thaw property notifications on the dest object. svn path=/trunk/; revision=24767
This commit is contained in:

committed by
Michael Natterer

parent
44cf4587a7
commit
69d2abcb29
@ -216,6 +216,8 @@ gimp_config_sync (GObject *src,
|
||||
if (!diff)
|
||||
return FALSE;
|
||||
|
||||
g_object_freeze_notify (G_OBJECT (dest));
|
||||
|
||||
for (list = diff; list; list = list->next)
|
||||
{
|
||||
GParamSpec *prop_spec = list->data;
|
||||
@ -233,6 +235,8 @@ gimp_config_sync (GObject *src,
|
||||
}
|
||||
}
|
||||
|
||||
g_object_thaw_notify (G_OBJECT (dest));
|
||||
|
||||
g_list_free (diff);
|
||||
|
||||
return TRUE;
|
||||
@ -306,9 +310,9 @@ gimp_config_reset_properties (GObject *object)
|
||||
}
|
||||
}
|
||||
|
||||
g_free (property_specs);
|
||||
|
||||
g_object_thaw_notify (object);
|
||||
|
||||
g_free (property_specs);
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user