view clients/editor/scripts/gui/error.py @ 338:d266506ff4f9

Bug fix. It turned out the instance tree contained ghost instances, since InstanceTree.removeInstance sometimes failed. This caused those random crashes in UH. Now the InstanceTree enforces that remove/add Instance work in pairs. A new Exception is raised in case this ever goes wrong again. (InconsitencyDetected) Furthermore the removeInstancheChangeListener stuff had a fix to become reentrant. It is not clear wether this was shadowed by the aforementioned bug or was never triggered.
author phoku@33b003aa-7bff-0310-803a-e67f0ece8222
date Mon, 24 Aug 2009 18:32:03 +0000
parents 51cc05d862f2
children 8b125ec749d7
line wrap: on
line source

import pychan
import pychan.widgets as widgets

class ErrorDialog(object):
	"""
	Shows a dialog with an error message.
	"""
	def __init__(self, message):
		self._widget = pychan.loadXML('gui/error.xml')

		self._widget.mapEvents({
			'okButton'     : self._widget.hide
		})

		self._widget.distributeInitialData({
			'message' : message
		})
		self._widget.show()
		self._widget.adaptLayout() # Necessary to make scrollarea work properly