comparison mamba/habitats/editor.py @ 571:cb8cc5b4d6be

Don't crash if saving a level fails
author Neil Muller <drnlmuller@gmail.com>
date Tue, 20 Nov 2012 23:24:16 +0200
parents fa673a8312ec
children 84616c7db2e7
comparison
equal deleted inserted replaced
570:1b720cf4d730 571:cb8cc5b4d6be
318 def save(self, ev, widget): 318 def save(self, ev, widget):
319 message = self.check_level() 319 message = self.check_level()
320 if message: 320 if message:
321 self.display_dialog(message) 321 self.display_dialog(message)
322 return True 322 return True
323 self.level.save_level('user_levels', is_user_dir=True) 323 try:
324 self.refresh_display() 324 self.level.save_level('user_levels', is_user_dir=True)
325 message = MessageBox((300, 300), 325 self.refresh_display()
326 'Success!\nYou have saved a user level') 326 message = MessageBox((300, 300),
327 'Success!\nYou have saved a user level')
328 except Exception, e:
329 # Catch-all if things go wrong
330 message = MessageBox((300, 300),
331 "Disaster! Level not saved:\n%s" % e)
327 self.display_dialog(message) 332 self.display_dialog(message)
328 return True 333 return True
329 334
330 def new(self, ev, widget): 335 def new(self, ev, widget):
331 return self.load(ev, widget, 'levels', subdir='templates') 336 return self.load(ev, widget, 'levels', subdir='templates')