diff options
Diffstat (limited to 'Mac/Modules/mlte/mltescan.py')
-rw-r--r-- | Mac/Modules/mlte/mltescan.py | 218 |
1 files changed, 109 insertions, 109 deletions
diff --git a/Mac/Modules/mlte/mltescan.py b/Mac/Modules/mlte/mltescan.py index 134bffa30e..adecb4fbec 100644 --- a/Mac/Modules/mlte/mltescan.py +++ b/Mac/Modules/mlte/mltescan.py @@ -12,33 +12,33 @@ OBJECTS = ("TXNObject", "TXNFontMenuObject") # ADD object typenames here def main(): - input = "MacTextEditor.h" - output = SHORT + "gen.py" - defsoutput = TOOLBOXDIR + LONG + ".py" - scanner = MyScanner(input, output, defsoutput) - scanner.scan() - scanner.gentypetest(SHORT+"typetest.py") - scanner.close() - print "=== Testing definitions output code ===" - execfile(defsoutput, {}, {}) - 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! ===" + input = "MacTextEditor.h" + output = SHORT + "gen.py" + defsoutput = TOOLBOXDIR + LONG + ".py" + scanner = MyScanner(input, output, defsoutput) + scanner.scan() + scanner.gentypetest(SHORT+"typetest.py") + scanner.close() + print "=== Testing definitions output code ===" + execfile(defsoutput, {}, {}) + 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_OSX): - def destination(self, type, name, arglist): - classname = "Function" - listname = "functions" - if arglist: - t, n, m = arglist[0] - if t in OBJECTS and m == "InMode": - classname = "Method" - listname = t + "_methods" - return classname, listname - - def writeinitialdefs(self): - self.defsfile.write(""" + def destination(self, type, name, arglist): + classname = "Function" + listname = "functions" + if arglist: + t, n, m = arglist[0] + if t in OBJECTS and m == "InMode": + classname = "Method" + listname = t + "_methods" + return classname, listname + + def writeinitialdefs(self): + self.defsfile.write(""" def FOUR_CHAR_CODE(x): return x false = 0 true = 1 @@ -55,89 +55,89 @@ kTXNFontSizeAttributeSize = 4 normal = 0 """) - def makeblacklistnames(self): - return [ - "TXNGetFontDefaults", # Arg is too difficult - "TXNSetFontDefaults", # Arg is too difficult - "TXNInitTextension", # done manually - - # Constants with funny definitions - "kTXNClearThisControl", - "kTXNClearTheseFontFeatures", - "kTXNDontCareTypeSize", - "kTXNDecrementTypeSize", - "kTXNUseCurrentSelection", - "kTXNStartOffset", - "kTXNEndOffset", - "kTXNQDFontNameAttributeSize", - "kTXNQDFontFamilyIDAttributeSize", - "kTXNQDFontSizeAttributeSize", - "kTXNQDFontStyleAttributeSize", - "kTXNQDFontColorAttributeSize", - "kTXNTextEncodingAttributeSize", - "kTXNUseEncodingWordRulesMask", - "kTXNFontSizeAttributeSize", - "status", - "justification", - 'TXNTSMCheck', # OS8 - ] - - def makeblacklisttypes(self): - return [ - "TXNTab", # TBD - "TXNMargins", # TBD - "TXNControlData", #TBD - "TXNATSUIFeatures", #TBD - "TXNATSUIVariations", #TBD - "TXNAttributeData", #TBD - "TXNTypeAttributes", #TBD - "TXNMatchTextRecord", #TBD - "TXNBackground", #TBD - "TXNFindUPP", - "ATSUStyle", #TBD - "TXNBackground_ptr", #TBD - "TXNControlData_ptr", #TBD - "TXNControlTag_ptr", #TBD - "TXNLongRect", #TBD - "TXNLongRect_ptr", #TBD - "TXNTypeAttributes_ptr", #TBD - - "TXNActionKeyMapperProcPtr", - "TXNActionKeyMapperUPP", - "TXNTextBoxOptionsData", - "TXNCountOptions", - "void_ptr", - ] - - def makerepairinstructions(self): - return [ - # TXNNewObject has a lot of optional parameters - ([("FSSpec_ptr", "iFileSpec", "InMode")], - [("OptFSSpecPtr", "*", "*")]), - ([("Rect", "iFrame", "OutMode")], - [("OptRectPtr", "*", "InMode")]), - - # In UH 332 some of the "const" are missing for input parameters passed - # by reference. We fix that up here. - ([("EventRecord", "iEvent", "OutMode")], - [("EventRecord_ptr", "*", "InMode")]), - ([("FSSpec", "iFileSpecification", "OutMode")], - [("FSSpec_ptr", "*", "InMode")]), - ([("TXNMacOSPreferredFontDescription", "iFontDefaults", "OutMode")], - [("TXNMacOSPreferredFontDescription_ptr", "*", "InMode")]), - - # In buffers are passed as void * - ([("void", "*", "OutMode"), ("ByteCount", "*", "InMode")], - [("MlteInBuffer", "*", "InMode")]), - - # The AdjustCursor region handle is optional - ([("RgnHandle", "ioCursorRgn", "InMode")], - [("OptRgnHandle", "*", "*")]), - - # The GWorld for TXNDraw is optional - ([('GWorldPtr', 'iDrawPort', 'InMode')], - [('OptGWorldPtr', '*', '*')]), - ] - + def makeblacklistnames(self): + return [ + "TXNGetFontDefaults", # Arg is too difficult + "TXNSetFontDefaults", # Arg is too difficult + "TXNInitTextension", # done manually + + # Constants with funny definitions + "kTXNClearThisControl", + "kTXNClearTheseFontFeatures", + "kTXNDontCareTypeSize", + "kTXNDecrementTypeSize", + "kTXNUseCurrentSelection", + "kTXNStartOffset", + "kTXNEndOffset", + "kTXNQDFontNameAttributeSize", + "kTXNQDFontFamilyIDAttributeSize", + "kTXNQDFontSizeAttributeSize", + "kTXNQDFontStyleAttributeSize", + "kTXNQDFontColorAttributeSize", + "kTXNTextEncodingAttributeSize", + "kTXNUseEncodingWordRulesMask", + "kTXNFontSizeAttributeSize", + "status", + "justification", + 'TXNTSMCheck', # OS8 + ] + + def makeblacklisttypes(self): + return [ + "TXNTab", # TBD + "TXNMargins", # TBD + "TXNControlData", #TBD + "TXNATSUIFeatures", #TBD + "TXNATSUIVariations", #TBD + "TXNAttributeData", #TBD + "TXNTypeAttributes", #TBD + "TXNMatchTextRecord", #TBD + "TXNBackground", #TBD + "TXNFindUPP", + "ATSUStyle", #TBD + "TXNBackground_ptr", #TBD + "TXNControlData_ptr", #TBD + "TXNControlTag_ptr", #TBD + "TXNLongRect", #TBD + "TXNLongRect_ptr", #TBD + "TXNTypeAttributes_ptr", #TBD + + "TXNActionKeyMapperProcPtr", + "TXNActionKeyMapperUPP", + "TXNTextBoxOptionsData", + "TXNCountOptions", + "void_ptr", + ] + + def makerepairinstructions(self): + return [ + # TXNNewObject has a lot of optional parameters + ([("FSSpec_ptr", "iFileSpec", "InMode")], + [("OptFSSpecPtr", "*", "*")]), + ([("Rect", "iFrame", "OutMode")], + [("OptRectPtr", "*", "InMode")]), + + # In UH 332 some of the "const" are missing for input parameters passed + # by reference. We fix that up here. + ([("EventRecord", "iEvent", "OutMode")], + [("EventRecord_ptr", "*", "InMode")]), + ([("FSSpec", "iFileSpecification", "OutMode")], + [("FSSpec_ptr", "*", "InMode")]), + ([("TXNMacOSPreferredFontDescription", "iFontDefaults", "OutMode")], + [("TXNMacOSPreferredFontDescription_ptr", "*", "InMode")]), + + # In buffers are passed as void * + ([("void", "*", "OutMode"), ("ByteCount", "*", "InMode")], + [("MlteInBuffer", "*", "InMode")]), + + # The AdjustCursor region handle is optional + ([("RgnHandle", "ioCursorRgn", "InMode")], + [("OptRgnHandle", "*", "*")]), + + # The GWorld for TXNDraw is optional + ([('GWorldPtr', 'iDrawPort', 'InMode')], + [('OptGWorldPtr', '*', '*')]), + ] + if __name__ == "__main__": - main() + main() |