keyboard shortcuts escape and backspace to return
This commit is contained in:
parent
880f7628e4
commit
b415eca1c8
@ -67,12 +67,6 @@ class ScreenPanel:
|
|||||||
def menu_item_clicked(self, widget, panel, item):
|
def menu_item_clicked(self, widget, panel, item):
|
||||||
self._screen.show_panel(panel, item['panel'], item['name'], 1, False)
|
self._screen.show_panel(panel, item['panel'], item['name'], 1, False)
|
||||||
|
|
||||||
def menu_return(self, widget, home=False):
|
|
||||||
if home is False:
|
|
||||||
self._screen._menu_go_back()
|
|
||||||
return
|
|
||||||
self._screen._menu_go_home()
|
|
||||||
|
|
||||||
def set_title(self, title):
|
def set_title(self, title):
|
||||||
self.title = title
|
self.title = title
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ class BasePanel(ScreenPanel):
|
|||||||
self.control['back'] = self._gtk.ButtonImage('back', scale=scale)
|
self.control['back'] = self._gtk.ButtonImage('back', scale=scale)
|
||||||
self.control['back'].connect("clicked", self.back)
|
self.control['back'].connect("clicked", self.back)
|
||||||
self.control['home'] = self._gtk.ButtonImage('main', scale=scale)
|
self.control['home'] = self._gtk.ButtonImage('main', scale=scale)
|
||||||
self.control['home'].connect("clicked", self.menu_return, True)
|
self.control['home'].connect("clicked", self._screen._menu_go_home)
|
||||||
|
|
||||||
if len(self._config.get_printers()) > 1:
|
if len(self._config.get_printers()) > 1:
|
||||||
self.control['printer_select'] = self._gtk.ButtonImage('shuffle', scale=scale)
|
self.control['printer_select'] = self._gtk.ButtonImage('shuffle', scale=scale)
|
||||||
@ -203,7 +203,7 @@ class BasePanel(ScreenPanel):
|
|||||||
self.set_title(panel.get_title())
|
self.set_title(panel.get_title())
|
||||||
self.content.add(panel.get_content())
|
self.content.add(panel.get_content())
|
||||||
|
|
||||||
def back(self, widget):
|
def back(self, widget=None):
|
||||||
if self.current_panel is None:
|
if self.current_panel is None:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
@ -116,7 +116,7 @@ class ExcludeObjectPanel(ScreenPanel):
|
|||||||
self.object_list.remove(self.buttons[name])
|
self.object_list.remove(self.buttons[name])
|
||||||
self.update_graph()
|
self.update_graph()
|
||||||
if len(self.excluded_objects) == len(self.objects):
|
if len(self.excluded_objects) == len(self.objects):
|
||||||
self.menu_return(False)
|
self._screen._menu_go_back()
|
||||||
elif action == "notify_gcode_response" and "Excluding object" in data:
|
elif action == "notify_gcode_response" and "Excluding object" in data:
|
||||||
self._screen.show_popup_message(data, level=1)
|
self._screen.show_popup_message(data, level=1)
|
||||||
self.update_graph()
|
self.update_graph()
|
||||||
|
@ -267,7 +267,7 @@ class ZCalibratePanel(ScreenPanel):
|
|||||||
logging.info("Aborting calibration")
|
logging.info("Aborting calibration")
|
||||||
self._screen._ws.klippy.gcode_script(KlippyGcodes.ABORT)
|
self._screen._ws.klippy.gcode_script(KlippyGcodes.ABORT)
|
||||||
self.buttons_not_calibrating()
|
self.buttons_not_calibrating()
|
||||||
self.menu_return(widget)
|
self._screen._menu_go_back()
|
||||||
|
|
||||||
def accept(self, widget):
|
def accept(self, widget):
|
||||||
logging.info("Accepting Z position")
|
logging.info("Accepting Z position")
|
||||||
|
10
screen.py
10
screen.py
@ -100,6 +100,7 @@ class KlipperScreen(Gtk.Window):
|
|||||||
self.lang_ltr = set_text_direction(self._config.get_main_config().get("language", None))
|
self.lang_ltr = set_text_direction(self._config.get_main_config().get("language", None))
|
||||||
|
|
||||||
Gtk.Window.__init__(self)
|
Gtk.Window.__init__(self)
|
||||||
|
self.connect("key-press-event", self._key_press_event)
|
||||||
self.set_title("KlipperScreen")
|
self.set_title("KlipperScreen")
|
||||||
monitor = Gdk.Display.get_default().get_primary_monitor()
|
monitor = Gdk.Display.get_default().get_primary_monitor()
|
||||||
self.width = self._config.get_main_config().getint("width", monitor.get_geometry().width)
|
self.width = self._config.get_main_config().getint("width", monitor.get_geometry().width)
|
||||||
@ -511,7 +512,7 @@ class KlipperScreen(Gtk.Window):
|
|||||||
self.close_popup_message()
|
self.close_popup_message()
|
||||||
self._remove_current_panel()
|
self._remove_current_panel()
|
||||||
|
|
||||||
def _menu_go_home(self):
|
def _menu_go_home(self, widget=None):
|
||||||
logging.info("#### Menu go home")
|
logging.info("#### Menu go home")
|
||||||
self.remove_keyboard()
|
self.remove_keyboard()
|
||||||
self.close_popup_message()
|
self.close_popup_message()
|
||||||
@ -957,6 +958,13 @@ class KlipperScreen(Gtk.Window):
|
|||||||
self.base_panel.get_content().remove(self.keyboard['box'])
|
self.base_panel.get_content().remove(self.keyboard['box'])
|
||||||
self.keyboard = None
|
self.keyboard = None
|
||||||
|
|
||||||
|
def _key_press_event(self, widget, event):
|
||||||
|
keyval_name = Gdk.keyval_name(event.keyval)
|
||||||
|
if keyval_name == "Escape":
|
||||||
|
self._menu_go_home()
|
||||||
|
elif keyval_name == "BackSpace" and len(self._cur_panels) > 1:
|
||||||
|
self.base_panel.back()
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
version = functions.get_software_version()
|
version = functions.get_software_version()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user