diff options
Diffstat (limited to 'Mac/Modules/evt')
-rw-r--r-- | Mac/Modules/evt/_Evtmodule.c | 548 | ||||
-rw-r--r-- | Mac/Modules/evt/evtedit.py | 9 | ||||
-rw-r--r-- | Mac/Modules/evt/evtscan.py | 80 | ||||
-rw-r--r-- | Mac/Modules/evt/evtsupport.py | 92 |
4 files changed, 0 insertions, 729 deletions
diff --git a/Mac/Modules/evt/_Evtmodule.c b/Mac/Modules/evt/_Evtmodule.c deleted file mode 100644 index f7129cf..0000000 --- a/Mac/Modules/evt/_Evtmodule.c +++ /dev/null @@ -1,548 +0,0 @@ - -/* ========================== Module _Evt =========================== */ - -#include "Python.h" - - - -#include "pymactoolbox.h" - -/* Macro to test whether a weak-loaded CFM function exists */ -#define PyMac_PRECHECK(rtn) do { if ( &rtn == NULL ) {\ - PyErr_SetString(PyExc_NotImplementedError, \ - "Not available in this shared library/OS version"); \ - return NULL; \ - }} while(0) - - -#include <Carbon/Carbon.h> - - -static PyObject *Evt_Error; - -static PyObject *Evt_GetMouse(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Point mouseLoc; -#ifndef GetMouse - PyMac_PRECHECK(GetMouse); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - GetMouse(&mouseLoc); - _res = Py_BuildValue("O&", - PyMac_BuildPoint, mouseLoc); - return _res; -} - -static PyObject *Evt_Button(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; -#ifndef Button - PyMac_PRECHECK(Button); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = Button(); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Evt_StillDown(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; -#ifndef StillDown - PyMac_PRECHECK(StillDown); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = StillDown(); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Evt_WaitMouseUp(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; -#ifndef WaitMouseUp - PyMac_PRECHECK(WaitMouseUp); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = WaitMouseUp(); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Evt_GetCaretTime(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - UInt32 _rv; -#ifndef GetCaretTime - PyMac_PRECHECK(GetCaretTime); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = GetCaretTime(); - _res = Py_BuildValue("l", - _rv); - return _res; -} - -static PyObject *Evt_GetKeys(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - KeyMap theKeys__out__; -#ifndef GetKeys - PyMac_PRECHECK(GetKeys); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - GetKeys(theKeys__out__); - _res = Py_BuildValue("s#", - (char *)&theKeys__out__, (int)sizeof(KeyMap)); - return _res; -} - -static PyObject *Evt_GetDblTime(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - UInt32 _rv; -#ifndef GetDblTime - PyMac_PRECHECK(GetDblTime); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = GetDblTime(); - _res = Py_BuildValue("l", - _rv); - return _res; -} - -static PyObject *Evt_SetEventMask(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - EventMask value; -#ifndef SetEventMask - PyMac_PRECHECK(SetEventMask); -#endif - if (!PyArg_ParseTuple(_args, "H", - &value)) - return NULL; - SetEventMask(value); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Evt_GetNextEvent(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - EventMask eventMask; - EventRecord theEvent; -#ifndef GetNextEvent - PyMac_PRECHECK(GetNextEvent); -#endif - if (!PyArg_ParseTuple(_args, "H", - &eventMask)) - return NULL; - _rv = GetNextEvent(eventMask, - &theEvent); - _res = Py_BuildValue("bO&", - _rv, - PyMac_BuildEventRecord, &theEvent); - return _res; -} - -static PyObject *Evt_EventAvail(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - EventMask eventMask; - EventRecord theEvent; -#ifndef EventAvail - PyMac_PRECHECK(EventAvail); -#endif - if (!PyArg_ParseTuple(_args, "H", - &eventMask)) - return NULL; - _rv = EventAvail(eventMask, - &theEvent); - _res = Py_BuildValue("bO&", - _rv, - PyMac_BuildEventRecord, &theEvent); - return _res; -} - -static PyObject *Evt_PostEvent(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - EventKind eventNum; - UInt32 eventMsg; -#ifndef PostEvent - PyMac_PRECHECK(PostEvent); -#endif - if (!PyArg_ParseTuple(_args, "Hl", - &eventNum, - &eventMsg)) - return NULL; - _err = PostEvent(eventNum, - eventMsg); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Evt_FlushEvents(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - EventMask whichMask; - EventMask stopMask; -#ifndef FlushEvents - PyMac_PRECHECK(FlushEvents); -#endif - if (!PyArg_ParseTuple(_args, "HH", - &whichMask, - &stopMask)) - return NULL; - FlushEvents(whichMask, - stopMask); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Evt_GetGlobalMouse(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Point globalMouse; -#ifndef GetGlobalMouse - PyMac_PRECHECK(GetGlobalMouse); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - GetGlobalMouse(&globalMouse); - _res = Py_BuildValue("O&", - PyMac_BuildPoint, globalMouse); - return _res; -} - -static PyObject *Evt_GetCurrentKeyModifiers(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - UInt32 _rv; -#ifndef GetCurrentKeyModifiers - PyMac_PRECHECK(GetCurrentKeyModifiers); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = GetCurrentKeyModifiers(); - _res = Py_BuildValue("l", - _rv); - return _res; -} - -static PyObject *Evt_CheckEventQueueForUserCancel(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; -#ifndef CheckEventQueueForUserCancel - PyMac_PRECHECK(CheckEventQueueForUserCancel); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = CheckEventQueueForUserCancel(); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Evt_KeyScript(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - short code; -#ifndef KeyScript - PyMac_PRECHECK(KeyScript); -#endif - if (!PyArg_ParseTuple(_args, "h", - &code)) - return NULL; - KeyScript(code); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Evt_IsCmdChar(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - EventRecord event; - short test; -#ifndef IsCmdChar - PyMac_PRECHECK(IsCmdChar); -#endif - if (!PyArg_ParseTuple(_args, "O&h", - PyMac_GetEventRecord, &event, - &test)) - return NULL; - _rv = IsCmdChar(&event, - test); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Evt_LMGetKeyThresh(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - SInt16 _rv; -#ifndef LMGetKeyThresh - PyMac_PRECHECK(LMGetKeyThresh); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = LMGetKeyThresh(); - _res = Py_BuildValue("h", - _rv); - return _res; -} - -static PyObject *Evt_LMSetKeyThresh(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - SInt16 value; -#ifndef LMSetKeyThresh - PyMac_PRECHECK(LMSetKeyThresh); -#endif - if (!PyArg_ParseTuple(_args, "h", - &value)) - return NULL; - LMSetKeyThresh(value); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Evt_LMGetKeyRepThresh(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - SInt16 _rv; -#ifndef LMGetKeyRepThresh - PyMac_PRECHECK(LMGetKeyRepThresh); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = LMGetKeyRepThresh(); - _res = Py_BuildValue("h", - _rv); - return _res; -} - -static PyObject *Evt_LMSetKeyRepThresh(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - SInt16 value; -#ifndef LMSetKeyRepThresh - PyMac_PRECHECK(LMSetKeyRepThresh); -#endif - if (!PyArg_ParseTuple(_args, "h", - &value)) - return NULL; - LMSetKeyRepThresh(value); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Evt_LMGetKbdLast(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - UInt8 _rv; -#ifndef LMGetKbdLast - PyMac_PRECHECK(LMGetKbdLast); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = LMGetKbdLast(); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Evt_LMSetKbdLast(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - UInt8 value; -#ifndef LMSetKbdLast - PyMac_PRECHECK(LMSetKbdLast); -#endif - if (!PyArg_ParseTuple(_args, "b", - &value)) - return NULL; - LMSetKbdLast(value); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Evt_LMGetKbdType(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - UInt8 _rv; -#ifndef LMGetKbdType - PyMac_PRECHECK(LMGetKbdType); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = LMGetKbdType(); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Evt_LMSetKbdType(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - UInt8 value; -#ifndef LMSetKbdType - PyMac_PRECHECK(LMSetKbdType); -#endif - if (!PyArg_ParseTuple(_args, "b", - &value)) - return NULL; - LMSetKbdType(value); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Evt_TickCount(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - UInt32 _rv; -#ifndef TickCount - PyMac_PRECHECK(TickCount); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = TickCount(); - _res = Py_BuildValue("l", - _rv); - return _res; -} - -static PyObject *Evt_WaitNextEvent(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - - Boolean _rv; - EventMask eventMask; - EventRecord theEvent; - UInt32 sleep; - Handle mouseregion = (Handle)0; - - if (!PyArg_ParseTuple(_args, "Hl|O&", - &eventMask, - &sleep, - OptResObj_Convert, &mouseregion)) - return NULL; - _rv = WaitNextEvent(eventMask, - &theEvent, - sleep, - (RgnHandle)mouseregion); - _res = Py_BuildValue("bO&", - _rv, - PyMac_BuildEventRecord, &theEvent); - return _res; - -} - -static PyMethodDef Evt_methods[] = { - {"GetMouse", (PyCFunction)Evt_GetMouse, 1, - PyDoc_STR("() -> (Point mouseLoc)")}, - {"Button", (PyCFunction)Evt_Button, 1, - PyDoc_STR("() -> (Boolean _rv)")}, - {"StillDown", (PyCFunction)Evt_StillDown, 1, - PyDoc_STR("() -> (Boolean _rv)")}, - {"WaitMouseUp", (PyCFunction)Evt_WaitMouseUp, 1, - PyDoc_STR("() -> (Boolean _rv)")}, - {"GetCaretTime", (PyCFunction)Evt_GetCaretTime, 1, - PyDoc_STR("() -> (UInt32 _rv)")}, - {"GetKeys", (PyCFunction)Evt_GetKeys, 1, - PyDoc_STR("() -> (KeyMap theKeys)")}, - {"GetDblTime", (PyCFunction)Evt_GetDblTime, 1, - PyDoc_STR("() -> (UInt32 _rv)")}, - {"SetEventMask", (PyCFunction)Evt_SetEventMask, 1, - PyDoc_STR("(EventMask value) -> None")}, - {"GetNextEvent", (PyCFunction)Evt_GetNextEvent, 1, - PyDoc_STR("(EventMask eventMask) -> (Boolean _rv, EventRecord theEvent)")}, - {"EventAvail", (PyCFunction)Evt_EventAvail, 1, - PyDoc_STR("(EventMask eventMask) -> (Boolean _rv, EventRecord theEvent)")}, - {"PostEvent", (PyCFunction)Evt_PostEvent, 1, - PyDoc_STR("(EventKind eventNum, UInt32 eventMsg) -> None")}, - {"FlushEvents", (PyCFunction)Evt_FlushEvents, 1, - PyDoc_STR("(EventMask whichMask, EventMask stopMask) -> None")}, - {"GetGlobalMouse", (PyCFunction)Evt_GetGlobalMouse, 1, - PyDoc_STR("() -> (Point globalMouse)")}, - {"GetCurrentKeyModifiers", (PyCFunction)Evt_GetCurrentKeyModifiers, 1, - PyDoc_STR("() -> (UInt32 _rv)")}, - {"CheckEventQueueForUserCancel", (PyCFunction)Evt_CheckEventQueueForUserCancel, 1, - PyDoc_STR("() -> (Boolean _rv)")}, - {"KeyScript", (PyCFunction)Evt_KeyScript, 1, - PyDoc_STR("(short code) -> None")}, - {"IsCmdChar", (PyCFunction)Evt_IsCmdChar, 1, - PyDoc_STR("(EventRecord event, short test) -> (Boolean _rv)")}, - {"LMGetKeyThresh", (PyCFunction)Evt_LMGetKeyThresh, 1, - PyDoc_STR("() -> (SInt16 _rv)")}, - {"LMSetKeyThresh", (PyCFunction)Evt_LMSetKeyThresh, 1, - PyDoc_STR("(SInt16 value) -> None")}, - {"LMGetKeyRepThresh", (PyCFunction)Evt_LMGetKeyRepThresh, 1, - PyDoc_STR("() -> (SInt16 _rv)")}, - {"LMSetKeyRepThresh", (PyCFunction)Evt_LMSetKeyRepThresh, 1, - PyDoc_STR("(SInt16 value) -> None")}, - {"LMGetKbdLast", (PyCFunction)Evt_LMGetKbdLast, 1, - PyDoc_STR("() -> (UInt8 _rv)")}, - {"LMSetKbdLast", (PyCFunction)Evt_LMSetKbdLast, 1, - PyDoc_STR("(UInt8 value) -> None")}, - {"LMGetKbdType", (PyCFunction)Evt_LMGetKbdType, 1, - PyDoc_STR("() -> (UInt8 _rv)")}, - {"LMSetKbdType", (PyCFunction)Evt_LMSetKbdType, 1, - PyDoc_STR("(UInt8 value) -> None")}, - {"TickCount", (PyCFunction)Evt_TickCount, 1, - PyDoc_STR("() -> (UInt32 _rv)")}, - {"WaitNextEvent", (PyCFunction)Evt_WaitNextEvent, 1, - PyDoc_STR("(EventMask eventMask, UInt32 sleep [,RegionHandle]) -> (Boolean _rv, EventRecord theEvent)")}, - {NULL, NULL, 0} -}; - - - - -void init_Evt(void) -{ - PyObject *m; - PyObject *d; - - - - - m = Py_InitModule("_Evt", Evt_methods); - d = PyModule_GetDict(m); - Evt_Error = PyMac_GetOSErrException(); - if (Evt_Error == NULL || - PyDict_SetItemString(d, "Error", Evt_Error) != 0) - return; -} - -/* ======================== End module _Evt ========================= */ - diff --git a/Mac/Modules/evt/evtedit.py b/Mac/Modules/evt/evtedit.py deleted file mode 100644 index 02087e1..0000000 --- a/Mac/Modules/evt/evtedit.py +++ /dev/null @@ -1,9 +0,0 @@ -f = Function(void, 'SystemClick', - (EventRecord_ptr, 'theEvent', InMode), - (WindowPtr, 'theWindow', InMode), -) -functions.append(f) - -f = Function(UInt32, 'TickCount', -) -functions.append(f) diff --git a/Mac/Modules/evt/evtscan.py b/Mac/Modules/evt/evtscan.py deleted file mode 100644 index ddb158a..0000000 --- a/Mac/Modules/evt/evtscan.py +++ /dev/null @@ -1,80 +0,0 @@ -# Scan an Apple header file, generating a Python file of generator calls. - -import sys -from bgenlocations import TOOLBOXDIR, BGENDIR -sys.path.append(BGENDIR) -from scantools import Scanner - -LONG = "Events" -SHORT = "evt" -OBJECT = "NOTUSED" - -def main(): - input = LONG + ".h" - output = SHORT + "gen.py" - defsoutput = TOOLBOXDIR + LONG + ".py" - scanner = MyScanner(input, output, defsoutput) - scanner.scan() - scanner.close() - print("=== Testing definitions output code ===") - exec(open(defsoutput).read(), {}, {}) - print("=== Done scanning and generating, now importing the generated code... ===") - exec "import " + SHORT + "support" - print("=== Done. It's up to you to compile it now! ===") - -class MyScanner(Scanner): - - def destination(self, type, name, arglist): - classname = "Function" - listname = "functions" - if arglist: - t, n, m = arglist[0] - # This is non-functional today - if t == OBJECT and m == "InMode": - classname = "Method" - listname = "methods" - return classname, listname - - def makeblacklistnames(self): - return [ - "KeyTranslate", - "GetEventMask", # I cannot seem to find this routine... - "WaitNextEvent", # Manually generated because of optional region - # Constants with funny definitions - "osEvtMessageMask", - # OS8 calls - 'SystemEvent', - 'SystemTask', - 'SystemClick', - 'GetOSEvent', - 'OSEventAvail', - ] - - def makeblacklisttypes(self): - return [ - "EvQElPtr", "QHdrPtr" - ] - - def makerepairinstructions(self): - return [ - ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")], - [("InBuffer", "*", "*")]), - - ([("void", "*", "OutMode"), ("long", "*", "InMode"), - ("long", "*", "OutMode")], - [("VarVarOutBuffer", "*", "InOutMode")]), - - ([("void", "wStorage", "OutMode")], - [("NullStorage", "*", "InMode")]), - - # GetKeys - ([('KeyMap', 'theKeys', 'InMode')], - [('*', '*', 'OutMode')]), - - # GetTicker - ([('unsigned long', '*', '*')], - [('unsigned_long', '*', '*')]), - ] - -if __name__ == "__main__": - main() diff --git a/Mac/Modules/evt/evtsupport.py b/Mac/Modules/evt/evtsupport.py deleted file mode 100644 index 8deef92..0000000 --- a/Mac/Modules/evt/evtsupport.py +++ /dev/null @@ -1,92 +0,0 @@ -# This script generates a Python interface for an Apple Macintosh Manager. -# It uses the "bgen" package to generate C code. -# The function specifications are generated by scanning the mamager's header file, -# using the "scantools" package (customized for this particular manager). - -import string - -# Declarations that change for each manager -MACHEADERFILE = 'Events.h' # The Apple header file -MODNAME = '_Evt' # The name of the module -OBJECTNAME = 'Event' # The basic name of the objects used here -KIND = 'Record' # Usually 'Ptr' or 'Handle' - -# The following is *usually* unchanged but may still require tuning -MODPREFIX = 'Evt' # The prefix for module-wide routines -OBJECTTYPE = OBJECTNAME + KIND # The C type used to represent them -OBJECTPREFIX = MODPREFIX + 'Obj' # The prefix for object methods -INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner -OUTPUTFILE = MODNAME + "module.c" # The file generated by this program - -from macsupport import * - -# Create the type objects - -#WindowPeek = OpaqueByValueType("WindowPeek", OBJECTPREFIX) - -RgnHandle = FakeType("(RgnHandle)0") -# XXXX Should be next, but this will break a lot of code... -# RgnHandle = OpaqueByValueType("RgnHandle", "OptResObj") - -KeyMap = ArrayOutputBufferType("KeyMap") -##MacOSEventKind = Type("MacOSEventKind", "h") # Old-style -##MacOSEventMask = Type("MacOSEventMask", "h") # Old-style -EventMask = Type("EventMask", "H") -EventKind = Type("EventKind", "H") - -includestuff = includestuff + """ -#include <Carbon/Carbon.h> - -""" - -# From here on it's basically all boiler plate... - -# Create the generator groups and link them -module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff) - -# Create the generator classes used to populate the lists -Function = OSErrWeakLinkFunctionGenerator -##Method = OSErrWeakLinkMethodGenerator - -# Create and populate the lists -functions = [] -exec(open(INPUTFILE).read()) - -# Move TickCount here, for convenience -f = Function(UInt32, 'TickCount', -) -functions.append(f) - -# add the populated lists to the generator groups -# (in a different wordl the scan program would generate this) -for f in functions: module.add(f) - -WaitNextEvent_body = """ -Boolean _rv; -EventMask eventMask; -EventRecord theEvent; -UInt32 sleep; -Handle mouseregion = (Handle)0; - -if (!PyArg_ParseTuple(_args, "Hl|O&", - &eventMask, - &sleep, - OptResObj_Convert, &mouseregion)) - return NULL; -_rv = WaitNextEvent(eventMask, - &theEvent, - sleep, - (RgnHandle)mouseregion); -_res = Py_BuildValue("bO&", - _rv, - PyMac_BuildEventRecord, &theEvent); -return _res; -""" -f = ManualGenerator("WaitNextEvent", WaitNextEvent_body); -f.docstring = lambda: "(EventMask eventMask, UInt32 sleep [,RegionHandle]) -> (Boolean _rv, EventRecord theEvent)" -module.add(f) - - -# generate output (open the output file as late as possible) -SetOutputFileName(OUTPUTFILE) -module.generate() |