Hello! Welcome to the native OS/2 PM port of FLTK, in progress. For the actual FLTK project's home page, see: http://www.fltk.org Feel free to join the FLTK discussion on newsgroup fltk.general on the news server news.easysw.com. I've hacked together makefiles that somewhat resemble FLTK's distribution, but have a few tweaks in them. The goal is to get it working now, and make it pretty later. The directory structure is a subset of the actual FLTK distribution; it's just been trimmed to the bare essentials to get a library built on OS/2. The source has lots of #ifdefs peppered throughout for WIN32. I added an #elif after each for OS2PM. So if you grep for OS2PM, you'll see where I have been doing the porting work. There a few files ending in "os2" that are particular to OS/2; you will find similar ones ending in "win32". I've essentially followed the Win32 port's philosophy, naming schemes, etc. The things you build are in ./src and ./test. ./src is the main source code directory. It contains Makefile (for gcc/pgcc) and Makefile.omf (for IBM Visual Age C++). Invoke 'make' or 'nmake -f Makefile.omf' and you're off. You will eventually create the a.out library in ../lib/fltk.a (when using Makefile) or the OMF library ../lib/fltk.lib (when using Makefile.omf). ./test is the directory containing test programs. Depending on which library you have built (the a.out verison using Makefile, or the OMF version using Makefile.omf) you will be using a similar makefile here. The catch is... in ./test, both makefiles are in 'make' format. So, even if you want to build OMF test programs, you still invoke 'make -f Makefile.omf'. Many of the test programs actually work. Ones that do not work at all are ones with Open GL support (I just don't have it installed on my machine; maybe they do after all!) and ones that contain bitmaps. Programs that try to use double-buffering don't actually do so yet. And the keyboard support is still very raw and unfinished. Test programs I've been running lately to work on things are: arc.exe boxtype.exe clock.exe label.exe minimum.exe pack.exe valuators.exe These programs pretty much work. Others likely have more or less severe problems yet. Run 'em all and see what works... and see where all the bugs are! I don't need any help with reporting bugs, thanks... but if you've found where a bug actually is in the code, I want to know all about it! Until we get this stuff in CVS, I'll provide and keep a 'master' copy of the code for anyone else interested. Things that outright don't work yet: - Double buffering - Bitmaps - Imbedded windows (see line_style.exe in test) - Dismissing dialogs (see multiple windows, below) Things that work partially: - Keyboard - Input fields (text highlighting) - Clipping - I still need to work out how they push and pop clipping rectangles on their stack... OS/2 doesn't let you modify the current clipping rectangle - Multiple windows (see clock.exe in test... you can't kill one of the clocks until both are actually shut down) - Fonts sometimes get clipped by one pixel on the right Things that work pretty well: - Drawing shapes (partial arcs still contain a little rounding error - see FL_ROUND_UP_BOX and FL_ROUND_DOWN_BOX in boxtype.exe) - Everything else Send comments, suggestions, code fixes, etc. to david@attglobal.net or schmidtd@my-deja.com. There's lots of easy bugs/missing functions yet to go after - so get in there and have fun! Thanks!