root_window.tk.call("wm","geometry",".","1240x768") root_window.attributes("-fullscreen",1) def my_error_task(self): error = e.poll() while error: kind, text = error if kind in (linuxcnc.NML_ERROR, linuxcnc.OPERATOR_ERROR): icon = "error" else: icon = "info" notifications.add(icon, text) ucomp["error"]=True error = e.poll() self.error_after = self.win.after(200, self.error_task) def my_remove(self, widgets): self.widgets.remove(widgets) if len(self.cache) < 10: widgets[0].pack_forget() self.cache.append(widgets) else: widgets[0].destroy() if len(self.widgets) == 0: ucomp["error"]=False self.place_forget() LivePlotter.error_task = my_error_task Notification.remove = my_remove if hal_present == 1 : ucomp = hal.component("probe.user") ucomp.newpin("error",hal.HAL_BIT,hal.HAL_IN) ucomp.ready()