From 8ae8e4f9635215fece5eafba5593279065291811 Mon Sep 17 00:00:00 2001 From: Jack Jansen Date: Tue, 23 Apr 1996 16:17:08 +0000 Subject: [PATCH] Made style and soup handles optional --- Mac/Modules/waste/wastemodule.c | 18 ++++++++---------- Mac/Modules/waste/wastescan.py | 17 ++++++++++++++--- Mac/Modules/waste/wastesupport.py | 9 +++++---- 3 files changed, 27 insertions(+), 17 deletions(-) diff --git a/Mac/Modules/waste/wastemodule.c b/Mac/Modules/waste/wastemodule.c index 6ffdf444df5..fb8f620e34a 100644 --- a/Mac/Modules/waste/wastemodule.c +++ b/Mac/Modules/waste/wastemodule.c @@ -40,9 +40,6 @@ extern int GrafObj_Convert(PyObject *, GrafPtr *); extern PyObject *BMObj_New(BitMapPtr); extern int BMObj_Convert(PyObject *, BitMapPtr *); -extern PyObject *PMObj_New(PixMapHandle); -extern int PMObj_Convert(PyObject *, PixMapHandle *); - extern PyObject *WinObj_WhichWindow(WindowPtr); #include @@ -559,7 +556,8 @@ static PyObject *wasteObj_WEContinuousStyle(_self, _args) Boolean _rv; WEStyleMode mode; TextStyle ts; - if (!PyArg_ParseTuple(_args, "")) + if (!PyArg_ParseTuple(_args, "h", + &mode)) return NULL; _rv = WEContinuousStyle(&mode, &ts, @@ -692,9 +690,9 @@ static PyObject *wasteObj_WECopyRange(_self, _args) if (!PyArg_ParseTuple(_args, "llO&O&O&", &rangeStart, &rangeEnd, - ResObj_Convert, &hText, - ResObj_Convert, &hStyles, - ResObj_Convert, &hSoup)) + OptResObj_Convert, &hText, + OptResObj_Convert, &hStyles, + OptResObj_Convert, &hSoup)) return NULL; _err = WECopyRange(rangeStart, rangeEnd, @@ -916,8 +914,8 @@ static PyObject *wasteObj_WEInsert(_self, _args) WESoupHandle hSoup; if (!PyArg_ParseTuple(_args, "s#O&O&", &pText__in__, &pText__in_len__, - ResObj_Convert, &hStyles, - ResObj_Convert, &hSoup)) + OptResObj_Convert, &hStyles, + OptResObj_Convert, &hSoup)) return NULL; pText__len__ = pText__in_len__; _err = WEInsert(pText__in__, pText__len__, @@ -1344,7 +1342,7 @@ static PyMethodDef wasteObj_methods[] = { {"WESetViewRect", (PyCFunction)wasteObj_WESetViewRect, 1, "(LongRect viewRect) -> None"}, {"WEContinuousStyle", (PyCFunction)wasteObj_WEContinuousStyle, 1, - "() -> (Boolean _rv, WEStyleMode mode, TextStyle ts)"}, + "(WEStyleMode mode) -> (Boolean _rv, WEStyleMode mode, TextStyle ts)"}, {"WEGetRunInfo", (PyCFunction)wasteObj_WEGetRunInfo, 1, "(long offset) -> (WERunInfo runInfo)"}, {"WEGetOffset", (PyCFunction)wasteObj_WEGetOffset, 1, diff --git a/Mac/Modules/waste/wastescan.py b/Mac/Modules/waste/wastescan.py index ddb2de9557c..b501344a365 100644 --- a/Mac/Modules/waste/wastescan.py +++ b/Mac/Modules/waste/wastescan.py @@ -18,7 +18,7 @@ def main(): defsoutput = TOOLBOXDIR + "WASTEconst.py" scanner = MyScanner(input, output, defsoutput) scanner.scan() - scanner.gentypetest(SHORT+"typetest.py") +## scanner.gentypetest(SHORT+"typetest.py") scanner.close() print "=== Done scanning and generating, now importing the generated code... ===" exec "import " + SHORT + "support" @@ -67,8 +67,19 @@ class MyScanner(Scanner): [("InBuffer", "*", "*")]), # WEContinuousStyle - ([("WEStyleMode", "mode", "OutMode"), ("TextStyle", "aStyle", "OutMode")], - [("WEStyleMode", "mode", "InOutMode"), ("TextStyle", "aStyle", "InOutMode")]) + ([("WEStyleMode", "mode", "OutMode"), ("TextStyle", "ts", "OutMode")], + [("WEStyleMode", "mode", "InOutMode"), ("TextStyle", "ts", "OutMode")]), + + # WECopyRange + ([('Handle', 'hText', 'InMode'), ('StScrpHandle', 'hStyles', 'InMode'), + ('WESoupHandle', 'hSoup', 'InMode')], + [('OptHandle', 'hText', 'InMode'), ('OptStScrpHandle', 'hStyles', 'InMode'), + ('OptSoupHandle', 'hSoup', 'InMode')]), + + # WEInsert + ([('StScrpHandle', 'hStyles', 'InMode'), ('WESoupHandle', 'hSoup', 'InMode')], + [('OptStScrpHandle', 'hStyles', 'InMode'), ('OptSoupHandle', 'hSoup', 'InMode')]) + ] if __name__ == "__main__": diff --git a/Mac/Modules/waste/wastesupport.py b/Mac/Modules/waste/wastesupport.py index 0f081a6e674..605f083a27b 100644 --- a/Mac/Modules/waste/wastesupport.py +++ b/Mac/Modules/waste/wastesupport.py @@ -24,15 +24,16 @@ from macsupport import * # Create the type objects WEReference = OpaqueByValueType("WEReference", "wasteObj") WEObjectReference = OpaqueByValueType("WEObjectReference", "WEOObj") -##CharsHandle = OpaqueByValueType("CharsHandle", "ResObj") -##Handle = OpaqueByValueType("Handle", "ResObj") StScrpHandle = OpaqueByValueType("StScrpHandle", "ResObj") -##TEStyleHandle = OpaqueByValueType("TEStyleHandle", "ResObj") RgnHandle = OpaqueByValueType("RgnHandle", "ResObj") EventModifiers = Type("EventModifiers", "h") FlavorType = OSTypeType("FlavorType") WESelector = OSTypeType("WESelector") +OptHandle = OpaqueByValueType("Handle", "OptResObj") +OptSoupHandle = OpaqueByValueType("WESoupHandle", "OptResObj") +OptStScrpHandle = OpaqueByValueType("StScrpHandle", "OptResObj") + WEStyleMode = Type("WEStyleMode", "h") WEActionKind = Type("WEActionKind", "h") WEAlignment = Type("WEAlignment", "b") @@ -154,7 +155,7 @@ class WEOObjectDefinition(GlobalObjectDefinition): # From here on it's basically all boiler plate... # Test types used for existence -execfile(TYPETESTFILE) +## execfile(TYPETESTFILE) # Create the generator groups and link them module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff)