def main(): # (Re-)Initialize Multipanel if not already present try: ui.view_real_present(ui.multipanel.root, "panel") except AttributeError: init() except ValueError: print("Multipanel appears to be already running.", file=sys.stderr) return
def init(): # Monkey-patch the ui module to use Multipanel try: ui.view_real_present except AttributeError: ui.view_real_present = ui.View.present def present(self, mode, **kwargs): if mode == "panel": ui.multipanel.add_view(self) else: ui.view_real_present(self, mode, **kwargs) instancemethod = type(Multipanel.add_view) # ui.View is too builtin for us mere mortals to change its methods. ##ui.View.present = instancemethod(present, None, ui.View) ui.multipanel = Multipanel() ui.view_real_present(ui.multipanel.root, "panel")
def present(self, mode, **kwargs): if mode == "panel": ui.multipanel.add_view(self) else: ui.view_real_present(self, mode, **kwargs)