GTK+-2.0.0 is now available for download at:
ftp://ftp.gtk.org/pub/gtk/v2.0/ along with new versions of the 3 base libraries, GLib, Pango and ATK. Release notes are available at: http://www.gtk.org/gtk-2.0.0-notes.html What is GTK+ ============ 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 tools to complete application suites. GTK+ has been designed from the ground up to support a range of languages, not only C/C++. Using GTK+ from languages such as Perl and Python (especially in combination with the Glade GUI builder) provides an effective method of rapid application development. Earlier versions of GTK+ have been used in a wide variety of applications, including the GNOME desktop and the GNU Image Manipulation Program (GIMP). Version 2.0 of GTK+ offers the same flexibility that made GTK+-1.0 and GTK+-1.2 so popular, and adds a much enhanced feature set, increased ease of programming for application developers, and ease of use for end users. 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 developers, including those developing proprietary software, without any license fees or royalties. GTK+ is the only 100% free-of-cost open source industrial-strength GUI toolkit available today. GTK+ 2.0 is the foundation of the GNOME 2.0 desktop, to be released later this year. GTK+ 2.0 will be available in standard installations of Solaris, Linux, and HP-UX. What's new in GTK+-2.0 ====================== The huge feature set of GTK+ 2.0 more than doubles the size of GTK+ 1.2, moving from 230,000 lines of code to 620,000 lines of code. Over the last three years a line of code was added to GTK+ every 5 minutes. Nonetheless a statically-linked version of gtk-demo can still fit on a 1.4M floppy disk. Much of the new code for GTK+ 2.0 appears in the base libraries such as Pango. Nonetheless the changes to GTK+ itself are extensive. gdk-pixbuf: The gdk-pixbuf (GDK pixel buffer) library for image loading and manipulation is now integrated into GTK+. gdk-pixbuf supports fast MMX-accelerated image scaling. Enhancements over the standalone gdk-pixbuf include support for animated images, more image formats, greater robustness/error-handling, and saving images to files. GDK: Enhancements to the GDK library, which is the interface between the GTK+ widgets and the underlying windowing system include: * Previews of ports to Microsoft Windows and direct frame buffer display. (A final version of the Windows port is expected within a month or two.) * Support for a full 32-bit coordinate space; GDK handles emulation of this coordinate space on systems with smaller coordinate spaces such as X11 and Win32. * Double buffering and redraw regions are tracked at the windowing system level, allowing applications to achieve efficient and flicker-free drawing with very little effort. * Support for anti-aliased fonts and alpha-composited images via the RENDER extension to X. * Use of the GObject system for GDK objects, facilitating language bindings, improving consistency, and allowing derivation of new GdkDrawable types. * Extension of GdkRGB to handle all visuals and colormaps, eliminating the need to manually allocate colors. * Support for rendering text using the Pango infrastructure. * Support for new standards at http://www.freedesktop.org/ New widgets and widget improvements: * GtkTextView - this new Text widget is based on the Tk text widget, and inherits an efficient implementation and a complete set of options for styled text. The Tk base was extended with multiple views of a single buffer, pixel-based scrolling, and the full range of internationalization capabilities provided by Pango. * GtkTreeView - a flexible widget for tree and list display, with features such as a model-view split for abstracting data storage from display, the ability to create custom models to accommodate large data sets, versatile display/rendering features, and editable data cells. * An overhauled GtkDialog and new GtkMessageDialog for convenient dialog handling. * A GtkImage widget for images and animations. * GtkProgressBar API revised and made easier to use. * GtkSpinButton API simplified. * GtkOptionMenu API simplified. * GtkLabel supports styled text and selectable text. * GtkEntry supports internationalization. * GtkSeparatorMenuItem! Other enhancements: * Complete support for Unicode and internationalized text via Pango, throughout all GTK+ widgets. Capable of processing text in all major world scripts, including European languages, Chinese, Korean, Japanese, Hebrew, Arabic, Thai, Tamil, Devanagari. * GtkClipboard object makes it easy to handle cut-and-paste. * Right-click popup menus for cut/copy/paste, Unicode character insertion, input method selection, and so on. * Rewritten user interfaces for color selector and font selector. * Many widgets no longer have an associated GdkWindow, further reducing flicker/tearing and allowing themes with translucent buttons and similar effects. * Extensive keyboard navigation support, including simplified "just works" APIs for adding mnemonics and accelerators. * A clean and attractive new default appearance. * Many other usability improvements. * A new input method framework that provides a simple and consistent interface on top of different backends. On-the-spot input is now provided when using GTK+ with input method servers based on XIM. * A system for stock toolbar/menu/button images. Themes can include replacement icons as part of the theme. * Much enhanced API documentation included with GTK+. * Systematically simplified and enhanced the API based on thousands of user requests and questions fielded by the GTK+ team, resulting in many hundreds of small API tweaks and additions too detailed to list here. Where to get more information about GTK+-2.0 ============================================ Information about GTK+ including links to documentation can be found at: http://www.gtk.org/ An installation guide for GTK+-2.0 is found at: http://developer.gnome.org/doc/API/2.0/gtk/gtk-building.html Common questions: http://developer.gnome.org/doc/API/2.0/gtk/gtk-question-index.html (the above URL contains links to 1.2->2.0 porting information) http://www.gtk.org/faq/ The GTK+ Team: Jonathan Blandford, Hans Breuer, Matthias Clasen, Tim Janik, Alex Larsson, Tor Lillqvist, Havoc Pennington, Kristian Rietveld, Soeren Sandmann, and Owen Taylor. Special thanks to: Jacob Berkman, Robert Brady, Anders Carlsson, Jeff Franks, Bill Haneman, Raja R Harinath, James Henstridge, Elliot Lee, Lee Mallabone, John Margaglione, Sven Neumann, Padraig O'Briain, Manish Singh and to Peter Mattis, who started it all. Thanks to all the contributors to GTK+-2.0 including: Darin Adler, Shawn T. Amundson, Marius Andreiana, Björn Augustsson, Jeffrey Baker, Nils Barth, Martin Baulig, Joel Becker, Frank Belew, Fabrice Bellet, Geert Bevin, Dennis Björklund, John Bley, Christopher Blizzard, Jonas Borgström, Stanislav Brabec, Thomas Broyer, Martin Buchholz, Simon Budig, Ross Burton, Brian Cameron, Antonio Campos, Jim Cape, Lance Capser, Chema Celorio, Suresh Chandrasekharan, Damon Chaplin, Arnaud Charlet, Erwann Chenede, Pavel Cisler, Philippe Colantoni, Dave Cole, David L. Cooper, Jay Cox, Murray Cumming, Johan Dahlin, Janet Davis, Elena Devdariani, Olaf Dietsche, Eric Ding, Finlay Dobbie, Miroslaw Dobrzanski-Neumann, Daniel Egger, Daniel Elstner, Ramiro Estrugo, Larry Ewing, Jens Finke, Eric Fischer, Paul Fisher, Tony Gale, Jeff Garzik, ERDI Gergo, Nicola Girardi, Jody Goldberg, Diego Gonzalez, Matt Goodall, Dov Grobgeld, Matt Grossman, Scott Guilbeaux, Melvin Hadasht, Lars Hamann, Vlad Harchev, John Harper, Guy Harris, Mathias Hasselmann, Lars Heete, David Helder, Bernd Herd, Mikael Hermansson, Richard Hestilow, Kipp Hickman, Akira Higuchi, David Hodson, Michael Hore, Greg Hudson, Richard Hult, ChiDeok Hwang, Szekeres Istvan, Damian Ivereigh, Jean-Marc Jacquet, Michal Jaegermann, Jakub Jelinek, Stefan Jeske, Andreas J. Guelzow, David Kaelbling, Satajyit Kanungo, Andreas Kemnade, Charles Kerr, Mike Kestner, Jon K Hellan, Vladimir Klebanov, Stefan Kost, Tuomas Kuosomann, KUSANO Takayuki, Sergey Kuzminov, Håvard Kvålen, Mathieu Lacage, Dave Lambert, Miles Lane, Guillaume Laurent, David L. Cooper, George Lebl, Marc Lehmann, Eric Lemings, Thomas Leonard, Ollie Lho, Oskar Liljeblad, Frank Loemker, Ryan Lovett, Seth Lytle, Pavel Machek, Paolo Maggi, Grigorios Magklis, Martin Maierhofer, Alexey Malyshev, Kjartan Maraas, Evan Martin., Brian Masney, Mark McLoughlin, Michael Meeks, Anders Melchiorsen, Federico Mena Quintero, Juan Pablo Mendoza, Jose H Mercado, Gregory Merchan, Christophe Merlet, Arkadiusz Miskiewicz, Bruce Mitchener, Jr., Paolo Molaro, Skip Montanaro, Jan Mynarik, Sung-Hyun Nam, Michael Natterer, Karl Nelson, Seth Nickell, Bastien Nocera, Tomas Ögren, Tomi Ollila, Xavier Ordoquy, Eugene Osintsev, Peter Osterlund, Narayani Pattipati, Mark Patton, Ettore Perazzoli, Andreas Persenius, Laszlo Peter, Asbjorn Pettersen, Chris Phelps, Joshua N Pritikin, T. Alexander Popiel, Salmaso Raffaele, Gene Ragan, Ed Randall, Steve Ratcliffe, Detlef Reichl, Chris Rogers, Guillermo S. Romero, Christian Rose, Theodore Roth, Jeroen Ruigrok, Changwoo Ryu, Pawel Salek, David Santiago, Pablo Saratxaga, René Seindal, Nicolas Setton, Joe Shaw, Sam Solon, Jeffrey Stedfast, Jakub Steiner, Ron Steinke, Jamie Strachan, Keishi Suenaga, Yusuke Tabata, Akira Tagoh, Hidetoshi Tajima, Armin Theissen, Phil Thompson, Vitaly Tishkov, Jon Trowbridge, Denis Vakatov, Kevin Vandersloot, Sergey Vlasov, Peter Wainwright, Morten Welinder, Sebastian Wilhelmi, Peter Williams, Matt Wilson, Per Winkvist, Dan Winship, Daniel Yacob, Shirasaki Yasuhiro, Rosanna Wing Sze Yuen, David D `Zoo' Zuhn 11 March 2002 _______________________________________________ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list