shithub: widget

ref: b57b54c2d8223debedae9844098b89c6b5475637
dir: widget/CONVENTIONS

View raw version
• widgets that encapsulate other widgets:
	- take ownership (responsible for freeing, etc)
	- are responsible for ensuring their subwidgets don't stomp all over the screen
• widgets should make sure global state is consistent with how it was when their functions were invoked (i.e. if you touch screen->clipr, restore it before returning, etc)
• Widget->draw returns size of widget
• event handling functions return 1 for when they (or one of their children) handled the event and 0 when they didn't