def simulate(canvas): global theCanvas theCanvas = canvas mname = canvas.statusbar.getState(StatusBar.MODEL)[1][0] if not mname: mname = "Nonamed.des" else: if mname.endswith(".py"): mname = mname[:len(mname) - 3] mname = mname + ".des" global sc sc = generate_description(canvas, 0) global debugger debugger = Debugger() global eventhandler eventhandler = EventHandler(mname, callback=debugger.EventDebugger, use_gui=1, modeltext=sc["desc"]) eventhandler.final.append("SVMAToM3Plugin.finalize_simulation()") debugger.CustomizeEvent(event_callback, None, 1) global root root = canvas.ASGroot.listNodes DefaultInterpreter.runsource("eventhandler=SVMAToM3Plugin.eventhandler") DefaultInterpreter.runsource("debugger=SVMAToM3Plugin.debugger") debugger.SetEventHandler(eventhandler) eventhandler.run_initializer() highlight_states(eventhandler.state, sc) highlight_trans(eventhandler, sc, root) # Cannot start the Tk mainloop again # eventhandler.run_interactor() DefaultInterpreter.runsource( "setup_gui_debugger(eventhandler, debugger, 0, 0)")