GTK+ library as of writing in version 2.8.x is very dynamic,
and changes quite often [about every 6 months a new release is made].
So with this release schedule, API changes *can* occur; a support
for experimental features will change, or be dropped etc.
Now if you want widget_x to be present, which is in GTK+ API version 2.4.0
then you must write code like this:
w=gtk_label_new("Sorry dude, you dont have this 2.4.0 GTK+ version,");
so that your program is usable even though certain features arent enabled,
but will compile no matter. This is an advantage of using GTK_CHECK_VERSION()
and using it to try and make portable ABI, API compatible programs.
/* code GPL'ed from Leafpad, by Tarot Osuji */
const gchar *name,
const gchar *version,
const gchar *copyright,
const gchar *comments,
const gchar **authors,
const gchar **documenters,
const gchar *translator_credits,
#if GTK_CHECK_VERSION(2, 6, 0)
about = g_object_new(GTK_TYPE_ABOUT_DIALOG,
about = my_gtk_about_new(
Here the program uses, a check for version 2.6 or later to use the
gtk_about_dialog_new() or create a GTK_TYPE_ABOUT_DIALOG object,
and this type doesnt come on older versions of GTK+ < 2.6.0 or earlier.
Thus GTK+ code compiles, but this feature replaced, or turned off.
Last Modified on Fri Jul 1 19:54:38 IST 2005
This is part of the GtkBook project Hosted Here
This code, documents and images are © Muthiah Annamalai
This document is under Creative Commons License given by