summaryrefslogtreecommitdiff
path: root/README
blob: 6a2b7c3c3f7acbaa44cf856946c71e7a20041528 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
PyGTK
=====
Author: James Henstridge <james@daa.com.au>


This archive contains modules that allow you to use gtk in Python
programs.  At present, it is a fairly complete set of bindings.
Despite the low version number, this piece of software is quite
useful, and is usable to write moderately complex programs.  (see the
examples directory for some examples of the simpler programs you could
write).

If you have any enhancements or bug reports, please file them in
bugzilla at:
  http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-python&component=pygtk

If you have a patch, file the bug first and then use the "create new
attachment" link on the bug's info page.  My preferred format for
patches is unified diff format (ie. diff -u).  Please don't send me
diffs which don't have any context, as these make it very difficult to
see what the patch does.


New Versions
============

New versions of this package can be found at:
  ftp://ftp.gtk.org/pub/gtk/python/
  http://ftp.gnome.org/pub/GNOME/sources/pygtk/


Mailing list
============

There is a mailing list for pygtk.  You can subscribe to it through
the web interface:
  http://www.daa.com.au/mailman/listinfo/pygtk


Copyright Information
=====================

This software is covered by the GNU Library General Public Licence
(version 2, or if you choose, a later version).  Basically just don't
say you wrote bits you didn't.


Compilation
===========

This archive contains a single C module called gtkmodule.  It contains
an almost direct mapping of the functions in GTK including GTK signal
handling, and the gtk_object_new/gtk_object_set commands.  This
version REQUIRES gtk+-1.2.6 or later, as it includes support for
features not found in previous versions, and there are
incompatibilities between versions.  Also if you want the GdkImlib
extension, you must have Imlib version 1.8 or greater.  I recommend
getting the latest stable versions of these libraries before compiling
pygtk, as it will make your system more stable.

Parts of this module are automatically generated from the .defs file
in the generate directory, by the two python scripts in that
directory.

To compile gtkmodule, first run "./configure" from the base directory
of the distribution.  It requires that you have python in the path,
and python has been installed properly.  If python is not in the path,
you could try running "PYTHON=/subdir/python ./configure".  This
should generate the Makefile from the file Makefile.in.

Now you should be able to run "make" to compile the module.  Now you
should install the files.  I have provided an install target to the
makefile, so you should be able to just type "make install".  It
installs to the site-packages directory (using prefix and exec_prefix
where appropriate).  It also compiles .pyc and .pyo files from the
python code.

If you have trouble with building or installing any of the code, please
tell me -- it is the only way I can fix the problem.  If you do mail me,
please put something sensible in the subject line so I can tell what it
is about.


Upgrading
=========

The API has changed a fair bit compared to the 0.6.x releases of pygtk
in response to feedback from the mailing list.  The main changes are:
  - no low level procedural interface.  The extension now implements
    the object oriented API directly, rather than layering it on top
    of a procedural API.
  - class names have been shortened.  Eg. instead of gtk.GtkWindow, we
    now have gtk.Window.
  - GDK classes and functions have been moved to the "gtk.gdk" module.
  - the GTK and GDK modules have been removed, with their constants
    being moved into the "gtk" and "gtk.gdk" modules.


Tests
=====

After having compiled and installed pygtk, you may want to test them.
There are a number of example programs available in the examples/
subdirectory.


Contacting the Author
=====================

You can contact me at the email address <james@daa.com.au>.  I try to
answer my email quickly, but occasionally there will be a bit of a
delay.  If you have an idea for a way to extend GTK, have found a
problem with the code, or would like to contribute some code, please
feel free to contact me.