[CM] Making changes to snd's gui
Guillaume Germain
guillaume@nulko.com
Mon, 12 Jul 2004 15:11:29 -0400
Kjetil Svalastog Matheussen wrote:
>Guillaume Germain:
>
>
>>[...]
>>
>>
>
>It should be quite easy to do this in scheme. Take a look at the
>mark and selection handling code I have made in gui.scm and
>snd_conffile.scm.
>
>Something like this could be a start:
>
>[...]
>
Thanks a lot for your suggestions and pointers. This is really helping
me to get started.
I've hit a few small snags trying to make 'snd_conffile.scm' works. I
have what I think is the latest version (July 12th), and compiled with
"./configure --with-gtk". The first problem was that Guile reported
'gtk_widget_get_name' to be undefined. I've traced that problem back to
the 'xg' module loading code, present in a few files ('gui.scm',
'gtk-popup.scm', 'snd-gtk.scm', ...), where xm.so is loaded instead of
xg.so:
(if (not (provided? 'xg))
(let ((hxm (dlopen "xm.so"))) ;; Should be xg.so ?
(if (string? hxm)
(snd-error (format #f "snd-gtk.scm needs the xg module: ~A" hxm))
(dlinit hxm "init_xm"))))
The next small problem was in the "-notebook" part of the
snd_conffile.scm around line 1500, (list-ref (main-widgets) 5) is #f for
me so a type error is signaled by string=?, a simple check was enough to
make it load the file succesfully:
(if (or (not use-gtk)
(let ((w (list-ref (main-widgets) 5)))
(and (string? w) (not (string=? "GtkNotebook"
(gtk_widget_get_name w))))))
...)
I found loading "snd_conffile.scm" to be very illustrative of the power
of snd, and I'd like to take that opportunity to thank all those who
contributed to make that great piece of software.
Guillaume