symbian-qemu-0.9.1-12/python-2.6.1/Mac/Modules/evt/_Evtmodule.c
changeset 1 2fb8b9db1c86
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian-qemu-0.9.1-12/python-2.6.1/Mac/Modules/evt/_Evtmodule.c	Fri Jul 31 15:01:17 2009 +0100
@@ -0,0 +1,559 @@
+
+/* ========================== Module _Evt =========================== */
+
+#include "Python.h"
+
+#ifndef __LP64__
+
+
+#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}
+};
+
+
+#else /* __LP64__ */
+
+static PyMethodDef Evt_methods[] = {
+	{NULL, NULL, 0}
+};
+#endif /* __LP64__ */
+
+
+void init_Evt(void)
+{
+	PyObject *m;
+#ifndef __LP64__
+	PyObject *d;
+#endif /* __LP64__ */
+
+
+
+
+	m = Py_InitModule("_Evt", Evt_methods);
+#ifndef __LP64__
+	d = PyModule_GetDict(m);
+	Evt_Error = PyMac_GetOSErrException();
+	if (Evt_Error == NULL ||
+	    PyDict_SetItemString(d, "Error", Evt_Error) != 0)
+		return;
+#endif /* __LP64__ */
+}
+
+/* ======================== End module _Evt ========================= */
+