I worked on the new design for Beelz for a little while, but can't seem to come up with a better design than what I've got, so I'm going to stick with it.
I moved onto the Gui today and it goes well. I implemented the very basic stuff so far and have controls detecting mouse movements and left-button clicks. I also have a mousein/mouseout system in place and everything is working swell.
I have two issues with it though:
1) The design is kind of crappy and has 1 major flaw: to implement a new control I'll have to put it directly into the core myself; if someone else ends up using it and wants to implement a completely custom control (there will be a user-control style setup like WinForms has), they're hosed. I guess it's not really that big of an issue seeing as how I don't plan on releasing it until later on down the road when I "uber-fy" it (which will more than likely require almost a complete rewrite.)
2) Even though I decided when I started that the GUI was going to be script-controlled, I still implemented it as code-controlled. I had thoughts of implementing support for both into each control, but then each control (at the moment, I still don't have some handlers in yet) would take up about 1152 bytes. It's not that huge of a deal (even if you went overboard and had 1000 controls you'd be using just over a megabyte), but it seems impractical. Iunno, but I'll think on it more tomorrow.
Anyway, before I go any further, I need to implement fonts. Usually I do that first and I skipped over it this time for some reason. I'll probably do that tomorrow at some point.
On a side note, this design has given me a good idea for when I want to release a stand-alone DirectX based GUI library in the near future.
Also, I didn't get as far as I was hoping, so no screenies yet [sad].