Any resources about data structures and algorithms for GUIs?

I would like to read about data structures and algorithms that are at the hearth of how a GUI works, and since the Nvidia knowledge base is touching so many topics with series about GPU gems and parallel computing I’m surprised to see that this topic has no coverage at all when basically anything that is “graphical” has to offer an UI for the user .

I have missed something in the knowledge base, or it’s possible for me to read something about the really low level stuff that goes on in a GUI with event dispatching, range search and widget resolution ? There is a lot of noise on the web on the subject and I can’t find any good informations on the subjects, for example when given the (x,y) coordinates of a mouse click, it’s not clear to me how I should reason about finding the widget ( if any ) that should react to the call .

I have managed to design my own gui system with space filling curves and a linked list but is kinda horrible in my opinion, it will probably choke with an high amount of widgets on the screen . I haven’t really found any good algorithms or data structures that are GUI-specific or that can help a GUI to scale, it looks like the best is O(n) complexity .

Do you have a technical article on the subject ?