> MUI used a mechanism whereby you did something like (Ruby pseudo code follows) > > p = Panel.new( > Button.new( "Hey, world!" ), ALIGN_LEFT, MORE_CONSTRAINTS, #... > Panel.new( > Slider.new( 0, 10, 5 ), SOME_CONSTRAINTS, #... > Checkbox.new( "Label" ), CONSTRAINTS, #... > ), > login_panel, CONSTRAINTS > ) This reminds me a bit of Rebol, and Rebol is made by, if I'm not mistaken, the Amiga kernel programmer... Maybe that's the new MUI? > I'm not sure this would work in Ruby, because the callbacks would have to fit > in there and would mess up the tree; I did, however, like the fact that GUIs What did MUI do then? It must somehow attach some functionality to the widgets... ... layout engine > a couple of constraints to get what you wanted. I'm very tempted to try to > find the original MUI author, and ask him for his help in this. Why not try mailing the Rebol person, I'm interested too <:) I think I'll do some brainstorming the following days to see if I can think up any logic that will do default formatting. > Aside from that, I love Swing :-) Well, "that" made me decide that I'll just put together my very own GUI, also after reading the previous mail with the reference to that wiki-article. It sounds like Swing is not only carrying AWT's corpse, but that it has been heavily kludged through time too. I certainly don't want to start with converting a messy GUI! There's not too much harm in digging through the docs for "ideas" though, so the outcome won't be much different from it. > > Yes, I wonder if I can find the border between... WM and TK? in Swing. > I agree; Swing is a good start, because you a lot more for you buck than with > many other GUI toolkits. The downsides including, of course, that the Swing > API is huge, that Swing is slow, and that Swing consumes a lot of memory. > Converting Swing to C and then adding Ruby hooks might be a better way to go. I once tried converting the AWT to c++ and that was such a disaster (especially because it depends so much on garbage collection) that the thought of converting it to c couldn't be further from my mind. Hmmm, this discussion about a general GUI really needs a goal. That is: find the categories that make up a GUI, like: Widgets Event handling Talking to the OS and some ways to do them, and what would be good or bad. Thank you for your long mail by the way <:) Bye!