def __init__(self, task=None, parent=None): super(AddTaskDialog, self).__init__(parent) self.task = task self.ui = Ui_AddTaskDialog() self.ui.setupUi(self) self.ui.errorLabel.hide() self.projectList = [ x.name for x in db.Project.select(orderBy=db.Project.q.name) ] completer = QCompleter(self.projectList, self) completer.setCaseSensitivity(Qt.CaseInsensitive) self.ui.projectLineEdit.setCompleter(completer) self.ui.doneDateEdit.setDate(QDate.currentDate()) self.okButton = self.ui.buttonBox.button(QDialogButtonBox.Ok) if self.task is not None: self.initFromTask() self.okButton.setText(self.tr("&Update")) else: self.okButton.setText(self.tr("&Add Task")) QObject.connect(self.ui.projectLineEdit, SIGNAL("textChanged(QString)"), self.updateOkButton) QObject.connect(self.ui.titleLineEdit, SIGNAL("textChanged(QString)"), self.updateOkButton) self.updateOkButton()