This is NOT backward compatible with GTK 2.x! The good news is, you can install GTK 3.x alongside 2.x without problems. Apt-get will do it for you.
You'll need the latest Euphoria 4.0 interpreter, of course, from OpenEuphoria.org.
Just open the .gz and drag the 'demos' folder into your home folder. All files are in the 'demos' folder (and subfolders thereof).
Later, you can put these 3 files: GtkEngine.e, GtkRoutines.e, GtkEnums.e, into the folder with your other Euphoria includes, most likely /usr/share/euphoria/include, so that you can write and run your programs from whatever folder you like.
But first, cd to the demos directory, open an xterm, and run a program: $> eui test0
Running from an x-term is almost mandatory while you are writing your Euphoria/GTK program, so that you can see error messages and crash reports, but not necessary once you have your program working and debugged.
If you do not have the latest GTK libraries installed, some of the recently introduced GTK 'widgets' and some functions may not work. These may cause programs to crash - hopefully, with an explanatory error message.
*HINT*If you use Geany as your editor, load GtkEngine.e, GtkRoutines.e, and GtkEnums.e into tabs. That way, you'll have automatic completion available for many of the names and constants used by GTK & EuGTK. (Turn it on from edit/preferences/editor/completions...)
NOTE 1:If you do not see icons on buttons, try: (1) choose Preferences/Desktop Settings and under the Interface tab, check Show Icons on Menus and Show Icons on Buttons (2) run gconf-editor and under desktop/gnome/interface, check the checkbox to show icons on buttons.
NOTE 2:If you see error message like the following:
menu_proxy_module_load': eui: undefined symbol: menu_proxy_module_load
(./test25:2980): Gtk-WARNING **: Failed to load type module: (null)
-or-
Gtk-Message: Failed to load module "canberra-gtk-module"
Read HowItWorks to get an overview, then open guide_a.html in your browser to see pointers to examples in the demos showing how the various controls (a.k.a. widgets) are used.
Be sure to have the GTK 3.0 docs available as well, since there are perhaps 8x more methods than I have used in the demos. Perhaps you'll never need these either, but who knows?
CHANGES:4.5.2 - 2012/01/24 fixed set_default_icon for GtkWindow