Wiki copymirror

This is a mirror of the wiki at pascal.chat. Editing, history and sign-in are there.

Gtk+3

(GTK+ only)

Info

Gtk+3.0 bindings are being developed in the Lazarus-ccr

They are based on the headers from gtk+3.8.6 which can be downloaded here:

http://ftp.gnome.org/pub/gnome/sources/gtk+/3.8/gtk+-3.8.6.tar.xz

SVN

The current result can be found in the Lazarus-CCR at this svn address:

text
 svn checkout svn://svn.code.sf.net/p/lazarus-ccr/svn/bindings/gtk3/ gtk3

-or-

text
 svn checkout https://svn.code.sf.net/p/lazarus-ccr/svn/bindings/gtk3/ gtk3

Or you can browse the files here

These files were generated with gir2pascal which should be updated to generate correct bindings if errors are found.

FAQ

My simple program crashes immediately

You probably need to include the Math unit and put

text
 SetExceptionMask([exDenormalized,exInvalidOp,exOverflow,exPrecision,exUnderflow,exZeroDivide]);

before gtk_init.

Where is class X

Some classes have been deprecated in Gtk3 and the generator skips deprecated classes and functions.

Some functions are missing like g_signal_connect

Many functions are actually c macros and are unavailable in the introspection files. In the case of g_signal_connect it is a macro around g_signal_connect_data.

Where are GtkHbox and GtkVBox

In Gtk 3 GtkHBox and GtkVBox are combined in GtkBox. In gtk_box_new you specifiy an orientation.


From the Free Pascal wiki, page "Gtk+3", as it stood on 2021-01-12 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Revision 2, last changed by WikiArchive .