def __init__(self, model, prop_name, prop_read=None, prop_write=None, value_error=None): UserClassAdapter.__init__(self, model, prop_name, lambda c,i: c.__getitem__(i), lambda c,v,i: c.__setitem__(i,v), prop_read, prop_write, value_error) prop = Adapter._get_property(self) #prop = self._get_property() # bug fix reported by A. Dentella if not (hasattr(prop, "__getitem__") and hasattr(prop, "__setitem__")): raise TypeError("Property " + self._prop_name + " is not a valid container") self._prop_is_map = isinstance(prop, types.DictType) or \ isinstance(prop, ObsMapWrapper) # contained widgets self._idx2wid = {} self._wid2idx = {} self._widgets = None return