def loadCountryPorts(self): self.country_ports = Utils.getCountryPortsMapper() if self.country_ports is not None and len(self.country_ports) !=0: keys = self.country_ports.keys() keys.sort() self.ui.departure_country_combo.addItems(keys) self.ui.arrival_country_combo.addItems(keys) self.ui.departure_country_combo.activated.connect(self.activateDeparturePorts) self.ui.arrival_country_combo.activated.connect(self.activateArrvialPorts) self.ui.departure_port_combo.activated.connect(self.updateDeparturePorts) self.ui.arrival_port_combo.activated.connect(self.updateArrivalPorts) departure_calendar = self.ui.depart_date_edit.calendarWidget() arrival_calendar = self.ui.arrival_date_edit.calendarWidget() departure_calendar.setLocale(QLocale(QLocale.English, QLocale.UnitedStates)) arrival_calendar.setLocale(QLocale(QLocale.English, QLocale.UnitedStates)) else: msg_box = QMessageBox(QMessageBox.Critical, "Error", "Load Country/Ports from config file failed when start Share Route Dialog") msg_box.exec_()
def updateCountryPortsConfig(self): #get origin config update_dict = {} origin_config = Utils.getCountryPortsMapper() for k,v in self.country_ports.iteritems(): if k not in origin_config.keys(): update_dict[k]= v else: temp=[] for port in v: if port not in origin_config[k]: temp.append(port) if len(temp) !=0: cp = copy.copy(temp) update_dict[k]= cp #append the updated country port in the config file try: file_path = os.path.join(CONF_PATH, 'country_port.csv') fp = open(file_path, 'a+') except IOError, ex: #TODO open error prompt dialog return None