
On 02/09/10 02:42, Gwenio wrote:
Expanding on my earier summary, here is a list of some events for the library to support to get the discussion on the design of the library started:
*Creation:* The first event handled by the context; it is sent so any setup can be preformed.
*Destruction:* Sent just before a context is destroyed (destruction finishes once the message is processed); used so the event handler can clean up related resources.
*Resizing/Moving:* Sent before the context is resized or moved, includes the new position and/or size. It should be possible for the handler to change the values and thereby altering the new position/size. (Question: should this be one event or two seprate events?)
*Resized/Moved:* Sent after the context is resized or moved, so that any changes that need to be made as a result can be made. (Question: should this be one event or two seprate events?)
The current trend for GUIs is for them to be declarative, data-driven, and as automatic as possible. Basically, what would be nice, is specifying what data you have, what data you want, and not have to deal with any other detail. The system should then automatically select the most suitable widget, with the suitable disposition and sizes, and resize everything automatically on window resize etc. What you're suggesting is a fairly low-level widget interface, that is far from covering all things it would need to cover. For this, I'd suggest using an existing library like Qt, and write your declarative data-driven system on top of it.