What is GTK+?
GTK+ is a highly usable, feature rich toolkit for creating graphical user interfaces which boasts cross platform compatibility and an easy to use API. GTK+ it is written in C, but has bindings to many other popular programming languages such as C++, Python and C# among others. GTK+ is licensed under the GNU LGPL 2.1 allowing development of both free and proprietary software with GTK+ without any license fees or royalties.
Get an overview of GTK+. Understand who started it, the basic architecture and why we use the license we do.
GTK+ has been involved in many projects and some big platforms. To see what people think of GTK+ and how it has been used in commercial projects, read the success stories...
To find out how more about what GTK+ can do for you, visit our features page. If you want to contribute, you are more than welcome.
Recent news
GLib 2.19.4 unstable released
January 5, 2009
This is the fourth development release leading up to GLib 2.20.
Overview of changes:
- GIO:
- Use O_NOATIME when sniffing mimetypes
- Add a convenience method to check if a GSimpleAsyncResult is valid
Read the original announcement for more info and downloads.
GTK+ 2.15.0 unstable release
January 4, 2009
This is the first development release leading up to GTK+ 2.16.
Overview of changes between 2.14.x and 2.15.0:
- GtkFileChooser
- Optionally shows file sizes
- Mounts volumes when necessary
- Picks better mime icons
- GtkEntry
- Can show icons at either side of the entry, which can be made clickable, drag sources, etc
- Can show progress information
- Picks the best available placeholder character for invisible entries unless it is explicitly set. See the invisible-char-set property
- Input methods work again in invisible entries
- Invisible entries can optionally display a caps-lock warning. This can be turned off with the caps-lock-warning property
- GtkStatusIcon
- Uses an extension of the tray icon spec to negotiate RGBA support.
- This is also supported by the GNOME panel. For details, see http://lists.freedesktop.org/archives/xdg/2008-September/009934.html
- Supports scroll events, middle clicks and rich tooltips
- GtkLinkButton
- Respects user-defined tooltips
- Has a default url hook
- GtkBuilder
- Can construct menus
- Can associate accel groups with windows
- Child properties can now be translatable, e.g. GtkAssistant::page-title
- GtkOrientable
- A new interface implemented by all widgets that have horizontal and vertical variants
- Printing support
- Print-to-file can save to non-local files
- Page rendering can be deferred to a thread to avoid blocking the mainloop
- GDK
- GdkKeymap emits a state-changed signal when the Caps Lock state changes
- Newly deprecated functions:
- gdk_window_get_toplevels(),
- gtk_font_selection_dialog_get_apply_button(),
- gtk_status_icon_set_tooltip(),
- gtk_toolbar_set_orientation()
- Changes that are relevant for theme authors
- The GtkMenu::arrow-placement style property allow more space efficient layout of scrolling menus
- Submenu arrows can be scaled relative to the font size, with the
- GtkMenuItem::arrow-scaling style property
- Themes can set the GtkDialog::content-area-spacing style property to change the spacing between elements of the content area
- The GtkEntry::state-hint style property can be used to make GTK+ pass the correct state when drawing the background of entries
- The GtkEntry::prelight style property can be used to suppress prelighting of icons in entries on mouse-over
- Changes that are relevant for translators
- GTK+ has been switched to use the two-argument C_() macro instead of Q_() for messages with context
Read the original announcement for more information including bug fixes and download locations.
GTK+ 2.14.6 stable release
December 16, 2008
This is a bug fix release in the 2.14 series.
18 bugs fixed in this release!
Read the original announcement for more info and downloads.
GLib 2.19.2 unstable release
December 2, 2008
This is a quick followup release to revert a change in 2.19.1 that would have unnecessarily changed the established behavior of g_data_input_stream_read_line().
Read the original announcement for more info and downloads.
GLib 2.19.1 unstable release
December 2, 2008
This is the second development release leading up to GLib 2.20.
Overview of Changes from GLib 2.19.0 to GLib 2.19.1
- g_icon_to_string, g_icon_new_for_string: GIcon serialization support
- G_FILE_ATTRIBUTE_PREVIEW_ICON: new file attribute for preview images
- g_app_info_get_commandline: new function to get the full commandline
- g_mount_shadow, g_mount_unshadow, g_mount_is_shadowed: New
- functions to ’shadow’ mounts (i.e. hide them from the UI when they already have a different representation, like a bookmark)
42 bugs fixed in this release.
Read the original announcement for more info and downloads.
For older news, visit our archives
.Upcoming Events
Gran Canaria Desktop Summit 2009
July 3-11, 2009
The inaugural Desktop Summit, uniting the flagship conferences of the GNOME and KDE communities, GUADEC and Akademy, will be held in Gran Canaria, Canary Islands, Spain the week of July 3-11, 2009. The conference will be hosted by Cabildo, the local government of Gran Canaria. The GNOME and KDE communities will use this co-located event to intensify momentum and increase collaboration between the projects. It gives a unique opportunity for key figures to collaborate and improve the free and open source desktop for all. Please visit the official website for further information.
