Commit graph

39 commits

Author SHA1 Message Date
Jack Jansen
a942b9931c Moved gensuitemodule from Mac/scripts to Lib/plat-mac. Documentation
remains to be done.
2003-03-29 23:04:01 +00:00
Jack Jansen
1269be5f4a - Added an is_scriptable method to test applications for having
a scripting dictionary. Made up by me, not guaranteed to be correct
  (and, indeed, Internet Explorer does not seem to play by the book).
- Added the interactive main program as a separate routine, so it
  can be called from the IDE later. Also made it less interactive by
  default: only the input app and output package folder are asked for.
2003-03-29 22:54:00 +00:00
Jack Jansen
8307e028b2 Sometimes a class is used as a base class of itself. Obviously there's
something I don't understand, but for now ignore this.

Output the file name such that it cannot contain non-ascii characters.
2003-03-29 00:08:24 +00:00
Jack Jansen
00c348328b Sigh: didn't catch all lists that needed to be sorted. 2003-03-28 23:37:05 +00:00
Jack Jansen
03b9c91aff - Sort various lists (list of events, OSA-classes, etc) before generating
code. This makes it a lot easier to compare the generated code for two
different versions of the suite.
- Various tweaks to the code to generate suites without looking at resource
files manually.
2003-03-28 22:04:22 +00:00
Jack Jansen
0e85e7a636 If GetAppTerminology fails (which seems to be the usual case on OSX?)
we try to manually launch the application and send it an ascr/gdte
event to get its terminology.
2003-03-26 23:14:44 +00:00
Jack Jansen
7cb016db80 Not all objects have an _propdict and _privpropdict, so cater for that. 2003-03-23 22:05:53 +00:00
Jack Jansen
59cdbce9b1 Got rid of the "enum not found" interaction, and added code to allow
overriding the creator signature.
2003-03-21 16:28:09 +00:00
Jack Jansen
714caa0c35 Allow gensuitemodule to be run non-interactively, from the OSX command
line. 90% of the work is done, missing enums still cause a dialog to appear.
2003-03-21 16:07:39 +00:00
Jack Jansen
7e0bc112b8 Patch 702620 by Donovan Preston: Fix AE inheritance. 2003-03-21 12:04:19 +00:00
Jack Jansen
fa1bf1c518 First try to use the OSATerminology module to get the terminology
resources before reverting to manually reading the resources.

Unfortunately there is still a bug in here somewhere: it doesn't work
for all applications.
2003-03-06 23:04:38 +00:00
Jack Jansen
df976caa34 Use new file dialogs. 2003-01-26 20:35:47 +00:00
Jack Jansen
7ff034b65b Fixed incorrect logic in determining whether we should initialize
the classes' attribute list.
2002-08-07 15:52:44 +00:00
Jack Jansen
21f675826e - If an OSA identifier is a Python reserved word we now append an _
in stead of prepending it, which messes up "import * from".
- A few ascii()s added again.
- Changed the getbaseclasses a little, but it still isn't perfect.
2002-08-07 15:44:53 +00:00
Jack Jansen
2f7f8c4a64 Don't be over-enthusiastic with the ascii() calls: we don't need it if
the result passes through backticks.
2002-08-07 15:05:42 +00:00
Jack Jansen
8b77767094 Donovan Preston's patch #538395, with some mods by me.
This patch makes inheritance for OSA classes work. The implementation is a
bit convoluted, but I don't immedeately see a simpler way of doing it.

I added calls to ascii() everywhere we output strings that may contain
non-ascii characters (Python has gotten very picky since the encoding
patch:-).

I also removed Donovan's different way of opening resource files: I don't
seem to need it.
2002-08-07 14:49:00 +00:00
Jack Jansen
18983536dc First part of fix for #493826: if 'errn' key exists in return value this doesn't necesarily signal an error, only if the value is non-zero it does. This
does not correspond with my reading of the documentation, but the OSX Finder can return 'errn'=0, and it knows better than me:-)

