[hackers] status of DUIM
Hannes Mehnert
hannes at mehnert.org
Sun Jun 29 20:55:01 CEST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA384
Hi,
Kosta Welke wrote:
> Hannes Mehnert wrote:
>> This does not reflect the state of the code. More than a year ago I
>> posted "GTK+2 DUIM port" on comp.lang.dylan
>> http://groups.google.de/group/comp.lang.dylan/browse_thread/thread/4ac39fe2decd41cf
>
> Nice. I never did anything with GTK (but lots of stuff with Qt), so this
> whole GObject thing is new to me. But it seems that you already did the
> hard stuff :)
Well, we simply wrapped the class hierarchy of GObject as well as the
interfaces into a Dylan class hierarchy. So, no up/downcasts are needed.
> in that post you wrote:
>> - of course, tracing the bug which causes the thread (something
>> about multiple threads calling gtk_main, but I don't know enough
>> gtk to fix that right now.
>
> You said in chat that you use one thread per window. It looks to me that
> GTK, like Qt, and uses *one* event loop for everything (all windows,
> widgets, whatever).
Yes. Our GTK port uses one thread per window plus one thread for the
event loop. The threading is not an issue anymore on Open Dylan, we
traced the cases down and did proper locking for the gtk calls.
> But I'll look into that after dealing with some very
> basic stuff. Maybe like adding colors.
Great.
>> -> code is at fundev/sources/gtk and fundev/sources/duim/gtk
>
> I tried to build a couple of stuff.
>
> qa/test-apps/duim-test-suite ran and showed me lots of stuff to work on.
>
> But:
> Everything else would not build. I always get either one of the
> following errors:
>
> | $ opendylan -build sources/duim/examples/reversi/reversi.lid
> [...]
> | Opened project reversi
> | Internal error: : No such file or directory: Can't get the
> | modification date of
> | /usr/local/opendylan-1.0beta4/sources/gtk-2/gobject-2/gobject-2.lid
> | Exiting with return code -1
>
> I dont even have a gtk-2 folder, is it in another branch or did you
> forget to check it in? Or is it what gobject2-tool generates? In that
> case, what exaclty should go into the lid? Do you have an example?
No, the gtk-2 is deprecated and no longer needed (removed from the
repository). It contained a binding for Open Dylan using meta, and no
type hierarchy.
As talked on IRC, setting OPEN_DYLAN_USER_REGISTRIES to
fundev/sources/registry solved this issue.
> gobject2-tool produced some definitions, but I'm not sure how to use
> them. I guess they're only needed for generating bindings for a new
> version of GTK?
Yep. It generates .intr files, which are passed to melange; as well as
Dylan code which defines property-accessors.
Happy hacking,
Hannes
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFIZ9qFRcuNlziBjRwRCdK9AKCqaJHkEcocwKIbKO2ZzTbdFmjtpQCbBhHu
CTNBqy2Gs2WFlWR4rx0N4GE=
=B+oa
-----END PGP SIGNATURE-----
More information about the hackers
mailing list