job_status: use full words for remaining and allow translations
This commit is contained in:
parent
bdc48d37a8
commit
32ba2099cb
@ -352,9 +352,9 @@ class KlipperScreenConfig:
|
||||
hour = num // 3600
|
||||
minute = num // 60
|
||||
if hour > 0:
|
||||
name = f'{hour} ' + gettext.ngettext("hour", "hours", hour)
|
||||
name = f'{hour} ' + ngettext("hour", "hours", hour)
|
||||
else:
|
||||
name = f'{minute} ' + gettext.ngettext("minute", "minutes", minute)
|
||||
name = f'{minute} ' + ngettext("minute", "minutes", minute)
|
||||
self.configurable_options[i1]['screen_blanking']['options'].append({
|
||||
"name": name,
|
||||
"value": f"{num}"
|
||||
|
@ -129,15 +129,19 @@ class ScreenPanel:
|
||||
if seconds is None or seconds < 1:
|
||||
return "-"
|
||||
days = seconds // 86400
|
||||
day_units = ngettext("day", "days", days)
|
||||
seconds %= 86400
|
||||
hours = seconds // 3600
|
||||
hour_units = ngettext("hour", "hours", hours)
|
||||
seconds %= 3600
|
||||
minutes = round(seconds / 60)
|
||||
min_units = ngettext("minute", "minutes", minutes)
|
||||
seconds %= 60
|
||||
return f"{f'{days:2.0f}d ' if days > 0 else ''}" \
|
||||
f"{f'{hours:2.0f}h ' if hours > 0 else ''}" \
|
||||
f"{f'{minutes:2.0f}m ' if minutes > 0 else ''}" \
|
||||
f"{f'{seconds:2.0f}s' if days == 0 and hours == 0 and minutes == 0 else ''}"
|
||||
sec_units = ngettext("second", "seconds", seconds)
|
||||
return f"{f'{days:2.0f} {day_units} ' if days > 0 else ''}" \
|
||||
f"{f'{hours:2.0f} {hour_units} ' if hours > 0 else ''}" \
|
||||
f"{f'{minutes:2.0f} {min_units} ' if minutes > 0 and days == 0 else ''}" \
|
||||
f"{f'{seconds:2.0f} {sec_units}' if days == 0 and hours == 0 and minutes == 0 else ''}"
|
||||
|
||||
def format_eta(self, total, elapsed):
|
||||
if total is None:
|
||||
|
@ -605,6 +605,7 @@ class Panel(ScreenPanel):
|
||||
self.labels["duration"].set_label(self.format_time(total_duration))
|
||||
elapsed_label = f"{self.labels['elapsed'].get_text()} {self.labels['duration'].get_text()}"
|
||||
self.buttons['elapsed'].set_label(elapsed_label)
|
||||
find_widget(self.buttons['elapsed'], Gtk.Label).set_ellipsize(Pango.EllipsizeMode.END)
|
||||
estimated = slicer_time = filament_time = file_time = 0
|
||||
timeleft_type = self._config.get_config()['main'].get('print_estimate_method', 'auto')
|
||||
|
||||
@ -651,6 +652,7 @@ class Panel(ScreenPanel):
|
||||
self.labels["time_left"].set_label(self.format_eta(estimated, print_duration))
|
||||
remaining_label = f"{self.labels['left'].get_text()} {self.labels['time_left'].get_text()}"
|
||||
self.buttons['left'].set_label(remaining_label)
|
||||
find_widget(self.buttons['left'], Gtk.Label).set_ellipsize(Pango.EllipsizeMode.END)
|
||||
self.update_progress(progress)
|
||||
|
||||
def update_progress(self, progress: float):
|
||||
|
Loading…
x
Reference in New Issue
Block a user