Bugfix candidate.
2002-04-23 21:03:21 +00:00
Jack Jansen
4092606d6b Modified to allow it to run in MachoPython in a reasonable way. It still
needs a decent commandline interface, though.
2002-03-30 23:43:04 +00:00
Jack Jansen
b2ecc2c6c8 Get rid of keyword list and use keyword.iskeyword() function (which I wasn't aware of previously). 2002-01-24 22:44:07 +00:00
Jack Jansen
bdd6e705ae "yield" is also a keyword. Spotted by Neal Norwitz. 2002-01-24 12:36:51 +00:00
Jack Jansen
8b0ee24e22 (Much) better list of Python keywords, supplied by Michael J. Barber. 2002-01-23 22:49:48 +00:00
Jack Jansen
7ebcbf5cf9 Identify() enum values. This was changed in 1.14, but I don't think it is a good idea. 2002-01-22 23:24:03 +00:00
Jack Jansen
5a6fdcd371 Import the MacOS toolbox modules from the Carbon package. 2001-08-25 12:15:04 +00:00
Fred Drake
79e75e1916 Use string.ascii_letters instead of string.letters (SF bug #226706). 2001-07-20 19:05:50 +00:00
Jack Jansen
9d6d2c0c97 Only output the code to alias properties if the names aren't the same. 2000-08-22 20:34:35 +00:00
Jack Jansen
6aa92c5093 - identify() enum names.
- don't identify() enum values.
- make aetools.Error available in the package module.
2000-08-20 21:59:03 +00:00
Jack Jansen
2eda24475c Enums we cannot find are set to None, and enumsubst understands this (no substitution done). This is need for what I think are bugs in the Finder aete resources (some events use unknown enums). 2000-08-20 19:42:52 +00:00
Jack Jansen
12b2b76608 Fixed event inheritance code (which didn't work at all).
Do two passes over the suites so we can figure out dependencies for enums and such. The manual method was getting too cumbersome for Finder suites.
2000-08-20 19:30:56 +00:00
Jack Jansen
60762cb920 Generate packages in stead of separate modules. The package main module imports everything, it knows about the app signature, suites can extend standard suites, and lots more. Automatically finding declarations in other suites TBD. 2000-08-17 22:11:45 +00:00
Jack Jansen
34d11f0670 Fixed multi-arg appends. 2000-03-07 23:40:13 +00:00
Jack Jansen
6654422407 Generate class, property and comparison code (finally!). The resulting
code isn't ideal yet: xxx.Window(1).Paragraph(3).font will only work
if all the classes and properties are declared in the same suite, but
at least font(Paragraph(3, Window(1))) always works.
1997-08-08 14:49:02 +00:00
Jack Jansen
977fbf271e raise aetools.Error in stead of MacOS.Error on server-generated errors 1996-09-20 15:29:59 +00:00
Jack Jansen
a2408e9d6a Fixed code generated for an argument of type **** 1996-04-16 14:36:46 +00:00
Jack Jansen
32cb80cea8 Removed addpack calls for toolbox modules, re-binhexed resources (sigh) 1996-03-20 16:15:35 +00:00
Jack Jansen
18a99f5597 Changed creator from PYTH to Pyth 1996-03-18 13:35:00 +00:00
Jack Jansen
732151473b Fixed bug in optional argument error checking (and generated all
suites anew).
1995-10-09 23:09:23 +00:00
Jack Jansen
8426477bbb Modified/recreated to use keyword arguments 1995-10-03 14:35:58 +00:00
Jack Jansen
9d19a914d0 Added prompt to getfile dialog
Renumbered resources
1995-08-14 12:14:55 +00:00
Jack Jansen
5ccd826aab Gensuitemodule generates python classes from aete/aeut resources
test_suite is a tiny test program for such a generated class
1995-07-17 11:43:20 +00:00