import logging import gi gi.require_version("Gtk", "3.0") from gi.repository import Gtk class Prompt: def __init__(self, screen): self.screen = screen self.gtk = screen.gtk self.window_title = 'KlipperScreen' self.text = self.header = "" self.buttons = [] self.id = 1 self.prompt = None def decode(self, data): logging.info(f'{data}') if data.startswith('prompt_begin'): # action:prompt_begin self.header = data.replace('prompt_begin', '') if self.header: self.window_title = self.header self.text = "" self.buttons = [] return elif data.startswith('prompt_text'): # action:prompt_text self.text = data.replace('prompt_text ', '') return elif data.startswith('prompt_button ') or data.startswith('prompt_footer_button'): # action:prompt_button