My GUI factory is comming along, I've restructured it a bit, so it recursively creates GUI elements, and attaches them to their parent. So for instance, I can attach a text widget to a button widget, which causes the text to be offset by the button position, and drawn appropriately.
Buttons are created by giving them a position, image and texture coordinates to use (Size is determined by the texture coords), or by using a button definition and a position. So far all I have is "standard", but the point is that I can get a set of buttons all looking the same without having to trawl through the XML files to change them all.
A nice side effect of using sprites as the button images, is they're automatically handled by the texture manager, and chucked onto texture sheets.
I'm also probably going to make everything use localised text, by using token names instead of literal strings. That way, if I feel the need, I can convert to other languages nice and easily. But that's something I can fairly easily add later on.
I'm working through my lunch today, so I can get away at 5 because my parents are away and I'm having people round for a piss-up. So I'll hopefully get home at 6:30ish (Depending on when the busses are exactly, and if the train is on time).
So, back to work again...