MacOS -- Python library reference



Next: macostools Prev: macfs Up: Macintosh Specific Services Top: Top

14.7. Built-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.

Error -- exception of module MacOS
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 OSErr value) and a textual description of the error code.
SetHighLevelEventHandler (handler) -- function of module MacOS
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 stdwin.

AcceptHighLevelEvent () -- function of module MacOS
Read a high-level event. The return value is a tuple (sender, refcon, data).
SetScheduleTimes (fgi, fgy [, bgi, bgy]) -- function of module MacOS
Controls how often the interpreter checks the event queue and how long it will yield the processor to other processes. fgi specifies after how many clicks (one click is one 60th of a second) the interpreter should check the event queue, and fgy specifies for how many clicks the CPU should be yielded when in the foreground. The optional bgi and 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.

EnableAppswitch (onoff) -- function of module MacOS
Enable or disable the python event loop, based on the value of 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 sys.stdout window its handler will often also look in the event queue. Making sure nothing is ever printed works around this.

HandleEvent (ev) -- function of module MacOS
Pass the event record ev back to the python event loop, or possibly to the handler for the 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.
GetErrorString (errno) -- function of module MacOS
Return the textual description of MacOS error code errno.


Next: macostools Prev: macfs Up: Macintosh Specific Services Top: Top