import sys
import traceback
from PyQt4 import QtGui

def criticalExceptionHandler(widget):
        exc_type, exc_value,exc_tb = sys.exc_info()[:3]
        sys.stderr.write(str(exc_type)+'\n')
        sys.stderr.write(str(exc_value)+'\n')
        err = ''
        st = traceback.extract_stack()
        for s in traceback.extract_stack():
           err = err + '  ' + s[0] + ',  line ' + str(s[1]) + '\n'
           err = err + '    ' + s[3] + '\n'
        QtGui.QMessageBox.critical(widget,"Failed to add movie frame","Failed to add movie frame:\n"+str(exc_type) + '\n' + str(exc_value) + '\n' + err)
