Glade::PerlGenerate (GPG) Gtk-Perl-Glade UI builder and source generator
--------------------------------------------------------------------
# Copyright (c) 1999 - Dermot Musgrove <dermot.musgrove@virgin.net>
#
# This library is released under the same conditions as Perl, that
# is, either of the following:
#
# a) the GNU General Public License as published by the Free
# Software Foundation; either version 1, or (at your option) any
# later version.
#
# b) the Artistic License.
#
# If you use this library in a commercial enterprise, you are invited,
# but not required, to pay what you feel is a reasonable fee to the
# author  Dermot Musgrove <dermot.musgrove@virgin.net>
#
SEE ALSO
--------
Documentation/COPYING            # How we encourage copying
Documentation/Changelog          # History of the changes made
Documentation/FAQ                # Frequently asked questions
Documentation/INSTALL            # How to install the module
Documentation/Glade-Project.txt  # How Glade-Perl uses the Glade project options
Documentation/Gtk-Perl-Docs.html # Some pointers to Gtk-Perl documentation
Documentation/NEWS               # What is new in each version
Documentation/README             # This file
Documentation/ROADMAP            # Where will the module go?
Documentation/TODO               # What still must be done <sigh>

test.pl                          # Examples of user options

Also the example projects in Example/ directory

Glade::PerlGenerate is a module that will read a Glade-Interface XML 
file, build the UI and/or write the perl source to create the UI later and
handle signals. It also now creates an 'App' and an 'App subclass' that
you can edit.

It is made up of two main packages. Glade::PerlGenerate does the clever 
stuff and Glade::PerlRun has some run-time utilities that are needed 
by Glade::PerlGenerate and also by your generated modules.
There are several support modules for PerlGenerate that read the XML, build the 
UI, write the source and handle the project options.

There are several options
1) Simply show and run the interface. Any missing signal handlers are
   hijacked to show a simple message box.

2) Write several perl class files. 
   A) ProjectUI.pm   - the UI constructor class
   B) ProjectSIGS.pm - utilities and skeleton signal handlers
   C) Project.pm     - a base for your app that you can edit
   D) SubProject.pm  - an example subclass of your app that you can edit
   
   If you specifiy &STDOUT as the output filename all the generated code will 
   be written to STDOUT but of course you will have nothing to run later.

3) Do both of the above.

4) Generate (2 above) from Glade's 'Build' button.

EDITING
-------
The source code is generated with tabs replacing spaces at the rate specified 
by the user option 'tabwidth' (default 8) so your editor should be set to the
same tabwidth if the generated source is to look correct.

Read the file test.pl for some examples of how to use Glade::PerlGenerate.

REQUIREMENTS (what I use but older versions may well work)
-------------------------
Package     my version	available from
-------     ----------  --------------
Glade       0.5.6       http://glade.pn.org/
Glib/Gtk+   1.2.7       ftp://ftp.gimp.org/pub/gtk/
gnome-libs  1.0.58      Gnome mirrors or Gnome.org CVS 
                        If you use RPMs you will need gnome-libs-devel too but 
                        you probably worked this out while building Glade and 
                        Gtk-Perl :)
Perl-Gtk    0.7002      CPAN 
                        I actually use CVS version downloaded 20000301
Perl        5.004_04    CPAN
XML::Parser 2.27        CPAN

ACKNOWLEDGEMENTS
----------------
Doesn't the world seem a richer place with the beautiful contributions of 
these creative people? I have only mentioned the most obvious names and I
apologise to those who I have missed out.

Glade       Damon Chaplin <damon@karuna.freeserve.co.uk> Main author
            Martijn van Beers <martijn@earthling.net> Part of the source code 
            output, some popup menu functions, and the widget tree view.
GTK         Copyright - Peter Mattis, Spencer Kimball and Josh MacDonald
gnome-libs  Too many to list, check the AUTHORS file in the dist
Gtk-Perl    Kenneth Albanowski <kjahds@kjahds.com> and
            Paolo Molaro <lupus@lettere.unipd.it>
Perl        Larry Wall <larry@wall.org>, with the help of oodles of other folks
XML::Parser Larry Wall <larry@wall.org> wrote version 1.0.
            Clark Cooper <coopercl@sch.ge.com> picked up support, changed the 
            API for this version (2.x), provided documentation, and added
            some standard package features.

Information, advice and patches - Damon Chaplin, Robert Schwebel, Stas Bekman
Bug reports and testing - Tim Conrow, Frank de Lange

AUTHOR
------
Dermot Musgrove <dermot@glade.perl.connectfree.net>
Dermot Musgrove <dermot.musgrove@virgin.net>

Errors, omissions and general stupidity are all my fault - sorry.
