## YAAF Toolkit Overview

> This contains the documentation set for the YAAF Toolkit.

> YAAF is a library and a collection of utilities which facilitate creating cross-platform applications. The YAAF library itself is a collection of C++ objects which encapsulates the user interface API for the Macintosh, Microsoft Windows and X Windows in a portable way. The toolkit also includes the YAAF Constructor, an application which allows you to graphically lay out windows and views, and RCompile, a compiler which allows you to compile resources into a C++ source file for Unix.

## Components

> As noted above, the YAAF Tookit consists of several components:

- YAAF Library

> The YAAF Library is the C++ library which encapsulates the GUI APIs of the Apple Macintosh, Microsoft Windows and X Windows in a portable way.

- YAAF Constructor

> The YAAF Constructor allows you to interactively edit various resources, such as the view resource. The YAAF Constructor is not complete; menu resources and graphical resources still need to be edited elsewhere.

- RCompile

> The RCompile utility is a command line utility which is used to compile resources into a .CPP file for the X version of the YAAF Library.

- xt - a text editor

> This small sample program gives an example on how to build a text editor using the YAAF library. Versions have been successfully compiled under the Macintosh, Microsoft Windows 95/NT, RedHat Linux for Intel, and MkLinux.

## Licenses

> Different components of the YAAF toolkit are licensed under different versions of the GNU General Public License. The reason for this is to maximize the usability of the YAAF Toolkit in both proprietary and open source applications, while keeping the YAAF Toolkit itself free software.

> The YAAF Library itself is licensed using the GNU Library General Public License. The intent of this license is to permit the incorporation of the YAAF Library into a proprietary application, yet keep the YAAF Library as free software.

> The YAAF Constructor, and the RCompile utility, on the other hand, are both licensed using the GNU General Public License. You may modify either the YAAF Constructor or the RCompile utility, but any modifications you make must also be "free software" as per the terms of the GNU GPL.

> XT, on the other hand, is public domain. By placing XT source kit into the public domain (but based on the YAAF Library, which is protected by the GNU LGPL), you may freely incorporate elements of XT into your own proprietary, GNU or public domain offering. By being in the "public domain", the source kit to XT can be freely used and abused as you wish without any restrictions whatsoever.

## Redistribution

> Because the different components of the YAAF Toolkit are licensed variously under the GNU GPL or LGPL licenses, you may freely redistribute this package as long as you observe the requirements of the GPL and LGPL licenses. You may also redistribute the different components separately, though I wouldn't advise this. (I mean,without the YAAF Constructor, it's going to be a pain to build a YAAF appliction, right?)

Copyright and Contact Information

> YAAF Library - Yet Another Application Framework
> ©1997, 1998 William Edward Woody
> Licensed under the GNU Library General Public License

> YAAF Constructor - RAD for the YAAF Library
> ©1998 William Edward Woody
> Licensed under the GNU General Public License

> rcompile - A resource compiler for Un*x
> ©1997, 1998 William Edward Woody
> Licensed under the GNU General Public License

> xt - A simple text editor using YAAF
> Released into the public domain by William Edward Woody

> > William Edward Woody
> > The PandaWave
> > 1545 Ard Eevin Avenue
> > Glendale, CA 91202 USA

> > woody@pandawave.com
> > http://www.pandawave.com/yaaf