def update_ui_unconfirmed_system(event=None): elite_system = this.rseData.last_event_info.get(RseData.BG_RSE_SYSTEM, None) # type: EliteSystem message = this.rseData.last_event_info.get(RseData.BG_RSE_MESSAGE, None) if (this.enabled or this.overwrite.get()) and elite_system: this.errorLabel.grid_remove() this.unconfirmedSystem.grid(row=0, column=1, sticky=tk.W) this.unconfirmedSystem["text"] = elite_system.name this.unconfirmedSystem["url"] = "https://www.edsm.net/show-system?systemName={}".format(quote(elite_system.name)) this.unconfirmedSystem["state"] = "enabled" distance_text = u"{distance} Ly".format(distance=Locale.string_from_number(elite_system.distance, 2)) if elite_system.uncertainty > 0: distance_text = distance_text + u" (\u00B1{uncertainty})".format(uncertainty=elite_system.uncertainty) this.distanceValue["text"] = distance_text this.actionText["text"] = elite_system.get_action_text() if this.clipboard.get(): this.frame.clipboard_clear() this.frame.clipboard_append(elite_system.name) else: this.unconfirmedSystem.grid_remove() this.errorLabel.grid(row=0, column=1, sticky=tk.W) this.distanceValue["text"] = "?" this.actionText["text"] = "?" if not this.enabled and not this.overwrite.get(): this.errorLabel["text"] = "EDSM/EDDN is disabled" else: this.errorLabel["text"] = message or "?"
def fill_entries(system_name: str, x: Union[str, int, float], y: Union[str, int, float], z: Union[str, int, float], system_entry: nb.Entry, x_entry: nb.Entry, y_entry: nb.Entry, z_entry: nb.Entry): system_entry.insert(0, system_name) if type(x) == str: x_entry.insert(0, x) else: x_entry.insert(0, Locale.string_from_number(x, 3)) if type(y) == str: y_entry.insert(0, y) else: y_entry.insert(0, Locale.string_from_number(y, 3)) if type(z) == str: z_entry.insert(0, z) else: z_entry.insert(0, Locale.string_from_number(z, 3))
def update_distances(self): if not self.coordinates: for (_, distance) in self.distance_labels: distance["text"] = "? Ly" else: for i in range(len(self.distances)): system = self.distances[i] distance = self.calculate_distance(system["x"], system["y"], system["z"], *self.coordinates) self.distance_labels[i][1]["text"] = "{0} Ly".format( Locale.string_from_number(distance, 2)) _, distance = self.travelled_labels[0] distance["text"] = "{0} Ly".format( Locale.string_from_number(self.distance_total, 2)) _, distance = self.travelled_labels[1] distance["text"] = "{0} Ly".format( Locale.string_from_number(self.distance_session, 2))
def update_prefs_ui(self, event=None): for i, settings_ui_element in enumerate(self.settings_ui_elements): if settings_ui_element.has_data: if settings_ui_element.success: self.clear_input_fields(i) settings_ui_element.system_entry.insert( 0, settings_ui_element.system_name) settings_ui_element.x_entry.insert( 0, Locale.string_from_number(settings_ui_element.x)) settings_ui_element.y_entry.insert( 0, Locale.string_from_number(settings_ui_element.y)) settings_ui_element.z_entry.insert( 0, Locale.string_from_number(settings_ui_element.z)) self.error_label["text"] = settings_ui_element.status_text self.error_label.config(foreground="dark green") else: self.error_label["text"] = settings_ui_element.status_text self.error_label.config(foreground="red") settings_ui_element.edsm_button["state"] = tk.NORMAL settings_ui_element.reset_response_data()
def update_main_ui(self): # labels for distances to systems row = 0 for (system, distance) in self.distance_labels: if len(self.distances) >= row + 1: s = self.distances[row] system.grid(row=row, column=0, sticky=tk.W) system["text"] = "Distance {0}:".format(s["system"]) distance.grid(row=row, column=1, sticky=tk.W) distance["text"] = "? Ly" row += 1 else: system.grid_remove() distance.grid_remove() # labels for total travelled distance setting_total, setting_session, setting_session_option = self.get_settings_travelled( ) for i in range(len(self.travelled_labels)): description, distance = self.travelled_labels[i] if (i == 0 and setting_total) or (i == 1 and setting_session): description.grid(row=row, column=0, sticky=tk.W) description["text"] = "Travelled ({0}):".format( "total" if i == 0 else "session") distance.grid(row=row, column=1, sticky=tk.W) distance["text"] = "{0} Ly".format( Locale.string_from_number(self.distance_total, 2) if i == 0 else Locale.string_from_number(self.distance_session, 2)) row += 1 else: description.grid_remove() distance.grid_remove() if row == 0: self.empty_frame.grid(row=0) else: self.empty_frame.grid_remove()