X-Git-Url: https://harishankar.org/repos/?p=biacv.git;a=blobdiff_plain;f=biacv_mainwindow.py;h=ec74b822d540923ec1c166ea89652a835cd82cca;hp=0ceebde6c327263447e164553d32f2d8e161993b;hb=HEAD;hpb=cb541b4d71d0e35448dfbd4e1cb6498e9cf876b7 diff --git a/biacv_mainwindow.py b/biacv_mainwindow.py index 0ceebde..ec74b82 100644 --- a/biacv_mainwindow.py +++ b/biacv_mainwindow.py @@ -12,6 +12,7 @@ import biacv_exporter as exporter class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): def __init__ (self): PyQt4.QtGui.QMainWindow.__init__ (self) + self.show () self.setupUi (self) self.currentfile = None self.ismodified = False @@ -44,13 +45,6 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): if templatedir == "": return - # get the output file path - outputfile = PyQt4.QtGui.QFileDialog.getSaveFileName (self, - lang.EXPORT_TITLE) - - if outputfile == "": - return - # create a new exporter object exp = exporter.BiaCVExporter () @@ -60,6 +54,14 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): # 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")) @@ -77,7 +79,8 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): return # open file dialog - openfilename = PyQt4.QtGui.QFileDialog.getOpenFileName (self, lang.OPEN_TITLE) + openfilename = PyQt4.QtGui.QFileDialog.getOpenFileName (self, lang.OPEN_TITLE, + filter = lang.BIACV_FILE_FILTER) # if no open file name then return if openfilename == "": return @@ -92,6 +95,9 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): # set the personal information fields from document data self.set_personal_info (docdata) + # set the profile highlights + self.set_profile_highlights (docdata) + # set the educational qualifications self.set_educational_qualifications (docdata) @@ -117,7 +123,7 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): # function to save a file as a new document def on_file_save_as (self): savefilename = PyQt4.QtGui.QFileDialog.getSaveFileName (self, - lang.SAVE_TITLE) + lang.SAVE_TITLE, filter=lang.BIACV_FILE_FILTER) # if save file name is not none if savefilename <> "": @@ -136,7 +142,7 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): # if no current file get file name from file save dialog if self.currentfile is None: savefilename = PyQt4.QtGui.QFileDialog.getSaveFileName (self, - lang.SAVE_TITLE) + lang.SAVE_TITLE, filter=lang.BIACV_FILE_FILTER) if savefilename <> "": mydata = self.get_document_data () @@ -173,6 +179,7 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): unicode (self.area.text ().toUtf8 (), "utf-8"), unicode (self.city.text ().toUtf8 (), "utf-8"), unicode (self.areacode.text ().toUtf8 (), "utf-8"), + unicode (self.country.text ().toUtf8 (), "utf-8"), unicode (self.countrycode_landline.text ().toUtf8 (), "utf-8"), unicode (self.telephone.text ().toUtf8 (), "utf-8"), unicode (self.countrycode_mobile.text ().toUtf8 (), "utf-8"), @@ -180,6 +187,11 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): unicode (self.email.text ().toUtf8 (), "utf-8"), maritalstatus ) + + # set the profile highlights + profile_highlights = unicode (self.profile.toPlainText ().toUtf8 (), "utf-8").splitlines () + docdata.set_profile (profile_highlights) + # get the list of educational qualifications from the treewidget education = [] i = 0 @@ -269,6 +281,15 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): self.email.setText ("") self.areacode.setText ("") self.unspecified.setChecked (True) + self.country.setText ("") + + # function to set the profile highlights in the GUI from document data + def set_profile_highlights (self, docdata): + self.profile.setPlainText (u'\n'.join (docdata.data["profile"])) + + # function to reset profile highlights data in GUI + def reset_profile_highlights (self): + self.profile.setPlainText ("") # function to set personal information data in the GUI from document data def set_personal_info (self, docdata): @@ -285,6 +306,8 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): self.mobilenumber.setText (docdata.data["mobile"]) self.email.setText (docdata.data["email"]) self.areacode.setText (docdata.data["areacode"]) + self.country.setText (docdata.data["country"]) + if docdata.data["maritalstatus"] is True: self.married.setChecked (True) elif docdata.data["maritalstatus"] is False: @@ -404,6 +427,7 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): self.title.setText ("") self.reset_personal_info () + self.reset_profile_highlights () self.reset_professional_history () self.reset_educational_qualifications () self.reset_career_objectives () @@ -605,9 +629,9 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): PyQt4.QtGui.QMessageBox.critical (self, lang.ERROR_UPDATE, lang.ERROR_REQ_MISSING) return # if currently employed in that position, leaving date is to be disabled - # and set to "current" + # and set to empty if self.currentemployment.isChecked (): - leavedatestr = "current" + leavedatestr = "" else: # if the leaving date is < join date if self.leavedate.date () < self.joindate.date (): @@ -647,9 +671,9 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): PyQt4.QtGui.QMessageBox.critical (self, lang.ERROR_ADD, lang.ERROR_REQ_MISSING) return # if currently employed in that position, leaving date is to be disabled - # and set to "current" + # and set to "" if self.currentemployment.isChecked (): - leavedatestr = "current" + leavedatestr = "" else: # if the leaving date is < join date if self.leavedate.date () < self.joindate.date (): @@ -685,7 +709,7 @@ class Biacv_mainwindow (PyQt4.QtGui.QMainWindow, bui.Ui_biacv_mainwindow): selitem = selitems[0] self.designation.setText (selitem.text (0)) self.joindate.setDate (PyQt4.QtCore.QDate.fromString (selitem.text(1), "dd MMM, yyyy")) - if selitem.text (2) == "current": + if selitem.text (2) == "": self.leavedate.setEnabled (False) self.currentemployment.setChecked (True) else: