diff --git a/boxes/CTkLoadingBox.py b/boxes/CTkLoadingBox.py index 509923a..dc4f63a 100644 --- a/boxes/CTkLoadingBox.py +++ b/boxes/CTkLoadingBox.py @@ -6,6 +6,7 @@ from loguru import logger as _logger logger = _logger.bind(module="CTkLoadingBox", prefix="misc") + class CTkLoadingBox(CTkToplevel): def __init__(self, @@ -49,7 +50,26 @@ class CTkLoadingBox(CTkToplevel): self._create_widgets() self.resizable(False, False) - self.grab_set() # make other windows not clickable + # self.grab_set() # make other windows not clickable + self.withdraw() + self._req_events() + + def _req_events(self): + event.register("loading.open", self.open) + event.register("loading.close", self.close) + event.register("loading.set_text", self.set_text) + event.register("loading.set_subtext", self.set_subtext) + event.register("loading.set_progress", self.set_progress) + + def open(self, *_, **__): + self.deiconify() + self.grab_set() + + def close(self, *_, **__): + self.set_text("closed") + self.set_subtext("closed") + self.set_progress(1) + self.withdraw() def _create_widgets(self): # self.message_label = CTkLabel(self, text=self._text)