README.in 5.54 KB
Newer Older
1
General Information
2 3
===================

4 5 6 7
This is GTK+ version @GTK_VERSION@. GTK+ is a multi-platform toolkit for
creating graphical user interfaces. Offering a complete set of widgets,
GTK+ is suitable for projects ranging from small one-off projects to
complete application suites.
Owen Taylor's avatar
Owen Taylor committed
8 9 10

GTK+ is free software and part of the GNU Project. However, the
licensing terms for GTK+, the GNU LGPL, allow it to be used by all
11 12
developers, including those developing proprietary software, without any
license fees or royalties.
13 14 15 16 17 18 19

The official ftp site is:
  ftp://ftp.gtk.org/pub/gtk

The official web site is:
  http://www.gtk.org/

20 21
Information about mailing lists can be found at
  http://www.gtk.org/mailinglists.html
22 23 24 25 26 27

Installation
============

See the file 'INSTALL'

Owen Taylor's avatar
Owen Taylor committed
28 29
Release notes
=============
30

Matthias Clasen's avatar
Matthias Clasen committed
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
* GTK+ 2.6 supports clipboard persistency. To make use of this feature,
  a clipboard manager following the specification at
  http://www.freedesktop.org/wiki/Standards_2fclipboard_2dmanager_2dspec
  must be running. A sample implementation of such a clipboard manager
  is available at 
  http://people.imendio.com/andersca/archives/clipboard-manager-0.3.tar.gz

* The icon theme code in GTK+ 2.6 follows the icon theme specification.
  Therefore, icon themes are looked for in $HOME/.icons, $XDG_DATA_HOME/icons, 
  $XDG_DATA_DIRS/icons and /usr/share/pixmaps.

* The icon theme code in GTK+ 2.6 can make use of mmap()able cache files
  to avoid a lot of disk searching overhead. GTK+ includes a utility named
  gtk-update-icon-cache to generate these cache files. For further details,
  see the gtk-update-icon-cache man page or the GTK+ documentation.

* GTK+ uses a technique involving macros for reducing the amount of PLT
  redirections which has the side effect that the names of internally used
  GLib functions are prefixed with IA__. The g_return_if_fail() macros
  strip this prefix away, but it will show up e.g. in a debugger.

* The linux framebuffer GDK backend included in the gdk/linux-fb of GTK+
  is provided on a as-is basis and has not been tested at all. No
  guarantees about the degree of workingness or about future
  compatibility are provided.

* The following functions have been deprecated in GTK+ 2.6:
  gdk_pango_context_set_colormap
  gtk_cell_renderer_editing_canceled

Owen Taylor's avatar
Owen Taylor committed
61 62 63 64 65
* The new GtkFileChooser widget emphasizes simplicity and thus does 
  not provide a navigation entry by default when opening files. 
  Experienced command line users will likely want to make heavy use of
  the location dialog brought up by the Control-L key shortcut.

66
* The GTK+ libraries use an '_' prefix to indicate private symbols that
Owen Taylor's avatar
Owen Taylor committed
67 68 69
  must not be used by applications. On some platforms, symbols beginning 
  with prefixes such as _gtk, _gdk, and _pango will be exported
  from the library, on others not. In no case can applications
Matthias Clasen's avatar
Matthias Clasen committed
70 71 72
  use these private symbols. In addition to that, GTK+ 2.6 makes several
  symbols private which were not in any installed header files and
  were never intended to be exported.
73 74 75 76 77 78 79 80

* The gdk_pixbuf_xlib library included in the contrib/ directory of GTK+
  is provided on a as-is basis and has not been tested at all. No
  guarantees about the degree of workingness or about future
  compatibility are provided.

* The assumption of GLib and GTK+ by default is that filenames on the
  filesystem are encoded in UTF-8 rather than the encoding of the locale;
Owen Taylor's avatar
Owen Taylor committed
81
  the GTK+ developers consider that having filenames whose interpretation
82 83 84
  depends on the current locale is fundamentally a bad idea.

  If you have filenames encoded in the encoding of your locale, then
Owen Taylor's avatar
Owen Taylor committed
85
  you may want to set the G_FILENAME_ENCODING environment variable:
86
  
Owen Taylor's avatar
Owen Taylor committed
87 88
   G_FILENAME_ENCODING=@local
   export G_FILENAME_ENCODING
89

Matthias Clasen's avatar
Matthias Clasen committed
90
  (Earlier versions of GLib 2.x required a different environment variable
Owen Taylor's avatar
Owen Taylor committed
91 92
  setting; G_BROKEN_FILENAMES=1 to achieve the same effect; this 
  is still supported, but G_FILENAME_ENCODING is preferred.)
Matthias Clasen's avatar
Matthias Clasen committed
93
  Best integration of GTK+ 2.6 with the environment is achieved by 
94 95
  using a UTF-8 locale.

96 97 98
How to report bugs
==================

99 100 101
Bugs should be reported to the GNOME bug tracking system.
(http://bugzilla.gnome.org, product gtk+.) You will need to create an
account for yourself.
102 103 104
  
In the bug report please include:
  
105 106 107 108 109 110 111 112 113 114
* Information about your system. For instance:

   - What operating system and version
   - What version of X
   - For Linux, what version of the C library

  And anything else you think is relevant.

* How to reproduce the bug. 

115 116 117 118 119
  If you can reproduce it with the testgtk program that is built in the
  gtk/ subdirectory, that will be most convenient.  Otherwise, please
  include a short test program that exhibits the behavior.  As a last
  resort, you can also provide a pointer to a larger piece of software
  that can be downloaded.
120

121 122
* If the bug was a crash, the exact text that was printed out when the
  crash occured.
123

124 125 126 127
* Further information such as stack traces may be useful, but is not
  necessary. If you do send a stack trace, and the error is an X error,
  it will be more useful if the stacktrace is produced running the test
  program with the --sync command line option.
128 129 130 131

Patches
=======

132 133 134
Patches should also be submitted to bugzilla.gnome.org. If the patch
fixes an existing bug, add the patch as an attachment to that bug
report.
135

136 137
Otherwise, enter a new bug report that describes the patch, and attach
the patch to that bug report.
138

139 140 141
Bug reports containing patches should include the PATCH keyword in their
keyword fields. If the patch adds to or changes the GTK programming
interface, the API keyword should also be included.
142
  
143
Patches should be in unified diff form. (The -u option to GNU diff.)