def _run(self): if self.run_with_interpreter: if self.editgroup.editor.changed: Qd.InitCursor() save = EasyDialogs.AskYesNoCancel('Save "%s" before running?' % self.title, 1) if save > 0: if self.domenu_save(): return elif save < 0: return if not self.path: raise W.AlertError, "Can't run unsaved file" self._run_with_interpreter() elif self.run_with_cl_interpreter: if self.editgroup.editor.changed: Qd.InitCursor() save = EasyDialogs.AskYesNoCancel('Save "%s" before running?' % self.title, 1) if save > 0: if self.domenu_save(): return elif save < 0: return if not self.path: raise W.AlertError, "Can't run unsaved file" self._run_with_cl_interpreter() else: pytext = self.editgroup.editor.get() globals, file, modname = self.getenvironment() self.execstring(pytext, globals, globals, file, modname)
def wait(): from Carbon import Evt from Carbon import Events global splash try: splash except NameError: return Qd.InitCursor() time = Evt.TickCount() whattext = 0 drawtext(whattext) while _keepsplashscreenopen: ok, event = Evt.EventAvail(Events.highLevelEventMask) if ok: # got apple event, back to mainloop break ok, event = Evt.EventAvail(Events.mDownMask | Events.keyDownMask | Events.updateMask) if ok: ok, event = Evt.WaitNextEvent( Events.mDownMask | Events.keyDownMask | Events.updateMask, 30) if ok: (what, message, when, where, modifiers) = event if what == Events.updateEvt: if Win.WhichWindow(message) == splash: UpdateSplash(1, whattext) else: break if Evt.TickCount() - time > 360: whattext = not whattext drawtext(whattext) time = Evt.TickCount() del splash
def Message(text): import EasyDialogs, string from Carbon import Qd Qd.InitCursor() text = string.replace(text, "\n", "\r") if not text: text = '<Alert text not specified>' EasyDialogs.Message(text)
def close(self): if self.editgroup.editor.changed: Qd.InitCursor() save = EasyDialogs.AskYesNoCancel('Save window "%s" before closing?' % self.title, default=1, no="Don\xd5t save") if save > 0: if self.domenu_save(): return 1 elif save < 0: return 1 self.globals = None W.Window.close(self)
"""PythonSlave.py