diff --git a/config/main_menu.conf b/config/main_menu.conf index 2b28ab48..3f956ef8 100644 --- a/config/main_menu.conf +++ b/config/main_menu.conf @@ -29,7 +29,14 @@ icon: settings [menu __main print] name: {{ gettext('Print') }} icon: printer -panel: print +panel: gcodes +enable: {{ printer.extruders.count > 0 }} + +[menu __main gcodes] +name: {{ gettext('Gcodes') }} +icon: files +panel: gcodes +enable: {{ printer.extruders.count == 0 }} [menu __main more bedlevel] name: {{ gettext('Bed Level') }} diff --git a/docs/Panels.md b/docs/Panels.md index b64abe49..ac94f40f 100644 --- a/docs/Panels.md +++ b/docs/Panels.md @@ -90,11 +90,11 @@ panel: power ``` ![Power](img/panels/power.png) -### Print +### Gcodes / Print ```py -panel: print +panel: gcodes ``` -![Print Panel](img/panels/print.png) +![Gcodes Panel](img/panels/gcodes.png) ### Retraction ```py diff --git a/docs/img/panels/print.png b/docs/img/panels/gcodes.png similarity index 100% rename from docs/img/panels/print.png rename to docs/img/panels/gcodes.png diff --git a/panels/print.py b/panels/gcodes.py similarity index 97% rename from panels/print.py rename to panels/gcodes.py index f273bc5d..07e48246 100644 --- a/panels/print.py +++ b/panels/gcodes.py @@ -167,7 +167,8 @@ class Panel(ScreenPanel): image_args = (path, icon, self.thumbsize / 2, True, "file") delete.connect("clicked", self.confirm_delete_file, f"gcodes/{path}") rename.connect("clicked", self.show_rename, f"gcodes/{path}") - action = self._gtk.Button("printer", style="color3") + action_icon = "printer" if self._printer.extrudercount > 0 else "load" + action = self._gtk.Button(action_icon, style="color3") action.connect("clicked", self.confirm_print, path) action.set_hexpand(False) action.set_vexpand(False) @@ -305,9 +306,10 @@ class Panel(ScreenPanel): return b.get_date() - a.get_date() if reverse else a.get_date() - b.get_date() def confirm_print(self, widget, filename): + action = _("Print") if self._printer.extrudercount > 0 else _("Start") buttons = [ - {"name": _("Print"), "response": Gtk.ResponseType.OK}, + {"name": action, "response": Gtk.ResponseType.OK}, {"name": _("Cancel"), "response": Gtk.ResponseType.CANCEL, "style": 'dialog-error'} ] @@ -326,11 +328,11 @@ class Panel(ScreenPanel): fileinfo = self._screen.files.get_file_info(filename) if "estimated_time" in fileinfo: box.pack_start( - Gtk.Label(label=_("Print Time") + f': {self.format_time(fileinfo["estimated_time"])}'), + Gtk.Label(label=_("Estimated Time") + f': {self.format_time(fileinfo["estimated_time"])}'), False, False, 2 ) - self._gtk.Dialog(_("Print") + f' {filename}', buttons, box, self.confirm_print_response, filename) + self._gtk.Dialog(f'{action} {filename}', buttons, box, self.confirm_print_response, filename) def confirm_print_response(self, dialog, response_id, filename): self._gtk.remove_dialog(dialog) @@ -357,7 +359,7 @@ class Panel(ScreenPanel): if "filament_name" in fileinfo: info += f'{fileinfo["filament_name"]}\n' if "estimated_time" in fileinfo: - info += _("Print Time") + f': {self.format_time(fileinfo["estimated_time"])}' + info += _("Estimated Time") + f': {self.format_time(fileinfo["estimated_time"])}' return info def load_files(self, result, method, params):