+ # on window closing
+ def closeEvent (self, event):
+ if self.ismodified is True:
+ ans = PyQt4.QtGui.QMessageBox.question (self, lang.CONFIRM, lang.CONFIRM_DISCARD_SAVE,
+ PyQt4.QtGui.QMessageBox.Yes, PyQt4.QtGui.QMessageBox.No)
+ # ignore event if not confirmed
+ if ans <> PyQt4.QtGui.QMessageBox.Yes:
+ event.ignore ()
+
+ # on help about dialog box
+ def on_help_about (self):
+ PyQt4.QtGui.QMessageBox.about (self, lang.ABOUT_TITLE, lang.ABOUT_TEXT)
+
+ # on file exit
+ def on_exit (self):
+ # call the close event
+ self.close()
+
+ # on file export - export current document to any external format based on
+ # a template
+ def on_file_export (self):
+ # get the template directory
+ templatedir = PyQt4.QtGui.QFileDialog.getExistingDirectory (self,
+ lang.OPEN_TEMPLATE_TITLE)
+ if templatedir == "":
+ return
+
+ # create a new exporter object
+ exp = exporter.BiaCVExporter ()
+
+ # set the document data
+ exp.set_data (self.get_document_data ().data)
+
+ # set the template directory
+ exp.set_template_directory (unicode (templatedir.toUtf8(), "utf-8"))
+
+ # get the output file path
+ outputfile = PyQt4.QtGui.QFileDialog.getSaveFileName (self,
+ exp.exporter_name, filter=exp.export_filter)
+
+ if outputfile == "":
+ return
+
+
+ # set the output file
+ exp.set_output (unicode (outputfile.toUtf8(), "utf-8"))
+
+ # carry out the export function
+ exp.export ()
+