| \section{Built-in Module \sectcode{MacOS}} |
| \bimodindex{MacOS} |
| |
| \renewcommand{\indexsubitem}{(in module MacOS)} |
| |
| This module provides access to MacOS specific functionality in the |
| python interpreter, such as how the interpreter eventloop functions |
| and the like. Use with care. |
| |
| Note the capitalisation of the module name, this is a historical |
| artefact. |
| |
| \begin{excdesc}{Error} |
| This exception is raised on MacOS generated errors, either from |
| functions in this module or from other mac-specific modules like the |
| toolbox interfaces. The arguments are the integer error code (the |
| \var{OSErr} value) and a textual description of the error code. |
| \end{excdesc} |
| |
| \begin{funcdesc}{SetHighLevelEventHandler}{handler} |
| Pass a python function that will be called upon reception of a |
| high-level event. The previous handler is returned. The handler |
| function is called with the event as argument. |
| |
| Note that your event handler is currently only called dependably if |
| your main event loop is in \var{stdwin}. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{AcceptHighLevelEvent}{} |
| Read a high-level event. The return value is a tuple \code{(sender, |
| refcon, data)}. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{SetScheduleTimes}{fgi\, fgy \optional{\, bgi\, bgy}} |
| Controls how often the interpreter checks the event queue and how |
| long it will yield the processor to other processes. \var{fgi} |
| specifies after how many clicks (one click is one 60th of a second) |
| the interpreter should check the event queue, and \var{fgy} specifies |
| for how many clicks the CPU should be yielded when in the |
| foreground. The optional \var{bgi} and \var{bgy} allow you to specify |
| different values to use when python runs in the background, otherwise |
| the background values will be set the the same as the foreground |
| values. The function returns nothing. |
| |
| The default values, which are based on nothing at all, are 12, 6, 1 |
| and 12 respectively. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{EnableAppswitch}{onoff} |
| Enable or disable the python event loop, based on the value of |
| \var{onoff}. The old value is returned. If the event loop is disabled |
| no time is granted to other applications, checking for command-period |
| is not performed and it is impossible to switch applications. This |
| should only be used by programs providing their own complete event |
| loop. |
| |
| Note that based on the compiler used to build python it is still |
| possible to loose events even with the python event loop disabled. If |
| you have a \code{sys.stdout} window its handler will often also look |
| in the event queue. Making sure nothing is ever printed works around |
| this. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{HandleEvent}{ev} |
| Pass the event record \code{ev} back to the python event loop, or |
| possibly to the handler for the \code{sys.stdout} window (based on the |
| compiler used to build python). This allows python programs that do |
| their own event handling to still have some command-period and |
| window-switching capability. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{GetErrorString}{errno} |
| Return the textual description of MacOS error code \var{errno}. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{splash}{resid} |
| This function will put a splash window |
| on-screen, with the contents of the DLOG resource specified by |
| \code{resid}. Calling with a zero argument will remove the splash |
| screen. This function is useful if you want to post a splash screen |
| early in initialization without first having to load numerous |
| extension modules. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{openrf}{name \optional{\, mode}} |
| Open the resource fork of a file. Arguments are the same as for the |
| builtin function \code{open}. The object returned has file-like |
| semantics, but it is not a python file object, so there may be subtle |
| differences. |
| \end{funcdesc} |