summaryrefslogtreecommitdiffstats
path: root/Doc/library/macos.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Doc/library/macos.rst')
-rw-r--r--Doc/library/macos.rst95
1 files changed, 95 insertions, 0 deletions
diff --git a/Doc/library/macos.rst b/Doc/library/macos.rst
new file mode 100644
index 0000000..543f868
--- /dev/null
+++ b/Doc/library/macos.rst
@@ -0,0 +1,95 @@
+
+:mod:`MacOS` --- Access to Mac OS interpreter features
+======================================================
+
+.. module:: MacOS
+ :platform: Mac
+ :synopsis: Access to Mac OS-specific interpreter features.
+
+
+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 capitalization of the module name; this is a historical artifact.
+
+
+.. data:: runtimemodel
+
+ Always ``'macho'``, from Python 2.4 on. In earlier versions of Python the value
+ could also be ``'ppc'`` for the classic Mac OS 8 runtime model or ``'carbon'``
+ for the Mac OS 9 runtime model.
+
+
+.. data:: linkmodel
+
+ The way the interpreter has been linked. As extension modules may be
+ incompatible between linking models, packages could use this information to give
+ more decent error messages. The value is one of ``'static'`` for a statically
+ linked Python, ``'framework'`` for Python in a Mac OS X framework, ``'shared'``
+ for Python in a standard Unix shared library. Older Pythons could also have the
+ value ``'cfm'`` for Mac OS 9-compatible Python.
+
+
+.. exception:: Error
+
+ .. index:: module: macerrors
+
+ 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 :cdata:`OSErr` value) and a textual
+ description of the error code. Symbolic names for all known error codes are
+ defined in the standard module :mod:`macerrors`.
+
+
+.. function:: GetErrorString(errno)
+
+ Return the textual description of MacOS error code *errno*.
+
+
+.. function:: DebugStr(message [, object])
+
+ On Mac OS X the string is simply printed to stderr (on older Mac OS systems more
+ elaborate functionality was available), but it provides a convenient location to
+ attach a breakpoint in a low-level debugger like :program:`gdb`.
+
+
+.. function:: SysBeep()
+
+ Ring the bell.
+
+
+.. function:: GetTicks()
+
+ Get the number of clock ticks (1/60th of a second) since system boot.
+
+
+.. function:: GetCreatorAndType(file)
+
+ Return the file creator and file type as two four-character strings. The *file*
+ parameter can be a pathname or an ``FSSpec`` or ``FSRef`` object.
+
+
+.. function:: SetCreatorAndType(file, creator, type)
+
+ Set the file creator and file type. The *file* parameter can be a pathname or an
+ ``FSSpec`` or ``FSRef`` object. *creator* and *type* must be four character
+ strings.
+
+
+.. function:: openrf(name [, mode])
+
+ Open the resource fork of a file. Arguments are the same as for the built-in
+ function :func:`open`. The object returned has file-like semantics, but it is
+ not a Python file object, so there may be subtle differences.
+
+
+.. function:: WMAvailable()
+
+ Checks whether the current process has access to the window manager. The method
+ will return ``False`` if the window manager is not available, for instance when
+ running on Mac OS X Server or when logged in via ssh, or when the current
+ interpreter is not running from a fullblown application bundle. A script runs
+ from an application bundle either when it has been started with
+ :program:`pythonw` instead of :program:`python` or when running as an applet.
+