From 6ee167447336570b83e41ca2c4216d6e9058fd43 Mon Sep 17 00:00:00 2001 From: Johan Dahlin Date: Fri, 21 Mar 2008 18:06:56 +0000 Subject: Allow gobject.property work with subclasses. Add tests. 2008-03-21 Johan Dahlin * gobject/__init__.py: * tests/test_properties.py: Allow gobject.property work with subclasses. Add tests. (#523352, Tomeu Vizoso) svn path=/trunk/; revision=752 --- gobject/__init__.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gobject') diff --git a/gobject/__init__.py b/gobject/__init__.py index c1404f9..488d87e 100644 --- a/gobject/__init__.py +++ b/gobject/__init__.py @@ -57,15 +57,16 @@ class GObjectMeta(type): cls.__gproperties__ = gproperties - if (hasattr(cls, 'do_get_property') or - hasattr(cls, 'do_set_property')): + if ('do_get_property' in cls.__dict__ or + 'do_set_property' in cls.__dict__): for prop in props: if (prop.getter != prop._default_getter or prop.setter != prop._default_setter): raise TypeError( "GObject subclass %r defines do_get/set_property" " and it also uses a property which a custom setter" - " or getter. This is not allowed" % (cls,)) + " or getter. This is not allowed" % ( + cls.__name__,)) def obj_get_property(self, pspec): name = pspec.name.replace('-', '_') @@ -92,7 +93,6 @@ class GObjectMeta(type): return type_register(cls, namespace.get('__gtype_name__')) - _gobject._install_metaclass(GObjectMeta) del _gobject -- cgit