
The Gt Library - a widget library for X Windows.

$Ident: This file is part of the 'Gt-library' 1.0.0 $
$Copyright: (C) 1997 by Gran Gustafsson $

-------------------------------------------------------------------------

Why was this library made?
--------------------------
I started to program this library because I felt a need for a free GUI
library that had most of the basic widgets and automatic layout
management. I looked around some on the Internet to try and find an
existing library (I didn't want to invent the wheel again if I could
avoid it) but as usual no existing library had all those things I wanted.


What is this library?
---------------------
The Gt library ended up being a collection of C++ classes that handle
everything from fonts and windows to buttons and text viewers. The library
is divided in two parts: a set of low-level classes that encapsulates X
resources in C++ classes for ease of use and then a set of high-level
classes that provide widgets (a window with functionality) to build GUI's
with. The Gt library is based directly on the Xlib library to reduce
overhead, gain speed and decrease the size of programs.


How to use to library?
----------------------
Well, this is a problem. There is very little documentation about the
classes and how they are used. The source to the demo will show how to do
some basic programming with the library but it is far from enough. Anyway
if you like to examine sources and obscure examples all you have to do is
check out the INSTALL text and compile the library. A small demo will be
compiled with it to show some of the classes of the library.

More documentation about the use of the library is on it's way.


Distribution
------------
To help you around the directories of this distribution here is a short
description of them:

* base
  This directory contain the low-level classes and some extra files to
  replace missing or broken functions.

* defaults
  This directory contain (currently only one) default resources files to be
  copied to the global application resource directory as "GtDefaults".

* docs
  All available documentation is in this directory.

* examples
  Currently one example of some of the GUI classes in the library is located
  in this directory. More will be created later I hope.

* extra
  This directory contain high-level GUI classes that "glue" together other
  classes to form complex widgets. Some special purpose high-level classes
  is also contained in this directory.

* include
  All include files for the classes in the library is located in this
  directory.

* tests
  This directory contain a few simple tests of widgets that was (is) used
  during development of widgets. They are not real examples and the code is
  quick and dirty but since there is a lack of documentation they might be
  of some limited use for now.

* utils
  This directory contain two utility programs that I use to handle tag
  identifiers and to convert the include files for installation.

* widgets
  This directory contain all the basic high-level GUI classes.


Free Software
-------------
I have put quite a bit of work into this library but I believe in the
notion of free software (and I did write it to be free) and therefore I
release it with a rather liberal license (see the LICENSE text file). To
get something for the work I would be very happy (and flattered) if you
would put a small notice in your program that you are using the Gt library
(if that is what you do :-). You are not force to do it under any
circumstances but I would appreciate it. Any way regardless of notice
or not an e-mail is also nice if you have any thoughts about the
Gt library.


-------------------------------------------------------------------------

 Gran Gustafsson
 gorgus@algonet.se
