job_status: ask for confirmation, and show saved offset

This commit is contained in:
alfrix 2022-05-16 14:52:51 -03:00 committed by Alfredo Monclus
parent ea3e7ad3d1
commit 4ff63798c8
2 changed files with 45 additions and 8 deletions

View File

@ -385,16 +385,52 @@ class JobStatusPanel(ScreenPanel):
self.buttons['pause'].connect("clicked", self.pause)
self.buttons['restart'].connect("clicked", self.restart)
self.buttons['resume'].connect("clicked", self.resume)
self.buttons['save_offset_probe'].connect("clicked", self.save_offset_probe)
self.buttons['save_offset_endstop'].connect("clicked", self.save_offset_endstop)
self.buttons['save_offset_probe'].connect("clicked", self.save_offset, "probe")
self.buttons['save_offset_endstop'].connect("clicked", self.save_offset, "endstop")
def save_offset_probe(self, widget):
def save_offset(self, widget, device):
_ = self.lang.gettext
save_offset = "?"
if self._printer.config_section_exists("probe"):
saved_z_offset = float(self._screen.printer.get_config_section("probe")['z_offset'])
elif self._printer.config_section_exists("bltouch"):
saved_z_offset = float(self._screen.printer.get_config_section("bltouch")['z_offset'])
if self.zoffset > 0:
sign = "-"
else:
sign = "+"
if device == "probe":
label = Gtk.Label(_("Apply %s%.2f offset to Probe?") % (sign, abs(self.zoffset))
+ "\n\n"
+ _("Saved offset: %s") % (saved_z_offset))
if device == "endstop":
label = Gtk.Label(_("Apply %.2f offset to Endstop?") % (self.zoffset))
label.set_hexpand(True)
label.set_halign(Gtk.Align.CENTER)
label.set_vexpand(True)
label.set_valign(Gtk.Align.CENTER)
label.set_line_wrap(True)
label.set_line_wrap_mode(Pango.WrapMode.WORD_CHAR)
grid = self._gtk.HomogeneousGrid()
grid.attach(label, 0, 0, 1, 1)
buttons = [
{"name": _("Apply"), "response": Gtk.ResponseType.APPLY},
{"name": _("Cancel"), "response": Gtk.ResponseType.CANCEL}
]
self._gtk.Dialog(self._screen, buttons, grid, self.save_confirm, device)
def save_confirm(self, widget, response_id, device):
if response_id == Gtk.ResponseType.APPLY:
if device == "probe":
self._screen._ws.klippy.gcode_script("Z_OFFSET_APPLY_PROBE")
self._screen._ws.klippy.gcode_script("SAVE_CONFIG")
def save_offset_endstop(self, widget):
if device == "endstop":
self._screen._ws.klippy.gcode_script("Z_OFFSET_APPLY_ENDSTOP")
self._screen._ws.klippy.gcode_script("SAVE_CONFIG")
widget.destroy()
def restart(self, widget):
if self.filename != "none":

View File

@ -361,6 +361,7 @@ trough {
margin-right: .25em;
}
.printing-info button {
margin: .15em;
background-color: rgba(0, 0, 0, 0.1);
border-radius: .5em;
}