Commit Graph

10 Commits

Author SHA1 Message Date
Jack Jansen 96cebde909 Added PEP253 support to most Carbon modules. This isn't complete yet:
some of the more compilcated cases (CF, Res) haven't been done yet. Also,
various types should inherit from each other (anything with an as_Resource
method should be a Resource subtype, the CF types should become one family).
2002-12-03 23:40:22 +00:00
Jack Jansen dbd5701d73 Converted the Carbon modules to use PEP252-style objects, with
descriptors in stead of manual getattr hooks to get at attributes
of the objects.

For Qd I have in stead gotten rid of most of the attribute access
in favor of the carbon-style accessor methods (with the exception
of visRgn, to be done later), and of the Carbon.Qd.qd global object,
for which accessor functions are also available.

For List I have fixed the fact that various methods were incorrectly
generated as functions.

CF is untouched: PEP252 doesn't allow "poor-mans-inheritance" with
basechain, so it will have to wait for PEP253 support.
2002-11-29 23:40:48 +00:00
Jack Jansen 714d7268d5 Weaklink most toolbox modules, improving backward compatibility. Modules will no longer fail to load if a single routine is missing on the curent OS version, in stead calling the missing routine will raise an exception.
Should finally fix 531398. 2.2.1 candidate.
2002-03-25 00:32:17 +00:00
Jack Jansen fd064863eb Shut up many more gcc warnings. 2001-09-05 10:31:52 +00:00
Jack Jansen 77105a960b The MacOS toolbox modules have acquired an _ in front of their name. Normal usage is through a wrapper module (without underscore) which lives in the Carbon package. 2001-08-23 13:51:46 +00:00
Jack Jansen fa77e1a1b1 Lots more Carbon/Carbon.h includes, new UPP routine names, function prototypes. Most toolbox modules now compile, link and import in MacOSX-MachO python. 2001-05-22 21:56:42 +00:00
Jack Jansen 0e04eecdbf First step in porting MacPython modules to OSX/unix: break all references between modules except for the obj_New() and obj_Convert() routines, the PyArg_Parse and Py_BuildValue helpers.
And these can now be vectored through glue routines (by defining USE_TOOLBOX_OBJECT_GLUE) which will do the necessary imports, whereupon the module's init routine will tell the glue routine about the real conversion routine address and everything is fine again.
2001-05-17 21:58:34 +00:00
Jack Jansen 9d8b96c850 pymactoolbox.h contains protoypes for all externally visible toolbox module
functions. Include it in stead of duplicating the declarations everywhere. Also
cleaned up toolbox module exports, and got rid of resNotFound error.
2000-07-14 22:16:45 +00:00
Jack Jansen 6dc8ce9108 Added PutPixMapBytes() and GetPixMapBytes() functions that allow getting at
pixmap data.
Added an as_GrafPort() method to be able to use a GWorld as argument to
routines that expect a GrafPort.
2000-03-03 16:03:06 +00:00
Jack Jansen a4e6ae6667 Offscreen bitmap support, first stab. PixMaps are still treated as ordinary
handles, not fullblown python objects, and UpdateGWorld returns a new GWorld
object in stead of modifying the existing one.
1999-03-07 23:11:21 +00:00