/Mac/Modules/te/_TEmodule.c
http://unladen-swallow.googlecode.com/ · C · 1339 lines · 1198 code · 131 blank · 10 comment · 74 complexity · ceff86830da476b7ece1783c503f48e5 MD5 · raw file
- /* =========================== Module _TE =========================== */
- #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>
- #ifdef USE_TOOLBOX_OBJECT_GLUE
- extern PyObject *_TEObj_New(TEHandle);
- extern int _TEObj_Convert(PyObject *, TEHandle *);
- #define TEObj_New _TEObj_New
- #define TEObj_Convert _TEObj_Convert
- #endif
- #define as_TE(h) ((TEHandle)h)
- #define as_Resource(teh) ((Handle)teh)
- /*
- ** Parse/generate TextStyle records
- */
- static PyObject *
- TextStyle_New(TextStylePtr itself)
- {
- return Py_BuildValue("lllO&", (long)itself->tsFont, (long)itself->tsFace, (long)itself->tsSize, QdRGB_New,
- &itself->tsColor);
- }
- static int
- TextStyle_Convert(PyObject *v, TextStylePtr p_itself)
- {
- long font, face, size;
- if( !PyArg_ParseTuple(v, "lllO&", &font, &face, &size, QdRGB_Convert, &p_itself->tsColor) )
- return 0;
- p_itself->tsFont = (short)font;
- p_itself->tsFace = (Style)face;
- p_itself->tsSize = (short)size;
- return 1;
- }
- static PyObject *TE_Error;
- /* ------------------------- Object type TE ------------------------- */
- PyTypeObject TE_Type;
- #define TEObj_Check(x) ((x)->ob_type == &TE_Type || PyObject_TypeCheck((x), &TE_Type))
- typedef struct TEObject {
- PyObject_HEAD
- TEHandle ob_itself;
- } TEObject;
- PyObject *TEObj_New(TEHandle itself)
- {
- TEObject *it;
- if (itself == NULL) {
- PyErr_SetString(TE_Error,"Cannot create null TE");
- return NULL;
- }
- it = PyObject_NEW(TEObject, &TE_Type);
- if (it == NULL) return NULL;
- it->ob_itself = itself;
- return (PyObject *)it;
- }
- int TEObj_Convert(PyObject *v, TEHandle *p_itself)
- {
- if (!TEObj_Check(v))
- {
- PyErr_SetString(PyExc_TypeError, "TE required");
- return 0;
- }
- *p_itself = ((TEObject *)v)->ob_itself;
- return 1;
- }
- static void TEObj_dealloc(TEObject *self)
- {
- TEDispose(self->ob_itself);
- self->ob_type->tp_free((PyObject *)self);
- }
- static PyObject *TEObj_TESetText(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- char *text__in__;
- long text__len__;
- int text__in_len__;
- #ifndef TESetText
- PyMac_PRECHECK(TESetText);
- #endif
- if (!PyArg_ParseTuple(_args, "s#",
- &text__in__, &text__in_len__))
- return NULL;
- text__len__ = text__in_len__;
- TESetText(text__in__, text__len__,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEGetText(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- CharsHandle _rv;
- #ifndef TEGetText
- PyMac_PRECHECK(TEGetText);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = TEGetText(_self->ob_itself);
- _res = Py_BuildValue("O&",
- ResObj_New, _rv);
- return _res;
- }
- static PyObject *TEObj_TEIdle(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TEIdle
- PyMac_PRECHECK(TEIdle);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TEIdle(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TESetSelect(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- long selStart;
- long selEnd;
- #ifndef TESetSelect
- PyMac_PRECHECK(TESetSelect);
- #endif
- if (!PyArg_ParseTuple(_args, "ll",
- &selStart,
- &selEnd))
- return NULL;
- TESetSelect(selStart,
- selEnd,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEActivate(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TEActivate
- PyMac_PRECHECK(TEActivate);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TEActivate(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEDeactivate(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TEDeactivate
- PyMac_PRECHECK(TEDeactivate);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TEDeactivate(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEKey(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- CharParameter key;
- #ifndef TEKey
- PyMac_PRECHECK(TEKey);
- #endif
- if (!PyArg_ParseTuple(_args, "h",
- &key))
- return NULL;
- TEKey(key,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TECut(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TECut
- PyMac_PRECHECK(TECut);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TECut(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TECopy(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TECopy
- PyMac_PRECHECK(TECopy);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TECopy(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEPaste(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TEPaste
- PyMac_PRECHECK(TEPaste);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TEPaste(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEDelete(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TEDelete
- PyMac_PRECHECK(TEDelete);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TEDelete(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEInsert(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- char *text__in__;
- long text__len__;
- int text__in_len__;
- #ifndef TEInsert
- PyMac_PRECHECK(TEInsert);
- #endif
- if (!PyArg_ParseTuple(_args, "s#",
- &text__in__, &text__in_len__))
- return NULL;
- text__len__ = text__in_len__;
- TEInsert(text__in__, text__len__,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TESetAlignment(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- short just;
- #ifndef TESetAlignment
- PyMac_PRECHECK(TESetAlignment);
- #endif
- if (!PyArg_ParseTuple(_args, "h",
- &just))
- return NULL;
- TESetAlignment(just,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEUpdate(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Rect rUpdate;
- #ifndef TEUpdate
- PyMac_PRECHECK(TEUpdate);
- #endif
- if (!PyArg_ParseTuple(_args, "O&",
- PyMac_GetRect, &rUpdate))
- return NULL;
- TEUpdate(&rUpdate,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEScroll(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- short dh;
- short dv;
- #ifndef TEScroll
- PyMac_PRECHECK(TEScroll);
- #endif
- if (!PyArg_ParseTuple(_args, "hh",
- &dh,
- &dv))
- return NULL;
- TEScroll(dh,
- dv,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TESelView(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TESelView
- PyMac_PRECHECK(TESelView);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TESelView(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEPinScroll(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- short dh;
- short dv;
- #ifndef TEPinScroll
- PyMac_PRECHECK(TEPinScroll);
- #endif
- if (!PyArg_ParseTuple(_args, "hh",
- &dh,
- &dv))
- return NULL;
- TEPinScroll(dh,
- dv,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEAutoView(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Boolean fAuto;
- #ifndef TEAutoView
- PyMac_PRECHECK(TEAutoView);
- #endif
- if (!PyArg_ParseTuple(_args, "b",
- &fAuto))
- return NULL;
- TEAutoView(fAuto,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TECalText(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TECalText
- PyMac_PRECHECK(TECalText);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TECalText(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEGetOffset(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- short _rv;
- Point pt;
- #ifndef TEGetOffset
- PyMac_PRECHECK(TEGetOffset);
- #endif
- if (!PyArg_ParseTuple(_args, "O&",
- PyMac_GetPoint, &pt))
- return NULL;
- _rv = TEGetOffset(pt,
- _self->ob_itself);
- _res = Py_BuildValue("h",
- _rv);
- return _res;
- }
- static PyObject *TEObj_TEGetPoint(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Point _rv;
- short offset;
- #ifndef TEGetPoint
- PyMac_PRECHECK(TEGetPoint);
- #endif
- if (!PyArg_ParseTuple(_args, "h",
- &offset))
- return NULL;
- _rv = TEGetPoint(offset,
- _self->ob_itself);
- _res = Py_BuildValue("O&",
- PyMac_BuildPoint, _rv);
- return _res;
- }
- static PyObject *TEObj_TEClick(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Point pt;
- Boolean fExtend;
- #ifndef TEClick
- PyMac_PRECHECK(TEClick);
- #endif
- if (!PyArg_ParseTuple(_args, "O&b",
- PyMac_GetPoint, &pt,
- &fExtend))
- return NULL;
- TEClick(pt,
- fExtend,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TESetStyleHandle(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- TEStyleHandle theHandle;
- #ifndef TESetStyleHandle
- PyMac_PRECHECK(TESetStyleHandle);
- #endif
- if (!PyArg_ParseTuple(_args, "O&",
- ResObj_Convert, &theHandle))
- return NULL;
- TESetStyleHandle(theHandle,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEGetStyleHandle(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- TEStyleHandle _rv;
- #ifndef TEGetStyleHandle
- PyMac_PRECHECK(TEGetStyleHandle);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = TEGetStyleHandle(_self->ob_itself);
- _res = Py_BuildValue("O&",
- ResObj_New, _rv);
- return _res;
- }
- static PyObject *TEObj_TEGetStyle(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- short offset;
- TextStyle theStyle;
- short lineHeight;
- short fontAscent;
- #ifndef TEGetStyle
- PyMac_PRECHECK(TEGetStyle);
- #endif
- if (!PyArg_ParseTuple(_args, "h",
- &offset))
- return NULL;
- TEGetStyle(offset,
- &theStyle,
- &lineHeight,
- &fontAscent,
- _self->ob_itself);
- _res = Py_BuildValue("O&hh",
- TextStyle_New, &theStyle,
- lineHeight,
- fontAscent);
- return _res;
- }
- static PyObject *TEObj_TEStylePaste(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- #ifndef TEStylePaste
- PyMac_PRECHECK(TEStylePaste);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- TEStylePaste(_self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TESetStyle(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- short mode;
- TextStyle newStyle;
- Boolean fRedraw;
- #ifndef TESetStyle
- PyMac_PRECHECK(TESetStyle);
- #endif
- if (!PyArg_ParseTuple(_args, "hO&b",
- &mode,
- TextStyle_Convert, &newStyle,
- &fRedraw))
- return NULL;
- TESetStyle(mode,
- &newStyle,
- fRedraw,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEReplaceStyle(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- short mode;
- TextStyle oldStyle;
- TextStyle newStyle;
- Boolean fRedraw;
- #ifndef TEReplaceStyle
- PyMac_PRECHECK(TEReplaceStyle);
- #endif
- if (!PyArg_ParseTuple(_args, "hO&O&b",
- &mode,
- TextStyle_Convert, &oldStyle,
- TextStyle_Convert, &newStyle,
- &fRedraw))
- return NULL;
- TEReplaceStyle(mode,
- &oldStyle,
- &newStyle,
- fRedraw,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEGetStyleScrapHandle(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- StScrpHandle _rv;
- #ifndef TEGetStyleScrapHandle
- PyMac_PRECHECK(TEGetStyleScrapHandle);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = TEGetStyleScrapHandle(_self->ob_itself);
- _res = Py_BuildValue("O&",
- ResObj_New, _rv);
- return _res;
- }
- static PyObject *TEObj_TEStyleInsert(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- char *text__in__;
- long text__len__;
- int text__in_len__;
- StScrpHandle hST;
- #ifndef TEStyleInsert
- PyMac_PRECHECK(TEStyleInsert);
- #endif
- if (!PyArg_ParseTuple(_args, "s#O&",
- &text__in__, &text__in_len__,
- ResObj_Convert, &hST))
- return NULL;
- text__len__ = text__in_len__;
- TEStyleInsert(text__in__, text__len__,
- hST,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TEGetHeight(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- long _rv;
- long endLine;
- long startLine;
- #ifndef TEGetHeight
- PyMac_PRECHECK(TEGetHeight);
- #endif
- if (!PyArg_ParseTuple(_args, "ll",
- &endLine,
- &startLine))
- return NULL;
- _rv = TEGetHeight(endLine,
- startLine,
- _self->ob_itself);
- _res = Py_BuildValue("l",
- _rv);
- return _res;
- }
- static PyObject *TEObj_TEContinuousStyle(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Boolean _rv;
- short mode;
- TextStyle aStyle;
- #ifndef TEContinuousStyle
- PyMac_PRECHECK(TEContinuousStyle);
- #endif
- if (!PyArg_ParseTuple(_args, "hO&",
- &mode,
- TextStyle_Convert, &aStyle))
- return NULL;
- _rv = TEContinuousStyle(&mode,
- &aStyle,
- _self->ob_itself);
- _res = Py_BuildValue("bhO&",
- _rv,
- mode,
- TextStyle_New, &aStyle);
- return _res;
- }
- static PyObject *TEObj_TEUseStyleScrap(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- long rangeStart;
- long rangeEnd;
- StScrpHandle newStyles;
- Boolean fRedraw;
- #ifndef TEUseStyleScrap
- PyMac_PRECHECK(TEUseStyleScrap);
- #endif
- if (!PyArg_ParseTuple(_args, "llO&b",
- &rangeStart,
- &rangeEnd,
- ResObj_Convert, &newStyles,
- &fRedraw))
- return NULL;
- TEUseStyleScrap(rangeStart,
- rangeEnd,
- newStyles,
- fRedraw,
- _self->ob_itself);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_TENumStyles(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- long _rv;
- long rangeStart;
- long rangeEnd;
- #ifndef TENumStyles
- PyMac_PRECHECK(TENumStyles);
- #endif
- if (!PyArg_ParseTuple(_args, "ll",
- &rangeStart,
- &rangeEnd))
- return NULL;
- _rv = TENumStyles(rangeStart,
- rangeEnd,
- _self->ob_itself);
- _res = Py_BuildValue("l",
- _rv);
- return _res;
- }
- static PyObject *TEObj_TEFeatureFlag(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- short _rv;
- short feature;
- short action;
- #ifndef TEFeatureFlag
- PyMac_PRECHECK(TEFeatureFlag);
- #endif
- if (!PyArg_ParseTuple(_args, "hh",
- &feature,
- &action))
- return NULL;
- _rv = TEFeatureFlag(feature,
- action,
- _self->ob_itself);
- _res = Py_BuildValue("h",
- _rv);
- return _res;
- }
- static PyObject *TEObj_TEGetHiliteRgn(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- OSErr _err;
- RgnHandle region;
- #ifndef TEGetHiliteRgn
- PyMac_PRECHECK(TEGetHiliteRgn);
- #endif
- if (!PyArg_ParseTuple(_args, "O&",
- ResObj_Convert, ®ion))
- return NULL;
- _err = TEGetHiliteRgn(region,
- _self->ob_itself);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TEObj_as_Resource(TEObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Handle _rv;
- #ifndef as_Resource
- PyMac_PRECHECK(as_Resource);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = as_Resource(_self->ob_itself);
- _res = Py_BuildValue("O&",
- ResObj_New, _rv);
- return _res;
- }
- static PyMethodDef TEObj_methods[] = {
- {"TESetText", (PyCFunction)TEObj_TESetText, 1,
- PyDoc_STR("(Buffer text) -> None")},
- {"TEGetText", (PyCFunction)TEObj_TEGetText, 1,
- PyDoc_STR("() -> (CharsHandle _rv)")},
- {"TEIdle", (PyCFunction)TEObj_TEIdle, 1,
- PyDoc_STR("() -> None")},
- {"TESetSelect", (PyCFunction)TEObj_TESetSelect, 1,
- PyDoc_STR("(long selStart, long selEnd) -> None")},
- {"TEActivate", (PyCFunction)TEObj_TEActivate, 1,
- PyDoc_STR("() -> None")},
- {"TEDeactivate", (PyCFunction)TEObj_TEDeactivate, 1,
- PyDoc_STR("() -> None")},
- {"TEKey", (PyCFunction)TEObj_TEKey, 1,
- PyDoc_STR("(CharParameter key) -> None")},
- {"TECut", (PyCFunction)TEObj_TECut, 1,
- PyDoc_STR("() -> None")},
- {"TECopy", (PyCFunction)TEObj_TECopy, 1,
- PyDoc_STR("() -> None")},
- {"TEPaste", (PyCFunction)TEObj_TEPaste, 1,
- PyDoc_STR("() -> None")},
- {"TEDelete", (PyCFunction)TEObj_TEDelete, 1,
- PyDoc_STR("() -> None")},
- {"TEInsert", (PyCFunction)TEObj_TEInsert, 1,
- PyDoc_STR("(Buffer text) -> None")},
- {"TESetAlignment", (PyCFunction)TEObj_TESetAlignment, 1,
- PyDoc_STR("(short just) -> None")},
- {"TEUpdate", (PyCFunction)TEObj_TEUpdate, 1,
- PyDoc_STR("(Rect rUpdate) -> None")},
- {"TEScroll", (PyCFunction)TEObj_TEScroll, 1,
- PyDoc_STR("(short dh, short dv) -> None")},
- {"TESelView", (PyCFunction)TEObj_TESelView, 1,
- PyDoc_STR("() -> None")},
- {"TEPinScroll", (PyCFunction)TEObj_TEPinScroll, 1,
- PyDoc_STR("(short dh, short dv) -> None")},
- {"TEAutoView", (PyCFunction)TEObj_TEAutoView, 1,
- PyDoc_STR("(Boolean fAuto) -> None")},
- {"TECalText", (PyCFunction)TEObj_TECalText, 1,
- PyDoc_STR("() -> None")},
- {"TEGetOffset", (PyCFunction)TEObj_TEGetOffset, 1,
- PyDoc_STR("(Point pt) -> (short _rv)")},
- {"TEGetPoint", (PyCFunction)TEObj_TEGetPoint, 1,
- PyDoc_STR("(short offset) -> (Point _rv)")},
- {"TEClick", (PyCFunction)TEObj_TEClick, 1,
- PyDoc_STR("(Point pt, Boolean fExtend) -> None")},
- {"TESetStyleHandle", (PyCFunction)TEObj_TESetStyleHandle, 1,
- PyDoc_STR("(TEStyleHandle theHandle) -> None")},
- {"TEGetStyleHandle", (PyCFunction)TEObj_TEGetStyleHandle, 1,
- PyDoc_STR("() -> (TEStyleHandle _rv)")},
- {"TEGetStyle", (PyCFunction)TEObj_TEGetStyle, 1,
- PyDoc_STR("(short offset) -> (TextStyle theStyle, short lineHeight, short fontAscent)")},
- {"TEStylePaste", (PyCFunction)TEObj_TEStylePaste, 1,
- PyDoc_STR("() -> None")},
- {"TESetStyle", (PyCFunction)TEObj_TESetStyle, 1,
- PyDoc_STR("(short mode, TextStyle newStyle, Boolean fRedraw) -> None")},
- {"TEReplaceStyle", (PyCFunction)TEObj_TEReplaceStyle, 1,
- PyDoc_STR("(short mode, TextStyle oldStyle, TextStyle newStyle, Boolean fRedraw) -> None")},
- {"TEGetStyleScrapHandle", (PyCFunction)TEObj_TEGetStyleScrapHandle, 1,
- PyDoc_STR("() -> (StScrpHandle _rv)")},
- {"TEStyleInsert", (PyCFunction)TEObj_TEStyleInsert, 1,
- PyDoc_STR("(Buffer text, StScrpHandle hST) -> None")},
- {"TEGetHeight", (PyCFunction)TEObj_TEGetHeight, 1,
- PyDoc_STR("(long endLine, long startLine) -> (long _rv)")},
- {"TEContinuousStyle", (PyCFunction)TEObj_TEContinuousStyle, 1,
- PyDoc_STR("(short mode, TextStyle aStyle) -> (Boolean _rv, short mode, TextStyle aStyle)")},
- {"TEUseStyleScrap", (PyCFunction)TEObj_TEUseStyleScrap, 1,
- PyDoc_STR("(long rangeStart, long rangeEnd, StScrpHandle newStyles, Boolean fRedraw) -> None")},
- {"TENumStyles", (PyCFunction)TEObj_TENumStyles, 1,
- PyDoc_STR("(long rangeStart, long rangeEnd) -> (long _rv)")},
- {"TEFeatureFlag", (PyCFunction)TEObj_TEFeatureFlag, 1,
- PyDoc_STR("(short feature, short action) -> (short _rv)")},
- {"TEGetHiliteRgn", (PyCFunction)TEObj_TEGetHiliteRgn, 1,
- PyDoc_STR("(RgnHandle region) -> None")},
- {"as_Resource", (PyCFunction)TEObj_as_Resource, 1,
- PyDoc_STR("() -> (Handle _rv)")},
- {NULL, NULL, 0}
- };
- static PyObject *TEObj_get_destRect(TEObject *self, void *closure)
- {
- return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->destRect);
- }
- #define TEObj_set_destRect NULL
- static PyObject *TEObj_get_viewRect(TEObject *self, void *closure)
- {
- return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->viewRect);
- }
- #define TEObj_set_viewRect NULL
- static PyObject *TEObj_get_selRect(TEObject *self, void *closure)
- {
- return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->selRect);
- }
- #define TEObj_set_selRect NULL
- static PyObject *TEObj_get_lineHeight(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->lineHeight);
- }
- #define TEObj_set_lineHeight NULL
- static PyObject *TEObj_get_fontAscent(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->fontAscent);
- }
- #define TEObj_set_fontAscent NULL
- static PyObject *TEObj_get_selPoint(TEObject *self, void *closure)
- {
- return Py_BuildValue("O&", PyMac_BuildPoint, (*self->ob_itself)->selPoint);
- }
- #define TEObj_set_selPoint NULL
- static PyObject *TEObj_get_selStart(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->selStart);
- }
- #define TEObj_set_selStart NULL
- static PyObject *TEObj_get_selEnd(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->selEnd);
- }
- #define TEObj_set_selEnd NULL
- static PyObject *TEObj_get_active(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->active);
- }
- #define TEObj_set_active NULL
- static PyObject *TEObj_get_just(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->just);
- }
- #define TEObj_set_just NULL
- static PyObject *TEObj_get_teLength(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->teLength);
- }
- #define TEObj_set_teLength NULL
- static PyObject *TEObj_get_txFont(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->txFont);
- }
- #define TEObj_set_txFont NULL
- static PyObject *TEObj_get_txFace(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->txFace);
- }
- #define TEObj_set_txFace NULL
- static PyObject *TEObj_get_txMode(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->txMode);
- }
- #define TEObj_set_txMode NULL
- static PyObject *TEObj_get_txSize(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->txSize);
- }
- #define TEObj_set_txSize NULL
- static PyObject *TEObj_get_nLines(TEObject *self, void *closure)
- {
- return Py_BuildValue("h", (*self->ob_itself)->nLines);
- }
- #define TEObj_set_nLines NULL
- static PyGetSetDef TEObj_getsetlist[] = {
- {"destRect", (getter)TEObj_get_destRect, (setter)TEObj_set_destRect, "Destination rectangle"},
- {"viewRect", (getter)TEObj_get_viewRect, (setter)TEObj_set_viewRect, "Viewing rectangle"},
- {"selRect", (getter)TEObj_get_selRect, (setter)TEObj_set_selRect, "Selection rectangle"},
- {"lineHeight", (getter)TEObj_get_lineHeight, (setter)TEObj_set_lineHeight, "Height of a line"},
- {"fontAscent", (getter)TEObj_get_fontAscent, (setter)TEObj_set_fontAscent, "Ascent of a line"},
- {"selPoint", (getter)TEObj_get_selPoint, (setter)TEObj_set_selPoint, "Selection Point"},
- {"selStart", (getter)TEObj_get_selStart, (setter)TEObj_set_selStart, "Start of selection"},
- {"selEnd", (getter)TEObj_get_selEnd, (setter)TEObj_set_selEnd, "End of selection"},
- {"active", (getter)TEObj_get_active, (setter)TEObj_set_active, "TBD"},
- {"just", (getter)TEObj_get_just, (setter)TEObj_set_just, "Justification"},
- {"teLength", (getter)TEObj_get_teLength, (setter)TEObj_set_teLength, "TBD"},
- {"txFont", (getter)TEObj_get_txFont, (setter)TEObj_set_txFont, "Current font"},
- {"txFace", (getter)TEObj_get_txFace, (setter)TEObj_set_txFace, "Current font variant"},
- {"txMode", (getter)TEObj_get_txMode, (setter)TEObj_set_txMode, "Current text-drawing mode"},
- {"txSize", (getter)TEObj_get_txSize, (setter)TEObj_set_txSize, "Current font size"},
- {"nLines", (getter)TEObj_get_nLines, (setter)TEObj_set_nLines, "TBD"},
- {NULL, NULL, NULL, NULL},
- };
- #define TEObj_compare NULL
- #define TEObj_repr NULL
- #define TEObj_hash NULL
- #define TEObj_tp_init 0
- #define TEObj_tp_alloc PyType_GenericAlloc
- static PyObject *TEObj_tp_new(PyTypeObject *type, PyObject *_args, PyObject *_kwds)
- {
- PyObject *_self;
- TEHandle itself;
- char *kw[] = {"itself", 0};
- if (!PyArg_ParseTupleAndKeywords(_args, _kwds, "O&", kw, TEObj_Convert, &itself)) return NULL;
- if ((_self = type->tp_alloc(type, 0)) == NULL) return NULL;
- ((TEObject *)_self)->ob_itself = itself;
- return _self;
- }
- #define TEObj_tp_free PyObject_Del
- PyTypeObject TE_Type = {
- PyObject_HEAD_INIT(NULL)
- 0, /*ob_size*/
- "_TE.TE", /*tp_name*/
- sizeof(TEObject), /*tp_basicsize*/
- 0, /*tp_itemsize*/
- /* methods */
- (destructor) TEObj_dealloc, /*tp_dealloc*/
- 0, /*tp_print*/
- (getattrfunc)0, /*tp_getattr*/
- (setattrfunc)0, /*tp_setattr*/
- (cmpfunc) TEObj_compare, /*tp_compare*/
- (reprfunc) TEObj_repr, /*tp_repr*/
- (PyNumberMethods *)0, /* tp_as_number */
- (PySequenceMethods *)0, /* tp_as_sequence */
- (PyMappingMethods *)0, /* tp_as_mapping */
- (hashfunc) TEObj_hash, /*tp_hash*/
- 0, /*tp_call*/
- 0, /*tp_str*/
- PyObject_GenericGetAttr, /*tp_getattro*/
- PyObject_GenericSetAttr, /*tp_setattro */
- 0, /*tp_as_buffer*/
- Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE, /* tp_flags */
- 0, /*tp_doc*/
- 0, /*tp_traverse*/
- 0, /*tp_clear*/
- 0, /*tp_richcompare*/
- 0, /*tp_weaklistoffset*/
- 0, /*tp_iter*/
- 0, /*tp_iternext*/
- TEObj_methods, /* tp_methods */
- 0, /*tp_members*/
- TEObj_getsetlist, /*tp_getset*/
- 0, /*tp_base*/
- 0, /*tp_dict*/
- 0, /*tp_descr_get*/
- 0, /*tp_descr_set*/
- 0, /*tp_dictoffset*/
- TEObj_tp_init, /* tp_init */
- TEObj_tp_alloc, /* tp_alloc */
- TEObj_tp_new, /* tp_new */
- TEObj_tp_free, /* tp_free */
- };
- /* ----------------------- End object type TE ----------------------- */
- static PyObject *TE_TEScrapHandle(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Handle _rv;
- #ifndef TEScrapHandle
- PyMac_PRECHECK(TEScrapHandle);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = TEScrapHandle();
- _res = Py_BuildValue("O&",
- ResObj_New, _rv);
- return _res;
- }
- static PyObject *TE_TEGetScrapLength(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- long _rv;
- #ifndef TEGetScrapLength
- PyMac_PRECHECK(TEGetScrapLength);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = TEGetScrapLength();
- _res = Py_BuildValue("l",
- _rv);
- return _res;
- }
- static PyObject *TE_TENew(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- TEHandle _rv;
- Rect destRect;
- Rect viewRect;
- #ifndef TENew
- PyMac_PRECHECK(TENew);
- #endif
- if (!PyArg_ParseTuple(_args, "O&O&",
- PyMac_GetRect, &destRect,
- PyMac_GetRect, &viewRect))
- return NULL;
- _rv = TENew(&destRect,
- &viewRect);
- _res = Py_BuildValue("O&",
- TEObj_New, _rv);
- return _res;
- }
- static PyObject *TE_TETextBox(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- char *text__in__;
- long text__len__;
- int text__in_len__;
- Rect box;
- short just;
- #ifndef TETextBox
- PyMac_PRECHECK(TETextBox);
- #endif
- if (!PyArg_ParseTuple(_args, "s#O&h",
- &text__in__, &text__in_len__,
- PyMac_GetRect, &box,
- &just))
- return NULL;
- text__len__ = text__in_len__;
- TETextBox(text__in__, text__len__,
- &box,
- just);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TE_TEStyleNew(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- TEHandle _rv;
- Rect destRect;
- Rect viewRect;
- #ifndef TEStyleNew
- PyMac_PRECHECK(TEStyleNew);
- #endif
- if (!PyArg_ParseTuple(_args, "O&O&",
- PyMac_GetRect, &destRect,
- PyMac_GetRect, &viewRect))
- return NULL;
- _rv = TEStyleNew(&destRect,
- &viewRect);
- _res = Py_BuildValue("O&",
- TEObj_New, _rv);
- return _res;
- }
- static PyObject *TE_TESetScrapLength(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- long length;
- #ifndef TESetScrapLength
- PyMac_PRECHECK(TESetScrapLength);
- #endif
- if (!PyArg_ParseTuple(_args, "l",
- &length))
- return NULL;
- TESetScrapLength(length);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TE_TEFromScrap(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- OSErr _err;
- #ifndef TEFromScrap
- PyMac_PRECHECK(TEFromScrap);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _err = TEFromScrap();
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TE_TEToScrap(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- OSErr _err;
- #ifndef TEToScrap
- PyMac_PRECHECK(TEToScrap);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _err = TEToScrap();
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TE_TEGetScrapHandle(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Handle _rv;
- #ifndef TEGetScrapHandle
- PyMac_PRECHECK(TEGetScrapHandle);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = TEGetScrapHandle();
- _res = Py_BuildValue("O&",
- ResObj_New, _rv);
- return _res;
- }
- static PyObject *TE_TESetScrapHandle(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- Handle value;
- #ifndef TESetScrapHandle
- PyMac_PRECHECK(TESetScrapHandle);
- #endif
- if (!PyArg_ParseTuple(_args, "O&",
- ResObj_Convert, &value))
- return NULL;
- TESetScrapHandle(value);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TE_LMGetWordRedraw(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- UInt8 _rv;
- #ifndef LMGetWordRedraw
- PyMac_PRECHECK(LMGetWordRedraw);
- #endif
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = LMGetWordRedraw();
- _res = Py_BuildValue("b",
- _rv);
- return _res;
- }
- static PyObject *TE_LMSetWordRedraw(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- UInt8 value;
- #ifndef LMSetWordRedraw
- PyMac_PRECHECK(LMSetWordRedraw);
- #endif
- if (!PyArg_ParseTuple(_args, "b",
- &value))
- return NULL;
- LMSetWordRedraw(value);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
- }
- static PyObject *TE_as_TE(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
- TEHandle _rv;
- Handle h;
- #ifndef as_TE
- PyMac_PRECHECK(as_TE);
- #endif
- if (!PyArg_ParseTuple(_args, "O&",
- ResObj_Convert, &h))
- return NULL;
- _rv = as_TE(h);
- _res = Py_BuildValue("O&",
- TEObj_New, _rv);
- return _res;
- }
- #endif /* __LP64__ */
- static PyMethodDef TE_methods[] = {
- #ifndef __LP64__
- {"TEScrapHandle", (PyCFunction)TE_TEScrapHandle, 1,
- PyDoc_STR("() -> (Handle _rv)")},
- {"TEGetScrapLength", (PyCFunction)TE_TEGetScrapLength, 1,
- PyDoc_STR("() -> (long _rv)")},
- {"TENew", (PyCFunction)TE_TENew, 1,
- PyDoc_STR("(Rect destRect, Rect viewRect) -> (TEHandle _rv)")},
- {"TETextBox", (PyCFunction)TE_TETextBox, 1,
- PyDoc_STR("(Buffer text, Rect box, short just) -> None")},
- {"TEStyleNew", (PyCFunction)TE_TEStyleNew, 1,
- PyDoc_STR("(Rect destRect, Rect viewRect) -> (TEHandle _rv)")},
- {"TESetScrapLength", (PyCFunction)TE_TESetScrapLength, 1,
- PyDoc_STR("(long length) -> None")},
- {"TEFromScrap", (PyCFunction)TE_TEFromScrap, 1,
- PyDoc_STR("() -> None")},
- {"TEToScrap", (PyCFunction)TE_TEToScrap, 1,
- PyDoc_STR("() -> None")},
- {"TEGetScrapHandle", (PyCFunction)TE_TEGetScrapHandle, 1,
- PyDoc_STR("() -> (Handle _rv)")},
- {"TESetScrapHandle", (PyCFunction)TE_TESetScrapHandle, 1,
- PyDoc_STR("(Handle value) -> None")},
- {"LMGetWordRedraw", (PyCFunction)TE_LMGetWordRedraw, 1,
- PyDoc_STR("() -> (UInt8 _rv)")},
- {"LMSetWordRedraw", (PyCFunction)TE_LMSetWordRedraw, 1,
- PyDoc_STR("(UInt8 value) -> None")},
- {"as_TE", (PyCFunction)TE_as_TE, 1,
- PyDoc_STR("(Handle h) -> (TEHandle _rv)")},
- #endif /* __LP64__ */
- {NULL, NULL, 0}
- };
- void init_TE(void)
- {
- PyObject *m;
- #ifndef __LP64__
- PyObject *d;
- PyMac_INIT_TOOLBOX_OBJECT_NEW(TEHandle, TEObj_New);
- PyMac_INIT_TOOLBOX_OBJECT_CONVERT(TEHandle, TEObj_Convert);
- #endif /* __LP64__ */
- m = Py_InitModule("_TE", TE_methods);
- #ifndef __LP64__
- d = PyModule_GetDict(m);
- TE_Error = PyMac_GetOSErrException();
- if (TE_Error == NULL ||
- PyDict_SetItemString(d, "Error", TE_Error) != 0)
- return;
- TE_Type.ob_type = &PyType_Type;
- if (PyType_Ready(&TE_Type) < 0) return;
- Py_INCREF(&TE_Type);
- PyModule_AddObject(m, "TE", (PyObject *)&TE_Type);
- /* Backward-compatible name */
- Py_INCREF(&TE_Type);
- PyModule_AddObject(m, "TEType", (PyObject *)&TE_Type);
- #endif /* __LP64__ */
- }
- /* ========================= End module _TE ========================= */