> Ha! You've reproduced my code almost exactly :)
>
> I'd like to hear what other people have to say about this approach,
> but I'm afraid that we're the only ones left still reading this
> thread.

Nah, I'm still here.

   Button.new("exit") { exit }

I don't care who handles the event when and how or even what it is
called. I want the toolkit to take care of that *entirely*.
asynchronously, threadsafe.

Note that this is somewhat confusing with the lacking parent widget,
which is a container and could use a block as layout definer (meaning
some blocks are executed at initialize() and some on an external
event). Once more, look up EasyGtk discussions.

  VBox.new("window title") { |w|
    Canvas.new() { ... }
    Button.new("Close") {
      w.close
    }
  }

and variations like

  vbox { |v|
    canvas { ... }
    button("Close") { v.close }
  }

another confusing item is that there are only 'default' parameters
given, even tho you can come up with various ways to specify
'non-default' parameters (font, border width, how to layout in detail
in the vbox).

+--- Kero ------------------------- kero@chello@nl ---+
|  all the meaningless and empty words I spoke        |
|                       Promises -- The Cranberries   |
+--- M38c --- http://members.chello.nl/k.vangelder ---+