self.setupUi (self)
self.currentfile = None
+ # delete skill set button is clicked
+ def on_delete_skill (self):
+ # get the selected items
+ selitems = self.skillslist.selectedItems ()
+ if selitems == []:
+ PyQt4.QtGui.QMessageBox.critical (self, "Cannot delete", "No items selected.")
+ return
+ # confirm
+ ans = PyQt4.QtGui.QMessageBox.question (self, "Confirm",
+ "Are you sure you wish to delete the selected item?",
+ PyQt4.QtGui.QMessageBox.Yes, PyQt4.QtGui.QMessageBox.No)
+ # answer is yes
+ if ans == PyQt4.QtGui.QMessageBox.Yes:
+ for item in selitems:
+ self.skillslist.takeTopLevelItem (self.skillslist.indexOfTopLevelItem (item))
+
+ self.reset_skillset_fields ()
+
+ # add skill set button is clicked
+ def on_add_skill (self):
+ # if the skill title is blank
+ if self.skillsettitle.text () == "":
+ PyQt4.QtGui.QMessageBox.critical (self, "Cannot add", "A required field is missing.")
+ return
+ skillitem = PyQt4.QtGui.QTreeWidgetItem (
+ [
+ self.skillsettitle.text (),
+ self.skilldescription.toPlainText ()
+ ]
+ )
+ self.skillslist.addTopLevelItem (skillitem)
+ self.reset_skillset_fields ()
+
+ # clear the skill set fields
+ def reset_skillset_fields (self):
+ self.skillsettitle.setText ("")
+ self.skilldescription.setPlainText ("")
+
+ # update professional history button is clicked
+ def on_update_profession (self):
+ # get the selected item
+ selitems = self.professionlist.selectedItems ()
+ if selitems == []:
+ PyQt4.QtGui.QMessageBox.critical (self, "Cannot update", "No item selected.")
+ return
+ selitem = selitems[0]
+ # if designation is not set
+ if self.designation.text () == "":
+ PyQt4.QtGui.QMessageBox.critical (self, "Cannot update", "A required field is missing.")
+ return
+ # if currently employed in that position, leaving date is to be disabled
+ # and set to "current"
+ if self.currentemployment.isChecked ():
+ leavedatestr = "current"
+ else:
+ # if the leaving date is < join date
+ if self.leavedate.date () < self.joindate.date ():
+ PyQt4.QtGui.QMessageBox.critical (self, "Cannot add",
+ "Leaving date cannot be earlier than join date.")
+ return
+ leavedatestr = self.leavedate.date ().toString ("dd MMM, yyyy")
+
+ selitem.setText (0, self.designation.text ())
+ selitem.setText (1, self.joindate.date ().toString ("dd MMM, yyyy"))
+ selitem.setText (2, leavedatestr)
+ selitem.setText (3, self.organization.text ())
+ selitem.setText (4, self.additionalinfo.text ())
+
+ # delete professional history button is clicked
+ def on_delete_profession (self):
+ # get the selected items
+ selitems = self.professionlist.selectedItems ()
+ if selitems == []:
+ PyQt4.QtGui.QMessageBox.critical (self, "Cannot delete", "No item selected.")
+ return
+ # confirm deletion
+ ans = PyQt4.QtGui.QMessageBox.question (self, "Confirm",
+ "Are you sure you wish to delete the selected item?",
+ PyQt4.QtGui.QMessageBox.Yes, PyQt4.QtGui.QMessageBox.No)
+ # if confirmed
+ if ans == PyQt4.QtGui.QMessageBox.Yes:
+ for item in selitems:
+ self.professionlist.takeTopLevelItem (self.professionlist.indexOfTopLevelItem (item))
+ self.reset_profession_fields ()
+
# add professional history button is clicked
def on_add_profession (self):
if self.designation.text () == "":
PyQt4.QtGui.QMessageBox.critical (self, "Cannot add", "A required field is missing.")
return
-
+ # if currently employed in that position, leaving date is to be disabled
+ # and set to "current"
if self.currentemployment.isChecked ():
leavedatestr = "current"
else:
+ # if the leaving date is < join date
+ if self.leavedate.date () < self.joindate.date ():
+ PyQt4.QtGui.QMessageBox.critical (self, "Cannot add",
+ "Leaving date cannot be earlier than join date.")
+ return
leavedatestr = self.leavedate.date ().toString ("dd MMM, yyyy")
professionitem = PyQt4.QtGui.QTreeWidgetItem (
self.reset_profession_fields ()
+ # when selection of profession list is changed
+ def on_select_profession (self):
+ self.set_profession_fields ()
+
+ # set the profession fields from the selected item in profession list
+ def set_profession_fields (self):
+ selitems = self.professionlist.selectedItems ()
+ if selitems == []:
+ return
+ 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":
+ self.leavedate.setEnabled (False)
+ self.currentemployment.setChecked (True)
+ else:
+ self.leavedate.setDate (PyQt4.QtCore.QDate.fromString (selitem.text (2), "dd MMM, yyyy"))
+ self.leavedate.setEnabled (True)
+ self.currentemployment.setChecked (False)
+
+ self.organization.setText (selitem.text (3))
+ self.additionalinfo.setText (selitem.text (4))
+
def reset_profession_fields (self):
self.designation.setText ("")
self.joindate.setDate (PyQt4.QtCore.QDate (2000, 1, 1))