def closeEvent(self, e): if self.changed: save = QMessageBox.question(self, QCoreApplication.translate('TextEdit', 'Save file?'), QCoreApplication.translate('TextEdit', 'File is changed, save before closing window?'), QCoreApplication.translate('TextEdit', 'Yes'), QCoreApplication.translate('TextEdit', 'No'), QCoreApplication.translate('TextEdit', 'Don\'t Close'), ) print save if save == 0: self.save() elif save == 2: e.ignore() return SubWindow.closeEvent(self, e)