Fl_OpDesk -- FLTK Node Graph Widget for "Operation Boxes" --------------------------------------------------------- WHAT IS "Fl_OpDesk"? Fl_OpDesk is a 'node graph' or 'node tree' widget for FLTK 1.x. LICENSING Fl_OpDesk comes with complete free source code. Fl_OpDesk is available under the terms of the GNU Library General Public License that the FLTK library uses (ie. the LGPL with static exceptions). See COPYING.txt for more info. Contrary to popular belief, it can be used in commercial software, and statically linked! BUILD INSTRUCTIONS Tested under Linux, Mac OSX and Windows with fltk 1.3.x. To build the test programs and related Fl_OpDesk object files: make clean -- clean old files make -- build lib and test programs When built successfully, these test programs are created: test-OpDesk -- Simple test program test-app/test-app -- A "real world" example application that lets you connect different boxes that generates simple perl scripts. Shows how to derive custom widgets that lets you define data types and language specific constructs. The test-app directory is supposed to be an example of your own application, where all those files would be under your control, and they derive from the Fl_OpDesk widget API (namely OpConnect, OpButton, OpBox, and Fl_OpDesk). MAKEFILE NOTES The ./Makefile is for unix builds (linux + osx) The ./Makefile.MICROSOFT is used for Windows builds with the Microsoft VS 8.x compiler. Under Windows, there's a 'make.bat' that you can run by just typing 'make'. The 'make.bat' runs NMAKE with the proper flags to involve the Makefile.MICROSOFT file automatically. Check the Makefile's to see if you need to change any of the paths/compiler flags to work on your system. For instance, you may need to change FLTKDIR if it resides somewhere else on your system. So on all platforms including windows, just running 'make' should work. WHERE'S THE DOCUMENTATION? See documentation/html/index.html The docs are in ./documentation/html and are Doxyen based (comments in code), and can be re-generated by running 'make docs' or by simply running 'doxygen' while in ./documentation. The software comes distributed with pre-built docs. RELEASE NOTES/VERSION INFORMATION See ./CHANGES.txt BUGS? Send them to erco at seriss dot com AUTHOR Greg Ercolano, Aug 27 2009 ACKNOWLEDGEMENTS Thanks to Al Ibrahim for paying the bounty for me to finish writing this widget as an LGPL application. Without his financial stimulous and interest, I probably never would have gotten around to finishing this widget. Thanks to Reid Baker and the Cinema Graphics' "ShadeTree" software, which was co-designed by Reid Baker, Greg Ercolano, Rodney Iwashina and Liza Keith in 1995. Cinema Graphics closed its doors in 2004. Thanks to Reid Baker for giving his blessings for me to release this widget under the LGPL. This Fl_OpDesk widget is complete rewrite from the ground-up. It uses no code from the original ShadeTree software (which was implemented in Motif and OpenGL). However, the "look" was purposefully preserved. You can redefine this "look" if you like to include more modern effects by overloading the draw() method of these widgets.