def __init__(self, parent=None, track = None): QtGui.QDialog.__init__(self, parent) self.ui = Ui_NewPointDialog() self.ui.setupUi(self) self.parent = parent self.track = track QtCore.QObject.connect(self.ui.button_add, QtCore.SIGNAL("clicked()"), self.addButtonClicked) QtCore.QObject.connect(self.ui.button_cancel, QtCore.SIGNAL("clicked()"), self.cancel)
class NewPointDialog(QtGui.QDialog): parent = None def __init__(self, parent=None, track = None): QtGui.QDialog.__init__(self, parent) self.ui = Ui_NewPointDialog() self.ui.setupUi(self) self.parent = parent self.track = track QtCore.QObject.connect(self.ui.button_add, QtCore.SIGNAL("clicked()"), self.addButtonClicked) QtCore.QObject.connect(self.ui.button_cancel, QtCore.SIGNAL("clicked()"), self.cancel) def addButtonClicked(self): newPointLat = self.ui.pointLat.value() newPointLon = self.ui.pointLon.value() newPointName = self.ui.pointName.text() newPointColor = self.ui.pointColor.currentText() if (len(newPointName) == 0): QMessageBox.warning(self, "Error", "Point name field must not be empty") return if (self.track): result = self.track.addPoint(Point(newPointName, newPointLat, newPointLon, newPointColor)) else: result = self.parent.addPoint(Point(newPointName, newPointLat, newPointLon, newPointColor)) if (result != 0): QMessageBox.warning(self, "Error", "Error while adding new point (maybe duplicate name?).") return self.parent.updatePointsList() self.parent.refresh() self.close() def cancel(self): self.close()