Improve name presentation (#1055)

* Preserve manual capitalization

Avoid re-capitalizing names that already include uppercase letters.
This improves the presentation of names like "TMC2209", etc. when the
user has manually capitalized the name.

* Use title case

Use title case instead of only capitalizing the first character.
Ex. `heater_bed` now becomes "Heater Bed" instead of "Heater bed".
This commit is contained in:
Chad Condon 2023-07-24 13:00:12 -07:00 committed by GitHub
parent fab620dce7
commit e8a2d3443e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 11 additions and 4 deletions

View File

@ -159,6 +159,13 @@ class ScreenPanel:
if size < unit:
return f"{(1024 * size / unit):.1f} {suffix}"
@staticmethod
def prettify(name: str):
name = name.replace("_", " ")
if name.islower():
name = name.title()
return name
def update_temp(self, dev, temp, target, power, lines=1):
if temp is None:
return

View File

@ -236,7 +236,7 @@ class BasePanel(ScreenPanel):
if not (device.startswith("extruder") or device.startswith("heater_bed")):
if self.titlebar_name_type == "full":
name = device.split()[1] if len(device.split()) > 1 else device
name = f'{name.capitalize().replace("_", " ")}: '
name = f'{self.prettify(name)}: '
elif self.titlebar_name_type == "short":
name = device.split()[1] if len(device.split()) > 1 else device
name = f"{name[:1].upper()}: "

View File

@ -129,7 +129,7 @@ class ExtrudePanel(ScreenPanel):
break
name = x[23:].strip()
self.labels[x] = {
'label': Gtk.Label(name.capitalize().replace('_', ' ')),
'label': Gtk.Label(self.prettify(name)),
'switch': Gtk.Switch(),
'box': Gtk.Box()
}

View File

@ -151,7 +151,7 @@ class MainPanel(MenuPanel):
if can_target:
self.labels['da'].add_object(device, "targets", rgb, True, False)
name = self._gtk.Button(image, devname.capitalize().replace("_", " "), None, self.bts, Gtk.PositionType.LEFT, 1)
name = self._gtk.Button(image, self.prettify(devname), None, self.bts, Gtk.PositionType.LEFT, 1)
name.connect("clicked", self.toggle_visibility, device)
name.set_alignment(0, .5)
visible = self._config.get_config().getboolean(f"graph {self._screen.connected_printer}", device, fallback=True)

View File

@ -328,7 +328,7 @@ class TemperaturePanel(ScreenPanel):
rgb = self._gtk.get_temp_color(dev_type)
name = self._gtk.Button(image, devname.capitalize().replace("_", " "), None, self.bts, Gtk.PositionType.LEFT, 1)
name = self._gtk.Button(image, self.prettify(devname), None, self.bts, Gtk.PositionType.LEFT, 1)
name.set_alignment(0, .5)
visible = self._config.get_config().getboolean(f"graph {self._screen.connected_printer}", device, fallback=True)
if visible: