I too have come across this difficulty, and I just went ahead and coded
up an "Observer" (gang-of-four pattern name) in order to subscribe to
and emit signals dynamically. [*]

I would far prefer to be able to rely on the GObject mechanisms instead
of having to hope and pray that my poor-man's implementation of
g_signal_connect and friends is actually reliable and doesn't leak, etc.
Then there are a whole raft of features that GObject gives you for free
that would make some things that look hard now, easy.  I'm pretty sure
libgeda can be made to leak pointers to libguile that go stale, for
instance, but I haven't tried.

Have a look at some of the other people's forks on repo.or.cz - I'm
quite sure I remember seeing one branch named
gobject-something-or-other.

If you're brave you can have a look at how I use my observers; it's best
if you look at branch berndj/abstract-symbols in my fork at repo.or.cz,
despite there being a branch berndj/object-observer (which I haven't
maintained as an independent branch).


_______________________________________________
geda-dev mailing list
[email protected]
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev

Reply via email to