def asyncevents(self, onoff):
"""asyncevents - Set asynchronous event handling on or off"""
if MacOS.runtimemodel == 'macho':
- raise 'Unsupported in MachoPython'
+ raise NotImplementedError('Unsupported in MachoPython')
old = self._doing_asyncevents
if old:
MacOS.SetEventHandler()
def delitem(self, item):
if item != len(self.items):
- raise 'Can only delete last item of a menu'
+ raise ValueError('Can only delete last item of a menu')
self.menu.DeleteMenuItem(item)
del self.items[item-1]
elif ('****', '****') in self.ae_handlers:
_function = self.ae_handlers[('****', '****')]
else:
- raise 'Cannot happen: AE callback without handler', (_class, _type)
+ raise RuntimeError('AE callback without handler: '
+ + str((_class, _type)))
# XXXX Do key-to-name mapping here
def __setattr__(self, attr, val):
if attr == 'baseAddr':
- raise 'UseErr', "don't assign to .baseAddr -- assign to .data instead"
+ raise RuntimeError("don't assign to .baseAddr "
+ "-- assign to .data instead")
elif attr == 'data':
self.__dict__['data'] = val
self._stuff('baseAddr', id(self.data) + MacOS.string_id_to_buffer)
return self._unstuff('rowBytes') & 0x7FFF
elif attr == 'bounds':
# return bounds in official Left, Top, Right, Bottom order!
- return ( \
+ return (
self._unstuff('left'),
self._unstuff('top'),
self._unstuff('right'),
# so convert if necessary
if format != imgformat.macrgb and format != imgformat.macrgb16:
# (LATER!)
- raise "NotImplementedError", "conversion to macrgb or macrgb16"
+ raise NotImplementedError("conversion to macrgb or macrgb16")
self.data = s
self.bounds = (0,0,width,height)
self.cmpCount = 3
return self.data
# otherwise, convert to the requested format
# (LATER!)
- raise "NotImplementedError", "data format conversion"
+ raise NotImplementedError("data format conversion")
def fromImage(self,im):
"""Initialize this PixMap from a PIL Image object."""