RE: wxWindows finally compiled
- Posted by Matthew Lewis <matthewwalkerlewis at YAHOO.COM> Feb 19, 2003
- 398 views
> From: jbrown1050 at hotpop.com [mailto:jbrown1050 at hotpop.com] > wxWindows has finished compiling. > > I have used nm and gotten the lists, of mangled and demangled > symbols, needed > to port wxWindows to Euphoria. Excellent. I've updated my page with what I've done so far. I've simplified a lot of stuff, and I think come up with a decent way to make this whole cross platform deal work reasonably well. I also included a couple of little utilities I wrote (one requires Kat's strtok 2.1) to wrap the constants for import. They're called wrap.exw and extract.exw. wrap puts them into the form you see in wxDefsMSW.ew, assuming they're in a tab delimited file. If you use this, you'll probably have to fiddle with it depending on how the unmangled names are given. extract pulls out all the imports for a given class, and writes them to extract.txt, where it's easy to cut and paste. You'll need to write a .eu file corresponding to all the .ew files, which should include all constant definitions, platform dependent code, and then should include the respective .e file. Of particular interest, I think, is the create() function in wxEuphoria.e. It allows for flexible creation of objects, so that it's not necessary to define a special create routines for each object, unless you use optional parameters (see wxWindow: new_wxWindow, new_wxFrame ). Also, the initialization stuff in cplusplus.e needs to be fixed. Since its pretty small, I think changing from constants to atoms, and using platform() in an if statement should be sufficient. There is no documentation yet, as I'd like to get some additional input from others on how to proceed before documenting all this stuff. Then, I think I'll start porting the win32lib examples, wrapping additional classes along the way. Also, I think I may want to change the way classes are defined slightly. I'm thinking it's not necessary to define the pointer to the vtbl and stuff. Matt Lewis http://www14.brinkster.com/matthewlewis/projects.html